转载:http://www.cnblogs.com/fnlingnzb-learner/p/5830661.html

如果Mysql是按上篇的方法进行安装和设置的话,那进行远程连接就会稍微简单一点。我就结合百度上的一些文章进行剖析。

本地计算机ip:192.168.1.100
远程计算机ip:192.168.1.244

  1. 远程连接上Linux系统,确保Linux系统已经安装上了MySQL数据库。登陆数据库。mysql -uroot -p(密码)。

     
     
  2.  创建用户用来远程连接

    GRANT ALL PRIVILEGES ON *.* TO 'itoffice'@'%' IDENTIFIED BY 'itoffice' WITH GRANT OPTION;

    (第一个itoffice表示用户名,%表示所有的电脑都可以连接,也可以设置某个ip地址运行连接,第二个itoffice表示密码)。

     
     
  3.  执行 flush privileges;命令立即生效
     
     
  4.  查询数据库的用户(看到如下内容表示创建新用户成功了)

    SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

     
     
  5. 使用exit命令退出MySQL

    然后打开vim  /etc/mysql/my.cnf

    将bind-address    = 127.0.0.1

    设置成bind-address    = 0.0.0.0(设备地址)

    重新启动(命令如下):

    /etc/init.d/mysql stop

    /etc/init.d/mysql start

     
     
  6. 查看端口号

    show global variables like 'port';

     
     
  7. 设置navicat连接。
     
     
  8. 点击连接测试看到如下内容表示成功。

注意问题:

1)我经常在输入mysql -u root -p时,显示cannot connect to mysql server...这种错误,后来发现是没有打开mysql。所以在以上操作之前记得看看Mysql有没有打开:

1 service mysql status --查看有没有打开服务
2 service mysql start --打开服务
3 service mysql stop --停止服务
4 service mysql restart --重启服务

2)在进行上述连接后,我用navicat远程连接mysql,发现还是不可以,鼓捣了很久,才发现是因为防火墙的问题,防火墙把3306端口屏蔽了。所以要设置防火墙:

设置防火墙允许3306端口
vi /etc/sysconfig/IPtables
添加-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
(注意添加在-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited之前,否则可能导致规则不生效)
重启防火墙service iptables restart

解决Mysql无法远程连接的问题

1、Mysql的端口是否正确
通过netstat -ntlp查看端口占用情况,一般情况下端口是3306。在用工具连接MySQl是要用到端口。例如My Admin\My Query Browser\MySQl Front等。

2、检查用户权限是否正确
mysql库的user表里有两条记录:host分别为localhost和%(为了安全,%可以换成你需要外部连接的IP)。

Linux下mysql的远程连接(转)的更多相关文章

  1. Linux下mysql实现远程连接

    首先明白一点并不是mysql禁止远程连接,而是MYSQL的账号禁止远程连接.可能觉得我有点咬文嚼字了,不过我感觉分清这点还是很重要的.默认情况下,所有账号都是禁止远程连接的.在安装MYSQL的时候,在 ...

  2. linux下mysql允许远程连接

    1. MySql安装教程 https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html 默认情况下mysq的 roo ...

  3. linux 下mysql 开启远程连接

    系统通过netstat -ntlp  来查看正在运行服务所使用的端口 ,查看3306端口是否开启. 防火墙iptables 如果是新装的 系统, 一般不用管这个因素,不过我们也先 用service i ...

  4. linux下mysql的远程连接

    在服务器上安装mysql后,想使用本地的mysql客户端连接数据库时,提示不允许连接,比较郁闷,找到了这篇文章解决了我的问题: 内容如下: 本地计算机ip:192.168.1.100远程计算机ip:1 ...

  5. Linux下mysql允许远程连接怎么设置

    1.root用户登录到mysql数据库代码示例:/usr/local/mysql/bin/mysql -u root -p (输入密码进入mysql)2.进入mysql,输入:代码示例:use mys ...

  6. Linux下MySQL允许远程连接以及授权命令

    --针对某个库做授权 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; ...

  7. linux配置mysql数据库远程连接失败

    今天配置linux下mysql数据库可以远程访问的问题,百度这方面的资料有很多,但是方法都一样,都试过了却未能解决,记录一下 第一步:在/etc/mysql/my.cnf下找到bind-address ...

  8. Linux 中 MySQL 授权远程连接

    说明:当别的机子(IP )通过客户端的方式在没有授权的情况下是无法连接 MySQL 数据库的,如果需要远程连接 Linux 系统上的 MySQL 时,必须为其 IP 和具体用户进行授权.一般 root ...

  9. Linux系统MySQL开启远程连接

    1.远程连接上Linux系统,确保Linux系统已经安装上了MySQL数据库.登陆数据库.mysql -uroot -p(密码). 2.创建用户用来远程连接 GRANT ALL PRIVILEGES ...

随机推荐

  1. Python3 使用 matplotlib 画折线图

    ChartUtil.py import matplotlib.pyplot as plt from pylab import mpl def plotLine(xData,yData,xLabel,c ...

  2. 如何用Javascript检测到所有的IE版本

    如何用Javascript检测到所有的IE版本 function GetIEVersion() { var sAgent = window.navigator.userAgent; var Idx = ...

  3. Git直接拉取远程分支

    用Git,一直有个疑惑,可不可以不拉取远程Origin主干,我直接pull一个分支下来 今天想了一下,找到了一个办法 本地分支关联 // 0.新建一个文件夹,然后初始化git git init // ...

  4. 这次要好好吐槽下idea呢还是SpringMVC ?

    特么的!(我为什么要骂脏话,因为这个问题弱智+不能理解) 相信很多人遇到过 org.springframework.web.servlet.PageNotFound - No mapping foun ...

  5. [Algorithm] Circular buffer

    You run an e-commerce website and want to record the last N order ids in a log. Implement a data str ...

  6. ionic3中创建pipe管道

    1.使用ionic cli创建pipe管道文件 ionic g pipe parse-date 该命令会在src文件夹创建pipes/parse-date/parse-date.ts文件,并且会在pi ...

  7. jQuery实现倒计时效果-杨秀徐

    本实例效果:剩余368天22小时39分57秒结束 代码简单易懂,适用各种倒计时: <!DOCTYPE html> <head> <title>jQuery实现倒计时 ...

  8. 微软BI 之SSRS 系列 - 使用 LookupSet 和 Adjacent Group 等高级技巧在报表中跨 Dataset 分组查询

    SSRS 报表中有一些高级的技巧,平常很少用到,下面我通过这个案例来展现一下如何在实际开发中使用它们,并且如何解决一些实际的需求. 这张报表分别统计了不同的 Product 产品在不同的月份的 Ord ...

  9. Spring MVC 实现文件的上传和下载

    前些天一位江苏经贸的学弟跟我留言问了我这样一个问题:“用什么技术来实现一般网页上文件的上传和下载?是框架还是Java中的IO流”.我回复他说:“使用Spring MVC框架可以做到这一点,因为Spri ...

  10. Percona-XtraBackup系列一:安装 perl(Time::HiRes) is needed by percona-xtrabackup-2.2.10-1.el6.x86_64

    1:在percona官网下载最新的Xtrabackup http://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.2.10/bi ...