一、將拉下來的mysql鏡像跑起來
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
二、再次進入mysql容器中
docker exec -it c0d75389810c bash
三、登陸mysql
mysql -h localhost -u root -p
四、查看自己的數據庫
show databases;
五、添加遠程登錄用戶
CREATE USER 'newroot'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
六、給予遠程用戶所有表所有權限
GRANT ALL PRIVILEGES ON *.* TO 'newroot'@'%';
七、刷新權限
FLUSH PRIVILEGES;
八、主機連接遠程數據庫
第一次連接失敗
返回容器中查看是不是遠程用戶權限問題:
select host,user,plugin,authentication_string from mysql.user;
我們嘗試連接newroot這個用戶,因爲這裏我開始是爲newroot這個用戶設置的遠程訪問權限: