mysql设置远程访问数据库的多种方法

 更新时间:2013年10月27日 00:17:18   作者:  
最近有一同学问我MySQL无法远程访问怎么呢,但能使用localhost来进行方法,下面脚本之家来给各位介绍一下解决办法,需要的朋友可以参考下

可能是IP没设置好

问题:MySQL权限设置正确,但仍无法远程访问。通过telnet发现3306端口未打开。

分析:MySQL默认只绑定127.0.0.1,即:只有在本机才能访问3306端口。

解决:找到MySQL配置文件,搜索“bind-address”,找到这一行:

bind-address          = 127.0.0.1 在前面加一个#,注释掉这一行,保存,重启MySQL。再通过远程访问就可以了,telnet可以发现端口也打开了。

例我们配置

1. 确保skip-networking被删除或者屏蔽,否则不支持TCP/IP 访问
2. 增加行bind-address = 65.55.55.2,替代65.55.55.2 为你的服务器地址

修改后,配置为:

复制代码 代码如下:

[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/English
bind-address = 65.55.55.2
# skip-networking
....
..

保存并关闭配置文件
重启mysql服务器:# /etc/init.d/mysql restart


如果上面办法没有用我们可以通用mysql命令模式进行设置

1。 改表法。

可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

复制代码 代码如下:

CODE:mysql -u root -p123
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;

2. 授权法。

例如,你想kevin使用mypassword从任何主机连接到mysql服务器的话。

复制代码 代码如下:
GRANT ALL PRIVILEGES ON *.* TO 'kevin'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

如果你想允许用户kevin从ip为192.168.101.234的主机连接到mysql服务器,并使用mypassword作为密码

复制代码 代码如下:

GRANT ALL PRIVILEGES ON *.* TO 'kevin'@'192.168.101.234' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

注意了,如果是linux系统防火墙也很重要哦

复制代码 代码如下:

/* 关闭防火墙 */
service iptables stop
/* 开启防火墙 */
service iptables start
/* 默认关闭防火墙 */
chkconfig iptables off

相关文章

  • RedHat下MySQL的基本使用方法分享

    RedHat下MySQL的基本使用方法分享

    RedHat 下MySQL安装,简单设置以用基本的使用方法,需要的朋友可以参考下。
    2011-08-08
  • 浅析mysql迁移到clickhouse的5种方法

    浅析mysql迁移到clickhouse的5种方法

    这篇文章主要介绍了mysql迁移到clickhouse的5种方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • 深入mysql创建自定义函数与存储过程的详解

    深入mysql创建自定义函数与存储过程的详解

    本篇文章是对mysql创建自定义函数与存储过程进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • CentOS系统下如何设置mysql每天自动备份

    CentOS系统下如何设置mysql每天自动备份

    备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。本文将详细介绍在CentOS系统下如何设置mysql每天自动备份,有需要的朋友们下面来一起看看吧。
    2016-10-10
  • 简单学习SQL的各种连接Join

    简单学习SQL的各种连接Join

    sql语句中join是一种高效的语句,下面小编来带大家详细了解一下它的详细情况
    2019-05-05
  • MYSQL日志的正确删除方法详解

    MYSQL日志的正确删除方法详解

    这篇文章主要介绍了MYSQL日志的正确删除方法,详细分析了MySQL日志删除的步骤与相关注意事项,需要的朋友可以参考下
    2016-04-04
  • 详解MySql存储过程参数的入门使用

    详解MySql存储过程参数的入门使用

    这篇文章主要介绍了MySql存储过程参数的入门使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • MySQL中(JOIN/ORDER BY)语句的查询过程及优化方法

    MySQL中(JOIN/ORDER BY)语句的查询过程及优化方法

    sql语句性能达不到你的要求,执行效率让你忍无可忍,一般会造成很多影响。那么我们如何解决这些问题呢,下面由小编来和大家简单讲下
    2019-05-05
  • MySql命令实例汇总

    MySql命令实例汇总

    这篇文章主要介绍了MySql命令,结合实例分析了MySQL数据库的创建、连接及增删改查等各种常用操作的使用方法与相关注意事项,非常具有实用价值,需要的朋友可以参考下
    2015-11-11
  • 如何使用Maxwell实时同步mysql数据

    如何使用Maxwell实时同步mysql数据

    这篇文章主要介绍了如何使用Maxwell实时同步mysql数据,帮助大家更好的理解和学习使用MySQL,感兴趣的朋友可以了解下
    2021-04-04

最新评论