Docker中如何修改mysql8默認(rèn)加密方式
前言
使用過mysql8的應(yīng)該都知道,升級后的mysql加密方式由之前的“mysql_native_password”改成了“caching_sha2_password”,但是由于我們一些工具或者驅(qū)動包沒有升級,導(dǎo)致無法連接,那么就需要修改mysql8默認(rèn)的加密方式。
這里使用docker的方式啟動mysql8修改默認(rèn)加密方式,直接安裝mysql8修改類似。這里大概有這么幾種方式:docker啟動命令中添加額外參數(shù)、mysql啟動后使用sql修改、啟動前掛載修改好的配置文件…
方法一
啟動前掛載修改好的配置文件,這里需要注意一下,一定要在docker容器啟動之前,下載一份對應(yīng)版本的my.cnf修改好,啟動時(shí)進(jìn)行掛載。如果是啟動后然后修改配置文件然后重啟docker容器是不生效的。
注:每個(gè)版本可能配置文件具體位置有差異,根據(jù)自己的版本來修改,我本次使用的8.0.27版本,配置文件位于“/etc/mysql”目錄下
首先我們找到一份my.cnf文件,可以官網(wǎng)下載,也可以從別人哪里copy,這里也有一個(gè)小技巧可以獲取到這個(gè)文件。你先docker run啟動mysql容器,然后將容器中的配置文件copy出來,然后再把這個(gè)沒用的容器銷毀掉就行了。
在my.cnf文件的[mysqld]配置下添加如下配置:
default-authentication-plugin=mysql_native_password
修改好之后啟動容器并掛載好配置文件即可:
# 相關(guān)信息修改為自己的即可 docker run -d --name mysql -p 3306:3306 -v /opt/mysql/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=123456 mysql
啟動之后然后連接進(jìn)行查看:
use mysql; select host,user,plugin from user;
方法二
啟動容器時(shí)啟動命令添加參數(shù)
# 添加如下參數(shù) --default-authentication-plugin=mysql_native_password # 完整命令如下 docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql --default-authentication-plugin=mysql_native_password
啟動后驗(yàn)證即可。
方法三
啟動容器之后使用sql進(jìn)行修改
docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
修改
# 進(jìn)入容器 docker exec -it ******* bash # 登陸mysql mysql -u root -p use mysql; # 設(shè)置用戶root密碼策略為"mysql_native_password" ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'mysql'; # 刷新使之前操作立刻生效 flush privileges;
總結(jié)
到此這篇關(guān)于Docker中如何修改mysql8默認(rèn)加密方式的文章就介紹到這了,更多相關(guān)Docker修改mysql8默認(rèn)加密內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql 搜尋附近N公里內(nèi)數(shù)據(jù)的簡單實(shí)例
下面小編就為大家?guī)硪黄猰ysql 搜尋附近N公里內(nèi)數(shù)據(jù)的簡單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04深入探討:MySQL數(shù)據(jù)庫MyISAM與InnoDB存儲引擎的比較
本篇文章是對MySQL數(shù)據(jù)庫MyISAM與InnoDB存儲引擎的比較進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06mysql ON DUPLICATE KEY UPDATE語句示例
本文介紹一下關(guān)于mysql中INSERT INTO… ON DUPLICATE KEY UPDATE用法2013-11-11MySQL rownumber SQL生成自增長序號使用介紹
MySQL 幾乎模擬了 Oracle,SQL Server等商業(yè)數(shù)據(jù)庫的大部分功能,函數(shù)。但很可惜,到目前的版本(5.1.33)為止,仍沒有實(shí)現(xiàn)ROWNUM這個(gè)功能2011-10-10