码迷,mamicode.com
首页 > 数据库 > 详细

关于mysql数据库远程访问

时间:2017-11-03 13:10:13      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:min   本地   stat   /etc/   input   直接   密码   配置   service   

mysql数据库安装默认为只能本地访问,若需远程连接需根据不同的操作系统做一些操作

Windows:

新装的mysql本地无法登录,显示为1045错误

mysql#1045(1045Access denied for user ‘root‘@‘localhost‘ (using password:YES)

解决方法:修改mysql数据库配置文件my.ini,在 [mysqld] 这个下面添加一行  skip-grant-tables

本地可成功访问mysql数据库,但远程访问不了

在本机上修改用户权限,默认的是localhost换成%

mysql数据库user表中直接将localhost改为“%”,

UPDATE USER SET HOST=‘%‘  WHERE USER=‘admin‘;

或者添加一行host为“%”,设置密码为要访问数据库密码一致

UPDATE USER SET PASSWORD=PASSWORD(‘baihong159753‘) WHERE HOST=‘%‘ AND

USER=‘admin‘;

若仍然无法远程访问,则必须修改mysql数据库配置文件my.ini

在 [mysqld] 这个下面添加一行  skip-name-resolve  意思是:忽略主机名的访问方式

lower_case_table_names=1,意思是:忽略数据库中的大小写,这行可加可不加

Ubuntu:

Step 1:

vim /etc/mysql/my.cnf找到bind-address = 127.0.0.1

注释掉这行,如:#bind-address = 127.0.0.1

或者改为: bind-address = 0.0.0.0允许任意IP访问;或者自己指定一个IP地址。

重启 MySQL:sudo /etc/init.d/mysql restart

Step 2:

mysql数据库user表中对应user的Host更改为%

CentOS:

mysql>use mysql;

mysql>update user set Host=‘%‘ where Host=‘localhost‘;

mysql>flush privileges;   # 重载系统权限

允许3306端口

  1. iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
  2. /etc/init.d/iptables save
  3. iptables -L -n # 或者: service iptables status

 

关于mysql数据库远程访问

标签:min   本地   stat   /etc/   input   直接   密码   配置   service   

原文地址:http://www.cnblogs.com/pistachio123/p/7777318.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!