在Ubuntu 16.04上安装MySQL 5.7是一个关键的过程,尤其对于开发者和系统管理员来说。MySQL是一个广泛使用的开源关系型数据库管理系统,它提供了高效的数据存储和管理功能。以下是详细的安装步骤:
确保你的系统是最新的,通过运行以下命令来更新包列表:
```bash
sudo apt-get update
```
接着,可以使用`apt-get`全自动安装MySQL 5.7,这是最简单的方法:
```bash
sudo apt-get install mysql-server
```
在安装过程中,系统会提示你设置MySQL的root用户的密码。
如果你选择手动安装,你可以从官方或国内镜像站下载MySQL 5.7的deb安装包。例如,你可以下载`mysql-server_5.7.16-1ubuntu16.04_amd64.deb-bundle.tar`,然后解压:
```bash
wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-server_5.7.16-1ubuntu16.04_amd64.deb-bundle.tar
tar -xvf mysql-server_5.7.16-1ubuntu16.04_amd64.deb-bundle.tar -C ./
```
解压后,你需要逐个安装解压出的deb包,可能需要解决依赖问题。首先安装`mysql-common`,然后是`libmysqlclient`和相关的开发库,如`libmysqlclient-dev`和`libmysqld-dev`。如果遇到缺失的依赖,可以使用`apt-get`来安装。例如:
```bash
dpkg -i mysql-common_5.7.16-1ubuntu16.04_amd64.deb
dpkg -i libmysqlclient20_5.7.17-1ubuntu16.04_amd64.deb
dpkg -i libmysqlclient-dev_5.7.17-1ubuntu16.04_amd64.deb
dpkg -i libmysqld-dev_5.7.17-1ubuntu16.04_amd64.deb
# 解决依赖问题
sudo apt-get install -f
# 继续安装其他包
dpkg -i mysql-community-client_5.7.17-1ubuntu16.04_amd64.deb
dpkg -i mysql-client_5.7.17-1ubuntu16.04_amd64.deb
dpkg -i mysql-community-source_5.7.17-1ubuntu16.04_amd64.deb
sudo apt-get install libmecab2
dpkg -i mysql-community-server_5.7.17-1ubuntu16.04_amd64.deb
```
安装过程中,同样需要为root用户设置密码。
安装完成后,你可以通过`mysql -u root -p`登录MySQL服务器,首次登录可能会提示初始化数据库。一旦登录成功,你可以检查MySQL服务是否正在运行:
```bash
sudo systemctl status mysql
```
若要让MySQL在启动时自动启动,运行:
```bash
sudo systemctl enable mysql
```
开启远程访问是另一个重要步骤,特别是如果你需要从其他机器连接到MySQL。你需要允许root用户从任何主机(%)登录,可以通过MySQL的SQL命令来实现:
```sql
use mysql;
UPDATE user SET host = '%' WHERE user = 'root';
FLUSH PRIVILEGES;
```
然后,你需要在防火墙中打开3306端口(MySQL默认端口),以便外部连接:
```bash
sudo ufw allow 3306/tcp
```
确保MySQL配置文件`/etc/mysql/my.cnf`中的`bind-address`设置为0.0.0.0,允许所有网络接口监听。
至此,你已经在Ubuntu 16.04上成功安装了MySQL 5.7,并配置了远程访问。记住,为了安全,你应该定期更新MySQL并限制对root用户的远程访问,只允许特定IP地址连接。同时,创建并使用非root用户进行常规操作也是良好的实践。