這是我啟動 PMA 和 mysql 的 docker-compose.yml 檔案:
version: '3.8'
services:
mysql_db:
image: mysql:8.0.28
ports:
- "64121:3306"
environment:
- MYSQL_ROOT_PASSWORD=rootsecretpassword
- MYSQL_DATABASE=dbname
- MYSQL_USER=db-username
- MYSQL_PASSWORD=db-password
volumes:
- mysql_data:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin:5.1.2
ports:
- "64122:80"
environment:
- MAX_EXECUTION_TIME=600
- UPLOAD_LIMIT=800M
- PMA_HOST=mysql_db
- PMA_PORT=3306
- PMA_ARBITRARY=1
depends_on:
- mysql_db
volumes:
mysql_data:
docker-compose up --build
然后,我可以localhost:64122看到 PMA(phpmyadmin),我可以使用憑據登錄,一切正常,但運行后docker-compose down我docker-compose up --build無法登錄 PMA,它說:
Cannot log in to the MySQL server
mysqli::real_connect(): (HY000/1130): Host 'SOME IP ADRESS' is not allowed to connect to this MySQL server
那么,在 docker 期間down和內部會發生什么up導致此錯誤?
uj5u.com熱心網友回復:
資料庫用戶默認只能從 localhost 連接
SELECT host FROM mysql.user WHERE user = "db-username";
更新用戶表:
GRANT ALL ON dbname.* to 'db-username'@'%' IDENTIFIED BY 'db-password';
FLUSH PRIVILEGES;
SELECT host FROM mysql.user WHERE user = "db-username";
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/438974.html
標籤:mysql 码头工人 码头工人撰写 phpmyadmin
