進入mysql容器
操作vi etc/mysql/my.cnf
默認是不安裝vi編輯器的,下面安裝vi
更新安裝包
apt-get update
安裝vim
執行這條語句
apt-get install vim
到修改docker容器里面的mysql數據庫密碼了
啟動mysql容器
docker exec -it mysql /bin/bash
編輯配置文件
我這里是沒有這個配置文件,直接編輯即可,有的忽略
vi /etc/mysql/conf.d/docker.cnf
加上這4段
[mysqld]
skip-host-cache
skip-name-resolve
skip-grant-tables 跳過權限認證
保存退出
root@25cf6844e4d5:/# exit
exit
重啟mysql容器
我命名的mysql容器名是mysql01,按照自己的名字重啟
[root@rzk ~]# docker restart mysql01
mysql01
進入mysql容器,連接mysql
docker exec -it mysql /bin/bash
[root@rzk ~]# docker exec -it mysql01 /bin/bash
root@25cf6844e4d5:/# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 275
Server version: 5.7.31 MySQL Community Server (GPL)
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
修改密碼
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set authentication_string=password('密碼') where user='root';
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 1
刪除權限認證這行
skip-grant-tables 跳過權限認證 這一段需要刪除,不然后續登錄還是會免密碼
[mysqld]
skip-host-cache
skip-name-resolve
skip-grant-tables 跳過權限認證
刷新權限
mysql> flush privileges;
Query OK, 0 rows affected (0.07 sec)
測試連接數據庫
密碼就修改成功了