ホームページ >データベース >mysql チュートリアル >MYSQL コマンドラインモード管理に関する質問
この記事は主に 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 コマンドラインモード管理に関する質問の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。