Ubuntu MySQL允许远程连接访问

Posted zq_Hero

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu MySQL允许远程连接访问相关的知识,希望对你有一定的参考价值。

    <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_views-1a85854398.css">
            <div id="content_views" class="markdown_views">
                <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
                    <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path>
                </svg>
                <h1 id="前言"><a name="t0"></a>前言:</h1> 

设置Ubuntu允许远程连接mysql,出于安全方面考虑MySql-Server 只允许本机(localhost, 127.0.0.1)来连接访问. 这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说是没有问题的. 但随着网站流量的增加, 后期服务器架构可能会将 Web-Server 与 MySql-Server 分别放在独立的服务器上, 以便得到更大性能的提升, 此时 MySql-Server 就要修改成允许 Web-Server 进行远程连接。

1、 登录 Mysql-Server 连接本地 mysql (默认只允许本地连接)

C:\\Documents and Settings\\kuco>mysql -h localhost -u root -p
  Enter password:
  Welcome to the MySQL monitor.  Commands end with ; or \\g.
  Your MySQL connection id is 13
  Server version: 5.1.45-community-log MySQL Community Server (GPL)
  Type 'help;' or '\\h' for help. Type '\\c' to clear the current input statement.
  mysql>
 

2、修改 Mysql-Server 用户配置

mysql> USE mysql; -- 切换到 mysql DB
  Database changed
  mysql> SELECT User, Password, Host FROM user; -- 查看现有用户,密码及允许连接的主机
  +------+----------+-----------+
  | User | Password | Host      |
  +------+----------+-----------+
  | root |          | localhost |
  +------+----------+-----------+
  1 row in set (0.00 sec)
 

mysql> – 只有一个默认的 root 用户, 密码为空, 只允许 localhost 连接
mysql> – 下面我们另外添加一个新的 root 用户, 密码为空, 只允许 192.168.1.100 连接

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

或允许所有ip访问:

mysql> GRANT ALL PRIVILEGES ON  *.*  TO root@"%" IDENTIFIED BY '填写root密码';
flush privileges;
 

mysql> – 当然我们也可以直接用 UPDATE 更新 root 用户 Host, 但不推荐, SQL如下:
mysql> – UPDATE user SET Host=’192.168.1.100’ WHERE User=’root’ AND Host=’localhost’ LIMIT 1;

3、修改 Mysql 配置文件 my.ini

ubuntu 14.04 路径 my.cnf : 47 line

sudo vim /etc/mysql/my.cnf 
 
 
  • 1

ubuntu 15.10 路径 mysqld.cnf : 43 line

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
 
 
  • 1

找到哪下行:

bind-address = 127.0.0.1
 
 
  • 1

将 bind-address = 127.0.0.1 这一行注释掉, 即修改为:

  #bind-address = 127.0.0.1
 
 
  • 1

到此 Mysql-Server 端配置就完成了.

4、然后重启 MySQL

$> sudo /etc/init.d/mysql restart
* Starting MySQL database server mysqld
  ...done.
* Checking for corrupt, not cleanly closed and upgrade needing tables.
linuxidc@ubuntu:~$ sudo /etc/init.d/mysql start
* Starting MySQL database server mysqld
  ...done.
 

以上是关于Ubuntu MySQL允许远程连接访问的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu MySQL允许远程连接访问

Ubuntu MySQL允许远程连接访问

Ubuntu MySQL允许远程连接访问

阿里云ECS服务器Ubuntu安装MySQL并远程访问

数据库安全MySql远程访问设置

Ubuntu16 远程连接MySQL