![](/img/trans.png)
[英]ER_HOST_NOT_PRIVILEGED - docker container fails to connect to mariadb
[英]Docker mysql host not privileged
我正在嘗試配置nodejs容器以連接到mysql數據庫。
我的代碼看起來像這樣:
var pool = mysql.createPool({
host : 'mysql',
port : '3306',
user : 'root',
password : '...',
database : 'general',
connectionLimit : 50,
queueLimit : 5000
});
我正在使用標准的mysql容器。
我用無花果啟動容器。 fig.yml看起來像:
node:
build: node
ports:
- "9000:9000"
- "9001:9001"
links:
- mysql:mysql
command: node server/Main.js
mysql:
image: mysql
volumes:
- /data/test:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: ...
每次我嘗試連接時都會收到以下錯誤:
failed to connect to database: Error: ER_HOST_NOT_PRIVILEGED: Host '172.17.0.142' is not allowed to connect to this MySQL server
知道我做錯了什么嗎? 我玩過wordpress,似乎連接到同一個mysql db沒有任何問題。
謝謝!
編輯所以,我最終找到了答案。 這個問題確實是一個特權問題。 我運行了以下命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password'
我能夠訪問數據庫。
我使用drakedroid / mysql-with-data( https://registry.hub.docker.com/u/drakedroid/mysql-with-data/ )圖像。 它擴展了默認圖像,但增加了更多功能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.