1. 更新系统包列表
如无特别说明,本文均使用root权限安装,首先,更新系统包列表:
代码语言:javascript复制sudo apt update
2. 安装 MySQL APT Repository
下载并安装 MySQL APT Repository 包:
代码语言:javascript复制wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb
在安装过程中,你会看到一个配置界面,选择 MySQL 8.0 并按回车确认。
选择5,最接近你系统版本的选项。
选择默认的配置即可。以下是步骤:
- **选择 **
**MySQL Server & Cluster**
: 保持默认选项,选择mysql-8.0
。 - **选择 **
**MySQL Tools & Connectors**
: 保持默认选项,选择Enabled
。 - **选择 **
**MySQL Preview Packages**
: 保持默认选项,选择Disabled
。
最后,选择 Ok
保存配置。
可以按数字 4
,然后回车来保存配置。
3. 更新系统包列表
2.
完成之后再次更新系统包列表:
sudo apt update
4. 安装 MySQL Server
安装 MySQL Server:
代码语言:javascript复制sudo apt install mysql-server
安装中,安装耗时较长。 安装完成:
5. 运行安全安装脚本
为了提高 MySQL 的安全性,运行安全安装脚本:
代码语言:javascript复制sudo mysql_secure_installation
在 mysql_secure_installation
脚本中,VALIDATE PASSWORD COMPONENT
是一个可选的组件,用于验证和加强密码安全性。它可以强制执行强密码策略。
你可以根据自己的需求选择是否启用该组件:
- 如果希望启用密码验证组件,按
y
或Y
键。 - 如果不需要启用,按任意其他键。
以下是两种选择的后续步骤:
- 启用密码验证组件
如果你选择 y
或 Y
:
- 系统会询问密码验证策略的级别:
选择适合你的策略级别,例如选择 1
:
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1
- 0: LOW (只检查密码长度)
- 1: MEDIUM (检查密码长度和字符组合)
- 2: STRONG (检查密码长度、字符组合和字典文件匹配)
- 输入并确认新的 root 密码。
- 系统会提示你删除匿名用户,按
y
。 - 禁止 root 远程登录,按
n
。
- 删除测试数据库,按
y
。 - 重新加载权限表,按
y
。
显示All done即为安装完成。 无论你选择是否启用密码验证组件,接下来的步骤都是输入并确认新的 root 密码,以及处理一些安全设置。完成这些设置后,你的 MySQL 安装将更加安全。
6. 验证 MySQL 安装
连接到 MySQL 以验证安装:
代码语言:javascript复制sudo mysql -u root -p
这里我刚才没有设置的 root
密码,直接回车登陆,你应该会看到 MySQL 提示符:
mysql>
这表明 MySQL 已成功安装并正在运行。
7. 配置远程连接
7.1 首先要确认 MySQL 配置允许远程连接:
确保 bind-address
已设置为 0.0.0.0
或已注释掉。
进入配置文件:sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
查找 bind-address
设置,并确保如下所示:
#bind-address = 127.0.0.1
bind-address = 0.0.0.0
保存并退出编辑器。
7.2 重启 MySQL 服务:
代码语言:javascript复制sudo systemctl restart mysql
7.3 检查 MySQL 用户权限:
确保 root 用户允许从任何主机连接。
代码语言:javascript复制sudo mysql -u root -p
登陆后进入:use mysql
为root添加密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '!QAZ2wsx3edc';
添加完成后,退出再用密码登陆。
配置远程连接权限:
代码语言:javascript复制mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> CREATE USER 'root'@'%' IDENTIFIED BY '!QAZ2wsx3edc';
Query OK, 0 rows affected (0.01 sec)
mysql> GRANT ALL ON *.* TO 'root'@'%';
Query OK, 0 rows affected (0.01 sec)
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '!QAZ2wsx3edc';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)
成功刷新权限后,即可使用DBeaver配置远程连接:
只需要输入服务器地址映射、用户名和刚刚配置的密码(!QAZ2wsx3edc)即可自动更新驱动并连接。 连接成功:
8. 总结
通过以上步骤,已经在 Ubuntu 上成功安装了 MySQL 8.0。接下来,可以开始在远程工具中访问数据库。