一、 用戶操作
1.1 新建用戶
create user '用戶名'@'host' identified by '密碼';
- host = localhost 爲本地登錄用戶
- host = ip 爲運行某個ip地址登錄
- host = % 爲允許任意外網ip登錄
這樣我就創建了一個名爲dalao的用戶,並且它可以從任意ip登錄
1.2 查看所有用戶
select host,user,authentication_string from mysql.user;
1.3 登錄
mysql -u 用戶名 -p
二、權限操作
2.1 授權
grant all privileges on *.* to '用戶名'@'%' identified by '密碼';
- priveleges(權限列表),all priveleges表示所有權限,也可以是:
- select、update、create、delete、drop等權限,多個權限之間用逗號分開- on用來指定權限針對哪些庫和表。
- 前面的 * 號用來指定數據庫名
- 後面的 * 號用來指定表名
- identified by指定用戶登錄密碼,可省略
- to 表示將權限賦予某個用戶, 如 dalao@‘localhost’ 表示dalao用戶
- @後跟限制地址,可以是IP、域名與%(任何地方)
- identified by指定用戶的登錄密碼,該項可以省略。
只有root用戶纔有權限進行授權操作
2.2 查看
- 查看所有用戶權限
show grants;
- 查看指定用戶權限
show grants for '用戶名'@'%';
三、示例
- 例1
新建用戶user_test,僅授予select權限
create user 'user_test'@'%'identified by '999';
grant select on *.* to 'user_test'@'%';
使用user_test登錄,創建數據庫test_db
create database test_db;
嘗試查詢
- 例2
新建用戶test_4,授予select,create權限
create user 'test_4'@'%' identified by '999';
grant select,create on *.* to 'test_4'@'%';
使用test_4登錄,創建數據庫test_db
create database test_db;