首页 > 代码库 > linux下bitnami一键安装redmine后无法远程访问mysql的问题

linux下bitnami一键安装redmine后无法远程访问mysql的问题

在centos 6.5系统下通过bitnami一键成功安装redmine后想通过navicat for mysql工具远程访问mysql数据库实现对数据库的备份和恢复操作,其具体操作方法如下:

(1)打开navicat for mysql工具,在工具中通过响应‘连接’按钮对需连接的mysql服务器创建一个连接

技术分享

输入相关的连接信息后,在左边目录树中能看到连接名,在连接名上执行鼠标右键,然后执行打开连接,在这种情况下一般会报如下错误技术分享

出现该错误时,首先考虑mysql是否已启动,若已启动则考虑mysql目录下的my.cnf文件配置问题,在访文件中需将[mysqld]段中的bind-address=127.0.0.1注释掉,然后再重新右键执行‘打开连接’操作,此时有可能会报无权限访问的错误,如下图所示:

技术分享

出现以上错误表明当前建立连接时所设置的数据库用户名不允许访问mysql数据库,此时可以用root账号进入mysql数据库(shell提示符下执行mysql -h 127.0.0.1 -u root -p命令),然后在数据库提示符下执行grant all privileges on *.* to ‘需远程登录连接的数据库账号名‘@‘%‘ identified by ‘该远程账号名的密码‘;和flush privileges;语句,前一条语句(即grant all privileges打头的语句)的意思是允许语句中指定的账号从任何IP访问mysql数据库;

如果忘记了数据库root账号的密码,则可以通过修改mysql目录下的my.cnf文件来修改root账号的密码,修改方法为:在该文件的[mysqld]段中加入一行skip_grant_tables并保存退出,然后再重新启动mysql数据库;成功重启数据库后,在shell提示符下先cd进入到mysql所在目录,然后执行./bin/mysql,此时会进入mysql数据库提示符,此时输入USE mysql来切换数据库,在成功切换数据库后执行UPDATE user SET Password = password ( ‘new-password‘ ) WHERE User = ‘root‘语句和flush privileges语句,前一条语句是修改root账号的密码,语句中的‘new-password’为新密码;执行成功后用quit退出数据库,然后再将my.cnf文件中的skip_grant_tables删除并保存后退出,最后再重新启动mysql数据库;在成功修改了root的密码后,再通过root账号进入mysql数据库,然后再在数据库提示符下通过执行grant all privileges on *.* to ‘需远程登录连接的数据库账号名‘@‘%‘ identified by ‘该远程账号名的密码‘;和flush privileges语句来设置允许语句中指定的账号从任何IP访问mysql数据库

 

以上设置都完成后,便能通过navicat for mysql远程访问mysql数据库

linux下bitnami一键安装redmine后无法远程访问mysql的问题