详解mysql8.018在linux上安装与配置过程

  • Post category:Linux

详解MySQL8.0.18在Linux上安装与配置过程

1. 下载MySQL8.0.18安装包

首先需要到MySQL官方网站上下载MySQL的安装包。下载和Linux系统与位数相对应的安装包,如:

$ wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz

2. 解压安装包

下载完成后,我们需要解压缩安装包。使用以下命令进行解压缩:

$ tar xvf mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz

3. 移动解压后的文件到目标目录

解压缩后,将MySQL解压后的文件夹移动到一个比较规范的目录中,如:

$ mv mysql-8.0.18-linux-glibc2.12-x86_64 /usr/local/mysql

注意:如果移动到其它目录,应该根据实际情况,修改权限或者设置软链接。

$ cd /usr/local
$ chown -R mysql:mysql mysql
$ ln -s mysql-8.0.18-linux-glibc2.12-x86_64 mysql

4. 创建用户组和用户

MySQL需要使用一个单独的用户来运行,并且需要这个用户有操作MySQL所在目录和文件的权限。

$ groupadd mysql
$ useradd -r -g mysql -s /bin/false mysql
$ cd /usr/local/mysql
$ chown -R mysql:mysql .

5. 初始化MySQL

进行MySQL的初始化

$ bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

6. 启动MySQL服务器

启动MySQL实例,使用以下命令进行启动

$ bin/mysqld_safe --user=mysql &

7. 登录MySQL

我们已经成功启动了MySQL服务器实例,下面可以使用以下命令登录MySQL:

$ bin/mysql -uroot -p

8. 修改MySQL的root用户密码

默认情况下,MySQL会生成一个随机密码,需要通过下面的命令修改root用户的密码:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';

9. 配置远程访问

MySQL默认只允许本地连接。如果需要允许远程连接,需要对MySQL进行配置。找到MySQL配置文件:/usr/local/mysql/mysql.conf.d/mysqld.cnf

修改以下内容:

bind-address = 0.0.0.0

这样就允许从任何IP地址访问MySQL。

10. 配置防火墙

如果系统有防火墙,还需要对防火墙进行配置,允许来自其它主机的MySQL访问。

如果使用uFW,则可以使用以下命令允许MySQL端口:

$ sudo ufw allow from <IP地址> to any port 3306

示例说明

示例 1. 初始化MySQL

$ bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

该命令将为MySQL创建默认的初始系统表。在这个阶段做两件事:

  • 创建MySQL系统表并把它们存储在datadir的子目录中。
  • 创建一个初始的root用户帐户,该帐户没有密码。

示例 2. 修改MySQL的root用户密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';

这个命令将修改root用户的密码为new_password,同时使用mysql_native_password身份认证插件进行身份认证。

至此,我们完成了MySQL8.0.18在Linux上的安装和配置,你已经能够愉快地使用MySQL数据库了。