Linux CentOS 7.X实战安装MySQL 5.7.30数据库

原创     发表于 2020-09-10 00:02     阅读 277  

注:本文档的Linux环境为基于CentOS 7.X,MySQL版本为5.7.30,文档中提到的路径为作者安装的路径,具体安装请以实际情况为准。

安装准备

1、下载 mysql 此步骤省略,可自行到MySQL官方网站下载,注意选择操作系统和版本
2、解压 mysql 压缩包
[root@centos-linux soft]# tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz

3、在当前目录中对解压好的文件移动到/user/local/目录下,并重命名为mysql

[root@centos-linux soft]mv mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql

4、在/mnt/data/目录下创建数据存放目录(如果/mnt/data不存在,请先创建)

[root@centos-linux soft]# mkdir /mnt/data/mysql

5、修改/usr/local/mysql及目录下的所属用户及用户组修改为mysql,如果用户组和用户已存在,请忽略下面前两个操作命令

[root@centos-linux soft]# groupadd mysql
[root@centos-linux soft]# useradd -r -g mysql -s /bin/false mysql
[root@centos-linux soft]# chown -R mysql:mysql /usr/local/mysql/


数据库安装和初始化

1、到/usr/local/mysql/bin目录下安装和初始化数据库

[root@centos-linux soft]# cd /usr/local/mysql/bin/

[root@centos-linux bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/mnt/data/mysql/ --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US

 注意:如果出现 error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory 错误,则执行 yum install   libaio-devel.x86_64 后再执行安装命令。




注意:图中红色框中 "w<m,B#E_g1_i" 为用户临时密码,此步骤一定要留意,注意保存MySQL的登录密码,否则会很麻烦

2、修改 /etc/my.cnf 文件

[root@centos-linux bin]# vim /etc/my.cnf

 执行命令后如下图所示,可能会有差异化。


 为方便配置,附上响应的配置信息,直接覆盖即可。仅供参考,具体情况视安装环境而定。

[mysqld]
basedir=/usr/local/mysql
datadir=/mnt/data/mysql
socket=/mnt/data/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

max_connections=1000
skip-name-resolve
init-connect='SET NAMES utf8'
character-set-server = utf8

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

# 配置死锁等待时间,单位为秒
innodb_lock_wait_timeout=50
# 配置超时回滚
innodb_rollback_on_timeout=on

[mysql]
default-character-set=utf8

[client]
socket=/mnt/data/mysql/mysql.sock
default-character-set=utf8


3、 /usr/local/mysql/目录下启动服务

[root@centos-linux bin]# cd ../

 执行启动命令

[root@centos-linux mysql]# ./support-files/mysql.server start

 如下图所示,表示MySQL启动成功


设置MySQL服务

1、 进入/usr/local/mysql/support-files/目录下,给mysql服务加入开机自启动

[root@centos-linux mysql]# cd /usr/local/mysql/support-files/
[root@centos-linux support-files]# cp mysql.server /etc/init.d/mysqld
[root@centos-linux support-files]# chmod +x /etc/init.d/mysqld
[root@centos-linux support-files]# chkconfig --add mysqld
[root@centos-linux support-files]# chkconfig --list mysqld

如下图,表示设置开机启动成功。

2、 启动mysql服务

[root@centos-linux support-files]# systemctl start mysqld

执行后如果没有异常,执行查看mysql状态命令

[root@centos-linux support-files]# systemctl status mysqld

3、设置快捷引用链接

[root@centos-linux support-files]# ln -s /usr/local/mysql/bin/mysql /usr/bin
[root@centos-linux support-files]# ln -s /usr/local/mysql/bin/mysqldump /usr/bin


设置MySQL登录密码和访问权限

1、登录MySQL并设置登录密码

[root@centos-linux support-files]# mysql -uroot -p

 输入安装时MySQL给出的临时密码并回车,登录成功后如下图

修改密码,这里以"123456"为例,具体请以实际情况为准!

mysql> set password=password("123456");

退出MySQL并重新登录,输入密码时请输入刚设置的密码,文章忽略此步骤。

2、设置MySQL用户的访问权限(文章以设置root用户为标准)

mysql> use mysql;

 MySQL默认root用户登录的IP地址为localhost(即本机),文章改为root用户的登录不受IP限制;

mysql> update user set host='%' where user = 'root';

刷新权限(此步骤为必须,否则在MySQL重启之前不会生效)

mysql> FLUSH PRIVILEGES;


至此,MySQL数据库安装并设置完毕。