Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3356809
  • 博文数量: 258
  • 博客积分: 9440
  • 博客等级: 少将
  • 技术积分: 6998
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-03 10:28
个人简介

-- linux爱好者,业余时间热衷于分析linux内核源码 -- 目前主要研究云计算和虚拟化相关的技术,主要包括libvirt/qemu,openstack,opennebula架构和源码分析。 -- 第五届云计算大会演讲嘉宾 微博:@Marshal-Liu

文章分类

全部博文(258)

文章存档

2016年(1)

2015年(4)

2014年(16)

2013年(22)

2012年(41)

2011年(59)

2010年(40)

2009年(75)

分类: Mysql/postgreSQL

2012-11-04 22:19:31

    今天在配置opennebula 3.8的时候,当执行one start启动时,报不能连接数据库的错误,但是在shell下输入mysql -uroot -p是可以登录的,所以问题应该是mysql不允许root用户远程登录的问题,于是通过输入下面命令:

  1. GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY 'password' WITH GRANT OPTION;
重启mysql后,发现还是连不上,于是想到是不是防火墙(ufw)或是iptables禁用了3306端口。通过service iptables stop和ufw status,查看发现并不是防火墙或iptables的问题,而且通过netstat可以看到3306端口处于监听状态。

   排除了以上因素之后,又google了下,发现问题出现mysql的配置文件my.cnf中,通过如下修改,重启mysql后,成功远程登录,opennebula成功连上mysql数据库。

  1. sudo vim /etc/mysql/my.cnf
  2. //找到如下内容,并注释
  3. bind-address = 127.0.0.1
  注释掉 bind-address = 127.0.0.1 后重启mysql即可!如果不注释掉,通过netstat可以查看到,306端口只是在IP 127.0.0.1上监听,所以拒绝了其他IP的访问。

 
阅读(9953) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~