mysql使用者建立,授權衝操作
MySql中新增使用者,新建資料庫,使用者授權,刪除使用者,修改密碼(注意每行後邊都跟個;表示一個命令語句結束):
1.新建使用者
1.1 登入MYSQL:
@>mysql -u root -p
@>密碼
1.2 建立使用者:
mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
這樣就建立了一個名為:test 密碼為:1234 的使用者。
注意:此處的"localhost",是指該使用者只能在本地登入,不能在另外一臺機器上遠端登入。如果想遠端登入的話,將"localhost"改為"%",表示在任何一臺電腦上都可以登入。也可以指定某臺機器可以遠端登入。
1.3 然後登入一下:
mysql>exit;
@>mysql -u test -p
@>輸入密碼
mysql>登入成功
2.為使用者授權
授權格式:grant 許可權 on 資料庫.* to 使用者名稱@登入主機 identified by "密碼";
2.1 登入MYSQL(有ROOT許可權),這裡以ROOT身份登入:
@>mysql -u root -p
@>密碼
2.2 首先為使用者建立一個數據庫(testDB):
mysql>create database testDB;
2.3 授權test使用者擁有testDB資料庫的所有許可權(某個資料庫的所有許可權):
mysql>grant all privileges on testDB.* to [email protected] identified by '1234';
mysql>flush privileges;//刷新系統許可權表
格式:grant 許可權 on 資料庫.* to 使用者名稱@登入主機 identified by "密碼";
2.4 如果想指定部分許可權給一使用者,可以這樣來寫:
mysql>grant select,update on testDB.* to
mysql>flush privileges; //刷新系統許可權表
2.5 授權test使用者擁有所有資料庫的某些許可權:
mysql>grant select,delete,update,create,drop on *.* to [email protected]"%" identified by "1234";
//test使用者對所有資料庫都有select,delete,update,create,drop 許可權。
//@"%" 表示對所有非本地主機授權,不包括localhost。(localhost地址設為127.0.0.1,如果設為真實的本地地址,不知道是否可以,沒有驗證。)
//對localhost授權:加上一句grant all privileges on testDB.* to [email protected] identified by '1234';即可。
3. 刪除使用者
@>mysql -u root -p
@>密碼
mysql>Delete FROM user Where User='test' and Host='localhost';
mysql>flush privileges;
mysql>drop database testDB; //刪除使用者的資料庫
刪除賬戶及許可權:>drop user 使用者名稱@'%';
>drop user 使用者名稱@ localhost;
4. 修改指定使用者密碼
@>mysql -u root -p
@>密碼
mysql>update mysql.user set password=password('新密碼') where User="test" and Host="localhost";
mysql>flush privileges;
5. 列出所有資料庫
mysql>show database;
6. 切換資料庫
mysql>use '資料庫名';
7. 列出所有表
mysql>show tables;
8. 顯示資料表結構
mysql>describe 表名;
9. 刪除資料庫和資料表
mysql>drop database 資料庫名;
mysql>drop table 資料表名;