1. 程式人生 > >MySQL8初始化、賬戶建立及許可權分配

MySQL8初始化、賬戶建立及許可權分配

1、MySQL8沒有初始的data目錄,需要在使用前進行初始化。

基本配置檔案 my.cnf

[mysqld]
basedir = D:\mysql
datadir = D:\mysql\data
port = 3336
character-set-server = utf8mb4
default_authentication_plugin=mysql_native_password

[mysql]
default-character-set = utf8mb4

[client]
default-character-set = utf8mb4

資料庫初始化:mysqld --initialize

資料庫初始化後隨機密碼在日誌檔案中hostname.err,需要使用該密碼登入並修改密碼。

alter user 'root'@'localhost' identified by "password";
alter user 'root'@'localhost' identified with mysql_native_password by "root";
alter user 'root'@'localhost' identified with caching_sha2_password by "root";

MySQL8預設的認證外掛是caching_sha2_password,很多客戶端都不支援,可將預設的認證外掛修改為mysql_native_password,在配置檔案中配置default_authentication_plugin=mysql_native_password

2、建立賬號及許可權分配

#建立賬號、分配許可權
CREATE USER 'sky'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'sky'@'localhost' WITH GRANT OPTION;

CREATE USER 'sky'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'sky'@'%' WITH GRANT OPTION;

CREATE USER 'sky'@'localhost' IDENTIFIED BY 'password';
GRANT RELOAD,PROCESS ON *.* TO 'sky'@'localhost';

#顯示賬號及許可權相關資訊
SHOW GRANTS FOR 'sky'@'localhost';

SHOW CREATE USER 'sky'@'localhost';

MySQL賬號管理相關參考: