MySQL 新增設定使用者權限

Mysql 8.0

登入 root 新增 user

1
$ sudo mysql -u root

新增 user 帳號

  • 全域

    1
    mysql > CREATE USER 'user'@'%' IDENTIFIED BY 'password';
  • localhost

    1
    mysql > CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
  • 限定ip

    1
    mysql > CREATE USER 'user'@'255.255.255.255' IDENTIFIED BY 'password';

    設定密碼時踩到的坑

雖然 MySQL 要求高強度的密碼,時常需要一些大小寫與符號,但時常設定完之後登入卻告知密碼錯誤

賦予 user 權限

  • 全部權限
    1
    mysql > GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost';
  • 全部權限
    1
    mysql > GRANT Insert, Select, Update, Delete ON *.* TO 'user'@'localhost';

將 權限設定重新讀取

1
mysql > FLUSH PRIVILEGES;

移除 user 權限

1
mysql > revoke all privileges on *.* from 'backup'@'localhost';

查看 user 權限

1
mysql > SHOW GRANTS FOR 'user'@'localhost'; 

移除 user 帳號

1
mysql > DROP USER 'user'@'localhost';

查看所有的 user

1
2
mysql > select * from mysql.user;
mysql > select host, user from mysql.user;

美化SELECT 出來的數值

將最後的 ; 取代成 \G

1
mysql > select * from mysql.user\G

如果這一篇文章有幫助到你的話,
請您幫忙點選廣告,都是以不擾人與不強迫的方式呈現