ホームページ > データベース > mysql チュートリアル > MYSQL コマンドラインモード管理に関する質問

MYSQL コマンドラインモード管理に関する質問

不言
リリース: 2018-06-12 14:19:52
オリジナル
1837 人が閲覧しました

この記事は主に MYSQL コマンドライン モード管理に関する問題を紹介しています。これには特定の参考値があります。必要な友人はそれを参照してください。

MySql データベースは中小規模のバックエンド データベースの第一の選択肢です。非商用アプリケーションは、最も費用対効果が高く、「Linux+Apache+PHP+MySql」プラットフォームを構築できます。 MySql を開発に使用する場合、初心者にとっては、MySql に付属のドキュメントが役に立ちます。この記事は、MySql を使用する際の私のちょっとした経験をまとめたものです。
現在、一般ユーザー向けの開発環境は主に Windows または Linux です。ユーザーは http://www.codepub.com/software/index.html にアクセスして、適切なバージョンをダウンロードしてインストールできます。Windows では、MySql が次の形式で存在します。このサービスが開始されていない場合は、net start mysql コマンドを使用して開始できます。 Linux で起動する場合は、「/etc/rc.d/init.d/mysqld start」コマンドを使用できます。イニシエーターには管理者権限が必要であることに注意してください。
新しくインストールされた MySql には、空のパスワードを持つ root アカウントと匿名アカウントが含まれています。これは、いくつかの重要なアプリケーションにとって、セキュリティを可能な限り改善する必要があります。アカウントのパスワードを設定するには、次のコマンドを使用できます:

use mysql; 
delete from User where User=""; 
update User set Password=PASSWORD('newpassword') where User='root';
ログイン後にコピー

ユーザーが使用するログイン端末を制限したい場合は、上記を作成した後、User テーブルの対応するユーザーの Host フィールドを更新できます。変更する場合は、この時点でデータベース サービスを再起動してログインする必要があります。次のようなコマンドを使用できます。

mysql -uroot -p; 
mysql -uroot -pnewpassword; 
mysql mydb -uroot -p; 
mysql mydb -uroot -pnewpassword;
ログイン後にコピー

上記のコマンド パラメータは、一般的に使用されるパラメータの一部です。詳細については、ドキュメントを参照してください。ここでの Mydb は、ログインするデータベースの名前です。
開発中および実際のアプリケーションでは、ユーザーはデータベースへの接続に root ユーザーを使用するだけでなく、テストに root ユーザーを使用するのは便利ですが、システムに重大なセキュリティ リスクをもたらすため、システムの改善には役立ちません。管理技術。アプリケーションで使用されるユーザーに最も適切なデータベース権限を付与します。たとえば、データを挿入するだけのユーザーには、データを削除する権限を与えないでください。 MySql のユーザー管理は、User テーブルを通じて実装されます。新しいユーザーを追加するには、2 つの一般的な方法があります。1 つは、User テーブルに対応するデータ行を挿入し、対応する権限を設定する方法です。 GRANT コマンド。 GRANT の一般的な使用法は次のとおりです。
mydb.* のすべてを "password" で識別される NewUserName@HostName に付与します。
*.* の使用法を "password" で識別される NewUserName@HostName に付与します。 mydb .* を "password" で識別される NewUserName@HostName に付与します。
mydb.TestTable を "password" で識別される NewUserName@HostName に付与します。
このユーザーに、対応する権限を管理する権限を付与する場合は、オブジェクトの場合、GRANT の後に WITH GRANT OPTION オプションを追加できます。 User テーブルに挿入して追加したユーザーについては、悪意のある人がパスワードを覗き見ることを防ぐために、PASSWORD 関数を使用してパスワード フィールドを更新および暗号化する必要があります。使用されなくなったユーザーはクリアする必要があり、アクセス許可が制限を超えているユーザーは、User テーブルの対応するフィールドを更新するか、REVOKE 操作を使用することによって、すぐにアクセス許可を取り戻すことができます。
以下は、他の情報 (www.cn-java.com) から取得した一般的な権限の説明です。
グローバル管理権限:
FILE: MySQL サーバー上のファイルの読み取りと書き込み。
PROCESS: 他のユーザーに属するサービス スレッドを表示または強制終了します。
RELOAD: アクセス制御リストのリロード、ログの更新など。
SHUTDOWN: MySQL サービスをシャットダウンします。
データベース/データテーブル/データ列の権限:
変更: 既存のデータテーブルを変更します (列の追加/削除など) およびインデックス。
作成: 新しいデータベースまたはデータテーブルを作成します。
削除: テーブルのレコードを削除します。
Drop: データテーブルまたはデータベースを削除します。
INDEX: インデックスを作成または削除します。
挿入: テーブルにレコードを追加します。
選択: テーブルレコードの表示/検索。
更新: テーブル内の既存のレコードを変更します。
特別な権限:
ALL: あらゆる操作が許可されます (root と同じ)。
使用法: ログインのみが許可され、それ以外は許可されません。
最後に、RedHat9.0 での MySql 操作のデモを示します。
ログインするデータベースの root ユーザーを選択します

[weiwen@weiwenlinux]$mysql -uroot -p 
Enter password:MyPassword 
mysql>create database mydb; 
Query OK, 1 row affected (0.02 sec) 
mysql>use mydb; 
Database changed 
mysql>create table TestTable(Id int aut_increment primary key, 
UserName varchar(16) not null, 
Address varchar(255)); 
Query OK, 0 rows affected (0.02 sec) 
mysql>grant all on mydb.* to test@localhost identified by "test"; 
Query OK, 0 rows affected (0.01 sec) 
mysql>quit 
Bye 
[weiwen@weiwenlinux]$mysql mydb -utest -ptest
ログイン後にコピー

其中test.sql是用vi编辑好的SQL脚本,其内容为:
Insert into TestTable(UserName,Address)values('Tom','shanghai');
Insert into TestTable(UserName,Address)values('John','beijing');
select * from TestTable;
运行已经编辑好的SQL脚本可以用source filename 或 .\ filename。
以上只是对新手的简单练习,要成为一个数据库好手,当以孜孜不倦地追求知识,不断地思考、尝试、再思考。

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
MySql常用命令总结
这两天搞个网站,又用到MySql,可是命令却一个都想不起来,所以,趁这次机会,把这些整理一下,权当作笔记吧,以便自己以后查阅!
1:使用SHOW语句找出在服务器上当前存在什么数据库:

 mysql> SHOW DATABASES;
ログイン後にコピー

2:2、创建一个数据库MYSQLDATA

  mysql> Create DATABASE MYSQLDATA;
ログイン後にコピー

3:选择你所创建的数据库

  mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)
ログイン後にコピー

4:查看现在的数据库中存在什么表

  mysql> SHOW TABLES;
ログイン後にコピー

5:创建一个数据库表

mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
ログイン後にコピー

6:显示表的结构:

  mysql> DESCRIBE MYTABLE;
ログイン後にコピー

7:往表中加入记录

 mysql> insert into MYTABLE values ("hyq","M");
ログイン後にコピー

8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)

 mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
ログイン後にコピー

9:导入.sql文件命令(例如D:/mysql.sql)

mysql>use database;  
  mysql>source d:/mysql.sql;
ログイン後にコピー

10:删除表

 mysql>drop TABLE MYTABLE;
ログイン後にコピー

11:清空表

  mysql>delete from MYTABLE;
ログイン後にコピー

12:更新表中数据

mysql>update MYTABLE set sex="f" where name='hyq';
ログイン後にコピー

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

mysql 中use mysql denied_MySQL

以上がMYSQL コマンドラインモード管理に関する質問の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート