怎样远程访问 MySQL

时间:2023-03-09 00:24:26
怎样远程访问 MySQL

比如我在PC上安装有 phpmyadmin, 图形界面很友好,我的MySQL 在一台Centos 7.5服务器上,很自然的想到用phpmyadmin 去登录linux上的MySQL. 但是折腾了很久也没有用我喜欢的phpmyadmin登录到远程mysql, 下载了MySQL Workbench可以连.

ENV:

mySQL on server: CentOS 7.5

mySQL: 8.0

1. 为了不影响DB里面其他数据,先新建一个user 和一个database

How to create new database?

create database shuai_test;

How to show MySQL users?

use mysql;
SELECT User, Host, Password FROM mysql.user;

how to create a new MySQL user?

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

2.  配置MySQL 端使之允许远程访问

因为mysql 默认只允许localhost访问,所有需要在配置中打开远程访问,方法如下[1]

  怎样远程访问 MySQL

因为我用的 mysql 8.0, 上面step 3 语法已经变了,直接用 GRANT ALL ON *.* TO 'user'@'%'; 代替

3. 配置客户端连接远程mysql.

本来是打算用phpmyadmin 去连接MySQL的,结果修改那个 inc.php 文件怎么也不起作用,问题应该是[2] 里提到的加密方式PHP不支持,后来就下载了mysql 官方的 mysql workbench 可以连接了.

Ref:

[1] How to grant remote access permissions to mysql server for user?

[2] MySQL8.0设置远程访问权限

[3] https://www.rosehosting.com/blog/mysql-show-users

[4] How Do I Enable Remote Access To MySQL Database Server?