刚刚在虚拟机简单使用apt-get命令快速安装mysql数据库
问题来了,想在主机上使用root账号远程登陆数据库进行管理总是遇到连接测试不成功
起初还以为是root超级用户的缘故,还特地到虚拟机下另外创建新的一个普通用户,测试结果一样~
sigh 烦躁哈 后来ping了下虚拟机下的IP的3306端口号 原来连通都没有~。。。。
好吧,看来不是人品问题 或主机问题 不是数据库账户问题 估计是虚拟机mysql数据库配置文件问题~
回到虚拟机下 使用ip地址尝试登陆mysql都失败 即: mysql -h ip -u username -p password 竟然失败
而之前使用 mysql -u username -p password 在虚拟机终端下都很正常的登陆~
原来问题出在 my.cnf 数据库配置文件上~ 打开/etc/mysql/my.cnf 配置文件后 才发现
原来mysql数据库安装完成后默认host默认是使用localhost 或 127.0.0.1 而且不会自动与本机的ip地址关联一起
修改下配置文件并重启下mysql服务就可以搞定啦~
$ sudo vim /etc/mysql/my.cnf #打开数据库核心配置文件my.cnf
找到以下一行 并修改或注释掉
bind-address = 127.0.0.1 –> #bind-address = 127.0.0.1 或 bind-address = 虚拟机IP地址
保存退出 并重启mysql数据库
$ sudo /etc/init.d/mysql restart #重启mysql数据库服务
好啦 你可以测试下在虚拟机下 使用 mysql -h 虚拟机ip地址 -u root -p 命令能否连接上mysql数据库啦~
先别高兴太早,在主机或其他机子说不定还没办法成功的远程连接登陆到此数据库呢~
原因也很简单 为了安全考虑 基本默认都是限制远程登陆 特殊是对于root超级用户角色
现在先在本机上连接登陆到mysql数据库上 然后使用以下命令修改root可以在任何主机远程登陆管理的权限:
mysql>grant all privileges on *.* to root@”%” identified by “password” with grant option;
mysql>flush privileges;
好啦 这样就可以在任何一台机子通过IP地址使用root远程登陆到此mysql数据库进行操作管理啦~(前提:只要本机Mysql数据库服务有启动的话 哈哈)
这文章可能有点肤浅 但是之前倒确实没有遇到尝试过这东西 今天无聊玩弄的时候就当作记录下吧? 或许对像自己这样的新手有所帮助
验证码:
注册会员 会员登陆