最近大概是什么雜事都干了一遍了.....
- 使用mysql的root用戶登陸
$ mysql -u root -p
Enter password:
- 創(chuàng)建新用戶:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
說明:
username
:你將創(chuàng)建的用戶名
host
:指定該用戶在哪個主機上可以登陸,如果是本地用戶可用localhost
抑进,如果要任一主機遠(yuǎn)程登陸崔赌,需要使用通配符%
,否則指定遠(yuǎn)程主機ip即可木西。
password
:該用戶的登陸密碼,密碼可以為空,如果為空則該用戶可以不需要密碼登陸服務(wù)器
例子:
CREATE USER 'xzamrzs'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'xzamrzs'@'192.168.1.110_' IDENDIFIED BY '123456';
CREATE USER 'xzamrzs'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
這一步我輸入的時候報了如下錯誤:
mysql> create user 'xzamrzs'@'%' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查了下發(fā)現(xiàn)密碼必須是包含大寫或者小寫字母君珠,數(shù)字以及特殊字符
修改密碼重試,提示成功
CREATE USER 'xzamrzs'@'%' IDENTIFIED BY 'XZ2018@cvte';
Query OK, 0 rows affected (0.00 sec)
- 授權(quán):
GRANT privileges ON databasename.tablename TO 'username'@'host'
說明:
privileges:
用戶的操作權(quán)限娇斑,如SELECT
策添,INSERT
,UPDATE
等毫缆,如果要授予所的權(quán)限則使用ALL
databasename
:數(shù)據(jù)庫名
tablename
:表名唯竹,如果要授予該用戶對所有數(shù)據(jù)庫和表的相應(yīng)操作權(quán)限則可用*
表示,如*.*
例子:
GRANT SELECT, INSERT ON test.user TO 'pig'@'%'; # 僅指定test數(shù)據(jù)庫的user表的SELECT,INSERT權(quán)限
GRANT ALL ON maindataplus.* TO 'pig'@'%'; # 指定test數(shù)據(jù)庫的所有表
GRANT ALL ON *.* TO 'xzamrzs'@'%'; # 全部數(shù)據(jù)庫
注意:
用以上命令授權(quán)的用戶不能給其它用戶授權(quán)苦丁,如果想讓該用戶可以授權(quán)浸颓,用以下命令:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
注意最后還有很重要的一步:刷新權(quán)限
flush privileges;
- 一個完整的常用的運維操作:
create database tiku;
GRANT ALL ON tiku.* TO 'xzamrzs'@'%';
flush privileges;