mysql设置允许其它机器连接

(2011-10-25 15:27:25)

转载▼

未经设置的mysql不允许其它机器连接,可能报如下错误

Lost connection to MySQL server at 'reading initial communication packet', system error: 111

Host '*.*.*.*(连接数据的机器ip)' is not allowed to connect to this MySQL server

解决方法:

需要经过两步设置

1.设置mysql允许其它机器连接

#vi /etc/mysql/my.cnf

把bind-address=127.0.0.1注释掉,前面加#

2.授权其它机器操作数据库

进入mysql命令行操作

mysql -uroot -p123456(123456是密码)

mysql>GRANT ALL PRIVILEGES ON 数据库名.* TO root@"%" IDENTIFIED BY "123456";123456是密码

数据库名根据访问的实际数据库名修改,也可以设置所有的数据库用*代替

这样其它机器就可以访问指定的数据库了

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server

登陆mysql

首先 use mysql;

按照别人提供的方式update的时候,出现错误。

mysql> update user set host='%' where user = 'root';

ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'

然后查看了下数据库的host信息如下:

mysql> select host from user where user = 'root';

+-------------+------+

| host | user |

+-------------+------+

| % | root |

| 127.0.0.1 | root |

| MicroLetter | |

| MicroLetter | root |

| localhost | |

+-------------+------+

host已经有了%这个值,所以直接运行命令:

mysql>flush privileges;

以下以Ubuntu系统为例,总结了自己遇到过的几种安装Mysql后外部机器不能访问的问题原因。

1、最常见的是用户权限问题。

Mysql安装后,默认只允许本机访问Mysql,通过以下命令可以查看:

mysql>use mysql;

mysql>select user, host from user;

+-----------------------------------+----------------------------------+

| user | host |

+-----------------------------------+----------------------------------+

| root | localhost |

| root | 127.0.0.1 |

| root | ubuntu |

+----------------------------------+-----------------------------------+

如上所示,使用update修改其中某一条记录的host字段值为'%',或者新增一条记录且host字段值为‘%’。

2、防火墙原因

有些机器默认开了防火墙,也有可能导致外部机器不能访问3306端口,以Ubuntu为例,可以通过iptables修改防火墙配置

vi /etc/sysconfig/iptables

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

编辑iptables,新增上面一条记录。根据不同系统或版本差异,更详细的修改方法可以上网搜索查找。

3、绑定地址有误

如果上面两种情况都不存在或不能解决,可以使用netstat命令查看mysql服务绑定的ip,如果绑定的是127.0.0.1,则外部机器也不能访问mysql。可以通过修改Mysql配置文件解决。以Ubuntu系统为例,使用apt-get方式安装的Mysql,配置文件默认位置通常是/etc/mysql/mysql.conf.d/mysqld.cnf

使用sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf命令编辑该文件

注释掉以下一行即可:

bind-address = 127.0.0.1

使用 mysql --help 查看关于MYSQL对应 配置文件my.cnf 搜索顺序,windows 和linux 上都是该命令查看

linux 上可以使用 mysql --help|grep my.cnf 过滤查看

一般linux 上都放在 /etc/my.cnf

