您好,登錄后才能下訂單哦!
怎么在Docker中運(yùn)行多個(gè)mysql容器?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
1.使用mysql/mysql-server:latest鏡像快速啟動(dòng)一個(gè)Mysql實(shí)例
docker run --name ilink_user_01 -e MYSQL_ROOT_PASSWORD=123456 0d 0p 3307:3306 mysql/mysql-server:latest
ilink_user_01是容器名稱,通過(guò)--name指令指定
123456為數(shù)據(jù)庫(kù)root的密碼,通過(guò)-e指定環(huán)境MYSQL_ROOT_PASSWORD為123456,-e (指定容器內(nèi)的環(huán)境變量)
-d 使用-d參數(shù),容器會(huì)進(jìn)入到后臺(tái),用戶無(wú)法看到容器中的信息,也無(wú)法進(jìn)行操作
3307:3306 為端口映射,指定本地主機(jī)端口3307映射到容器的3306端口
2.進(jìn)入實(shí)例修改mysql配置信息
docker exec -it ilink_user_01 bash
exec 可以在容器內(nèi)部直接執(zhí)行人員命令
參數(shù) -it 用來(lái)保存表中輸入的打開(kāi),在不影響容器內(nèi)其他應(yīng)用的潛艇先,用戶可以很容易的與容器進(jìn)行交互
3.查看MYSQL數(shù)據(jù)庫(kù)中所有用戶
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
4.修改mysql的root用戶允許從任何ip登錄用戶
update mysql.user set host='%' where user='root'; flush privileges;
5.使用navicat測(cè)試連接
出現(xiàn)authentication plugin 'caching_sha2_password',因?yàn)閙ysql鏡像是使用caching_sha2_password進(jìn)行加密的,而navicat沒(méi)有支持caching_sha2_password加密方式,
6.解決authentication plugin 'caching_sha2_password'
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
7.重新使用navicat 連接
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。