我在Azure上设置了Bitnami MySQL服务。 VM已启动,我可以通过ssh连接到VM 比如ssh username @ HOSTNAME:
我可以从提示符
登录mysqlmysql -uroot -pSOMEPASS >
同时我能够从远程主机连接这个mysql服务: mysql -uroot -pPASS -hxxx.xxx.xx.xx
以下错误是我收到的
ERROr 2003(HY000);无法连接到xxx.xxx.xx.xx上的MySQL服务器
我试着在/opt/bitnami/mysql/my.cnf中注释掉bind-address
并尝试将bind-address的值赋予0:0:0:0&也删除变量。
为确保mysql端口启用或未启用,我提供了以下comamnd
netstat -tln
tcp6 0 0 ::: 3306 ::: * LISTEN
以上结果意味着端口正在监听
就文件许可相关而言,我输入了以下内容
chmod 777 / opt / bitnami / mysql / tmp chmod 755 / opt / bitnami / mysql / data chown -R root:root / opt / bitnami / mysq / tmp chown mysql:root / opt / bitnami / mysql / data / sudo chmod 777 / opt / bitnami / mysql / tmp sudo chmod 755 / opt / bitnami / mysql / data sudo chown root:root / opt / bitnami / mysql / tmp sudo chown mysql:root / opt / bitnami / mysql / data
还添加了 my.cnf中的skip-grant-tables
我还在mysql中执行了以下查询
全部取消。到root @'%'通过' SOMEPASSWORD';
识别任何提示都将不胜感激。提前致谢
答案 0 :(得分:2)
要连接到您的Bitnami MySQL,请按照以下步骤操作:
1.确保您的Azure VM具有公共IP地址。
2.打开端口3306到NSG 入站规则:
3.通过在开头放置一个哈希(#)符号,编辑文件/opt/bitnami/mysql/my.cnf
并注释此行,保存它。
#bind-address=127.0.0.1
4.在服务器控制台上,允许使用MySQL命令行客户端远程访问MySQL数据库服务器。使用以下命令,记住用第一步中的应用程序密码替换PASSWORD:
/opt/bitnami/mysql/bin/mysql -u root -p -e "grant all privileges on *.* to 'root'@'%' identified by 'PASSWORD' with grant option";
5. 重启 MySQL服务器:
sudo /opt/bitnami/ctlscript.sh restart mysql
现在,您可以远程连接到您的bitnami mysql。
希望这有帮助。