【MySQL】Linux配置MySQL Windows远程连接
一、MySQL介绍
MySQL 是一款开源的关系型数据库管理系统(RDBMS),由瑞典公司 MySQL AB 开发,后被 Sun 公司收购,最终归属于 Oracle 公司。它凭借开源免费、高性能、易扩展等特点,成为全球最流行的数据库之一,广泛应用于 Web 开发、企业级应用、嵌入式系统等场景。
通常,我们需要将MySQL
部署在服务端,然后在通过远程连接MySQL
来查询和修改数据,下面介绍在Ubuntu
下部署MySQL
,并且在Windows
下通过MySQL Workbench
客户端远程连接数据库
二、Linux配置MySQL
如果没有下载MySQL
,可以通过下述命令下载MySQL
数据库
sudo apt update
sudo apt install mysql-server
下载后,我们启动mysql
sudo service mysql start
查看mysql
运行状态
sudo service mysql status
下面的情况就是正常启动了mysql
查看mysql
版本
mysql --version
下述的命令用于查询我们mysql
下的用户信息,主要查询是否支持远程连接登录
SELECT user,authentication_string,plugin,host FROM mysql.user;
- 如果是
host
列为%
就代表支持任意地址连接,如果是localhost
仅仅当前主机可以连接,即本地连接 - 目前只有
root
用户可以支持远程连接,我们创建一个新用户
创建liuhang
用户,设置为通过密码验证登录
CREATE USER 'liuhang'@'localhost' IDENTIFIED BY 'password';
修改用户密码,这里密码设定有限制,要有大小写字幕、符号和数字
ALTER USER 'liuhang'@'%' IDENTIFIED BY 'Liuhang@123456';
再次查看登录mysql
的方式,此时创建好了liuhang
用户,但默认只支持本地登录
SELECT user,authentication_string,plugin,host FROM mysql.user;
设置创建的用户的登录mysql
的方式为可远程登录,即修改host
字段为%
update user set host='%' where user='liuhang' and host='localhost';
再次查看,已经支持远程登录了
给予用户最大权限,这里是为了测试,实际权限可以根据自己的需求制定
GRANT ALL PRIVILEGES ON *.* TO 'liuhang'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
修改完成后退出mysql
,然后重新启动
quit;
重启启动mysql
服务
sudo service mysql restart
三、Windows 安装MySQL客户端
MySQL客户端有很多,比如Navicat
、MySQL Workbench
、dataGrip
等等,我们这里选择安装MySQL Workbench
,安装起来比较简单
下载mysql workbench
:https://www.mysql.com/products/workbench/
点击+
号添加一个配置
配置远程连接,设置我们Ubuntu
的IP
,端口就是默认的3306
,保证我们和服务器可以连接
点击OK
,然后点击对应的配置,进入连接
等待一会后,要求我们输入密码,输入正确的密码即可
在mysql workbench
中创建一张空表,插入一条数据
create database mydb;
use mydb;CREATE TABLE test_t (id INT,name VARCHAR(50)
);insert into test_t values(1,"liuhang");
在Ubuntu
进入mysql
,查看到插入了这一条数据,代表连接成功了,并且有相应的权限
select * from test_t;
更多资料:https://github.com/0voice