mysql让其他机器访问_mysql设置允许其它机器连接相关推荐

  1. mysql设置固定ip地址访问_mysql设置指定ip访问,用户权限相关操作

    基础语法 GRANT priv_type ON database.table TO user[IDENTIFIED BY [PASSWORD] 'password'] [,user [IDENTIFI ...

  2. mysql bin的过期时间_Mysql设置binlog过期时间并自动删除

    问题: Mysql数据库由于业务原因,数据量增长迅速,binlog日志会增加较多,占用大部分磁盘空间. 解决方案: 出于节约空间考虑,可进行删除多余binary日志,并设置定期删除操作. 1.查看bi ...

  3. mysql使字段自增_Mysql设置自增字段的方法

    来自:http://www.cnblogs.com/younggun/archive/2011/07/10/2102164.html 如何实现MySQL设置自增字段是许多人都问到的问题,下面就为您介绍 ...

  4. mysql创建触发器的权限_MYSQL设置触发器权限问题的解决方法

    本文实例讲述了MYSQL设置触发器权限的方法,针对权限错误的情况非常实用.具体分析如下: mysql导入数据提示没有SUPER Privilege权限处理,如下所示: ERROR 1419 (HY00 ...

  5. mysql查询结果赋予变量_MySQL设置会话变量:把查询结果赋值给变量

    MySQL设置变量有两种方式:会话变量和存储过程变量. 1.使用set或select直接赋值,变量名以@开头 例如:set @var=1; 可以在一个会话的任何地方声明,作用域是整个会话,称为用户变量 ...

  6. mysql怎样添加唯一标识_MySql设置唯一标识,主键等设置

    create table user_score( name char(10) not null default "", score smallint not null defaul ...

  7. mysql 的高并发访问_mysql高并发解决方案

    mysql高并发的解决方法有: 优化SQL语句,优化数据库字段,加缓存,分区表,读写分离以及垂直拆分,解耦模块,水平切分等. 高并发大多的瓶颈在后台,在存储mysql的正常的优化方案如下: (1)代码 ...

  8. mysql忽略表名大小写_Mysql 表名忽略大小写-连接字符集随笔记录

    1.参数说明: lower_case_table_names=0表名存储为给定的大小和比较是区分大小写的 lower_case_table_names= 1表名存储在磁盘是小写的,但是比较的时候是不区 ...

  9. mysql 3306无法访问_Mysql 3306端口无法被远程机器访问

    今天尝试从linux下安装Mysql数据库,需要远程测试时发现3306端口无法被远程机器访问.一开始以为是linux防火墙对于3306端口做了限制,但是关闭防火墙后发现也无法进行telnet. 经查询 ...

最新文章

  1. YII 测试环境搭建
  2. 透彻理解Socket网络编程
  3. Android防火墙原型系统设计,Android系统网络安全性研究及防火墙设计
  4. iReport 4.1 报表、子报表、主从报表、合计、实例解析
  5. CSS——Position定位
  6. 30-10-010-编译-kylin-on-druid-2.6.0-CDH57编译
  7. linux open出现乱码,OpenStack 数据库中文乱码问题
  8. sql数据库的链接方式
  9. python中自定义类中的self_学习python第52天
  10. Linux平台代码覆盖率测试-.gcda/.gcno文件及其格式分析
  11. UIControl 纠错
  12. matlab自由落体程序,基于MATLAB的自由落体运动仿真.pdf
  13. c语言苹果大小分级,苹果品质分级标准您知道吗?
  14. [原创]如何顺利通过中国电信Brew平台软件测试?
  15. Project build error: Non-resolvable parent POM for com.example:demo:0.0.1-SNAPSHOT: Could not transf
  16. vue打包上线的代理问题
  17. apache安装过程
  18. [Unity Native Container] 自定义Native Container [第 1 部分]:基础知识
  19. 微信小程序-MD5加密
  20. AdaptiveAvgPool1D内部实现

热门文章

  1. Unity鼠标拖拽旋转拉远拉近场景
  2. 详细了解 Android 巧用 flexboxLayout 布局
  3. Fedora 34 dnf 安装nvidia显卡驱动,支持rtx 2060 ,解决nouveau崩溃故障
  4. linux6.6卸载防火墙,Linux-centos6.8下关闭防火墙
  5. Java线程中的静态方法_Java多线程3:Thread中的静态方法
  6. 根据月份,计算当月周数(非自然周)
  7. 关键字生成参考文案查找相似款,特卖淘宝达人有福了,自媒体时代的懒人助手
  8. JAVA后台对接苹果APNS(VOIP)实现推送
  9. 2021React面试精选——持续更新
  10. QTabBar 和 QTabWidget部件 页签