Ubuntu环境Mysql安装的保姆级教程

Luca Ju
2025-08-06 / 0 评论 / 23 阅读 / 正在检测是否收录...

一、Ubuntu简介

ubuntu.png

Ubuntu 是一款基于 Debian 的开源 Linux 操作系统,由南非企业家马克・沙特尔沃思(Mark Shuttleworth)创立的 Canonical 公司主导开发,首次发布于 2004 年。其名称源自非洲祖鲁语或科萨语,意为 “人性” 或 “共享的关怀”,体现了开源社区协作共享的理念。

二、Mysql简介

MySQL 是一款开源的关系型数据库管理系统(RDBMS),由瑞典 MySQL AB 公司开发,后被 Sun 公司收购,最终随 Sun 并入 Oracle 公司。它以高性能、稳定性、易用性和开源免费为核心优势,成为全球最流行的数据库之一,广泛应用于 Web 开发、企业级应用、数据存储等场景。

三、安装

 本文介绍Mysql的在线安装过程

1、更新软件包

sudo apt update

2、下载Mysql

# 安装最新版本
sudo apt install -y mysql-server
# 安装指定版本
sudo apt install -y mysql-server-8.0

3、启动Mysql、并设置为开机运行

sudo systemctl start mysql
sudo systemctl enable mysql

4、检查mysql状态

sudo systemctl status mysql

如果出现active(running),则表示安装启动成功了
mysql-status.png

四、允许远程可视化工具连接

1、修改 MySQL 配置文件:

  • 找到配置文件,Linux 系统一般位于/etc/mysql/mysql.conf.d/mysqld.cnf,可以使用命令mysql --help | grep "my.cnf"查找。
  • 打开配置文件,找到bind-address = 127.0.0.1这一行,将其改为bind-address = 0.0.0.0,表示监听所有 IP 地址上的连接请求。如果是生产环境,也可指定特定 IP,如bind-address = 192.168.1.100。

mysql-conf.png

2、创建或授权远程访问用户:

 1) 登录 MySQL 服务

打开终端,执行以下命令登录 MySQL ,输入 root 密码完成认证(若首次安装无密码,直接回车即可)

mysql -u root -p

2) 创建并授权新用户(推荐方式)

2.1 创建远程访问用户

通过 SQL 命令创建新用户,支持自定义用户名、密码,以及控制可访问的 IP 范围:

-- 允许任意 IP 访问(% 代表所有 IP)
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password';  

-- 仅允许指定 IP(如 192.168.1.100)访问,按需替换
-- CREATE USER 'remote_user'@'192.168.1.100' IDENTIFIED BY 'your_password';  
  
 说明:
 - remote_user:自定义的用户名,可根据需求修改
 - your_password:设置的用户密码,建议复杂度足够(字母 + 数字 + 特殊字符)
 - % 或 192.168.1.100:控制允许登录的 IP 范围,% 适合信任网络,指定 IP 更安全

2.2 授予用户远程访问权限

创建用户后,需赋予权限并刷新使配置生效:

-- 授予所有权限(生产环境可按需缩小权限范围,如指定数据库)
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;  

-- 刷新权限,让配置立即生效  
FLUSH PRIVILEGES;  
  
 说明:
 - ALL PRIVILEGES:授予全部权限(谨慎使用,生产环境建议细化,如 GRANT SELECT,INSERT ON db_name.* TO ... )
 - .:表示所有数据库的所有表,可替换为 db_name.* 限制特定数据库

3) 修改已有用户权限(备用方案)

若不想新建用户,可直接修改现有用户的远程访问权限:

-- 允许任意 IP 访问已有用户(替换 existing_user 和 password)
GRANT ALL PRIVILEGES ON *.* TO 'existing_user'@'%' IDENTIFIED BY 'password';  

-- 刷新权限  
FLUSH PRIVILEGES;  
  
 说明:
 - existing_user:替换为实际的已有用户名
 - password:替换为该用户对应的密码
 - 此操作会同时重置用户密码(若无需改密码,需保持原密码一致)

注意

如果安装的是msyql8.0及以上版本GRANT 语句的语法有变化,不再支持在 GRANT 语句里直接用 IDENTIFIED BY 创建 / 修改用户密码,得拆分成两步操作。

解决方法(分两步执行)

1. 先创建 / 修改用户并设置密码(用 CREATE USER 或 ALTER USER):

-- 若用户 root@% 不存在,创建并设密码
CREATE USER 'root'@'%' IDENTIFIED BY 'yourpassword';  
-- 若用户已存在,修改密码用这个:
-- ALTER USER 'root'@'%' IDENTIFIED BY 'yourpassword';  
  

2. 再给用户授权:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';  
-- 刷新权限让修改生效
FLUSH PRIVILEGES;  
  

## 3、重启 MySQL 服务:使配置生效
执行命令

sudo systemctl restart mysql

4、配置防火墙或安全组,开放3306端口

五、远程连接验证

结果如图
mysql-conn.png

0

评论 (0)

取消