本文目录一览:
MySql数据库 本地网络内的电脑能连接,外网IP不能连接
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 将其注释掉;//作用是使得不再只允许本地访问;
重启mysql:/etc/init.d/mysql restart;
2:登录mysql数据库:mysql -u root -p
mysql use mysql;
查询host值:
mysql select user,host from user;
如果没有"%"这个host值,就执行下面这两句:
mysql update user set host='%' where user='root';
mysql flush privileges;
或者也可以执行:
mysqlgrand all privileges on *.* to root@'%' identifies by ' xxxx';
其中 第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问;
‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到‘xxxx'为root 用户的password;
连接mysql不能用ip只能用localhost或者127.0.0.1的 解决办法
进入mysql的bin目录
至此就可以通过ip地址访问了,是不是很简单?
MYSQL为什么用IP地址无法连接
应该是没有添加允许 非 locathost 连接过来的用户
当你用 127.0.0.1 去连接你的mysql的时候,连接来源是 127.0.0.1,也就是 localhost
但是如果你用 本机ip 去连接mysql,那么连接来源就是你本机的ip,而不是localhost~~即使你在本机发起的连接请求~