現在新版的,有一點點不一樣
先從本機登入資料庫
mysql -u root -p
use mysql;
#root
GRANT * ON *.* TO root@'%' identified by '123';
說明如下
GRANT *,這裡的*指的是權限 ,例如 SELECT,INSERT,UPDATE,DELETE 。你也可以只單單賦予 SELECT 權限,例如 GRANT SELECT
ON *.*,這裡的第一個*,是Schema,第二個*是TABLE,例如一個Schema叫project,裏頭有個TABLE叫 USER,所以這裡就可以寫成 ON project.user
root@'%',root就是你要給予的帳號,%是指定的IP區段,例如192.168.0.1,192.168.0.%, 192.168.%.%, 192.%,%,%, 127.0.0.1, localhostu 依此類推
'123',則是密碼
更新權限表,這個指令沒有執行,前面就白做了。
FLUSH PRIVILEGES;
-------------------- 我是分隔線 ----------------------------
舊的版本方式
1.set root password.
mysql -u root
設定 root
mysql> SET PASSWORD FOR 'root'@'LOCALHOST' = PASSWORD('123');
mysql> SET PASSWORD FOR 'root'@'192.168.0.1' = PASSWORD('234');
mysql> SET PASSWORD FOR 'root'@'192.1680.100' = PASSWORD('345');
以上,從不同地方的IP登入,密碼就會是不同,請注意!!
設定 root 可以從任何地方來登入
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123123' WITH GRANT OPTION;
*.* 表示 schema.object 如 company.webuser
'%' 表示任何地方
mysql> exit
We’re almost done now. We just have to tell Mysql to allow remote logins.
vi /etc/my.cnf
DB 資料存放處所
datadir=/var/lib/mysql
沒有留言:
張貼留言