MySQL数据库8.0+版本部署安装

1、安装前准备 

1.1、安装文件上传

以mysql-8.0.32版本为例,将 mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz  、my.cnf上传至/opt/software目录。

安装文件百度网盘下载地址:

mysql-8.0.32:https://pan.baidu.com/s/1gtPYEa2aT0V2-1Q3-KKxlQ

mysql-8.0.35:https://pan.baidu.com/s/1t6WlPVOvIQmnYFsBljHvVw 

配置文件my.cnf:https://pan.baidu.com/s/15zyxx-XZWw8JcS6XUz-X6Q 

提取码:8206

如果服务器可以访问网络可以通过wget下载,以下地址是阿里开源镜像下载对应版本

//wget方式命令示例:
wget https://mirrors.aliyun.com/mysql/MySQL-8.0/mysql-8.0.27-1.el7.x86_64.rpm-bundle.tar?spm=a2c6h.25603864.0.0.297d70b2wQNs1G

1.2、检查系统分区

根据系统最大分区规划数据文件目录

数据文件目录:/data/mysql/mysql3306

软件安装目录:/data/app/mysql

1.3、系统检查

检查是否存在系统自带mysql、mariaDB,若存在,则需要先卸载。

[root@CentOS7-0003 ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.64-1.el7.x86_64
[root@CentOS7-0003 ~]# sudo rpm -e mariadb-libs --nodeps
[root@CentOS7-0003 ~]# rpm -qa | grep mariadb
[root@CentOS7-0003 ~]# rpm -qa | grep mysql

1.4、yum源配置

若网络源不可用,则需要挂载镜像,配置本地yum源。

yum源配置参考:Linux系统Yum配置

2、数据库安装

2.1、安装基础包

[root@CentOS7-0003 ~]# yum -y install gcc gcc-c++ glibc glibc-devel libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat dos2unix nfs-utils vim unzip zip openssh-clients telnet numactl libnl libnl-devel libnfnetlink

2.2、系统参数调整

// limits.conf 添加如下配置

[root@CentOS7-0003 ~]# vim /etc/security/limits.conf 

mysql    soft    nproc    16384
mysql    hard    nproc    16384
mysql    soft    nofile    65536
mysql    hard    nofile    65536
mysql    soft    stack    1024000
mysql    hard    stack    1024000

// sysctl.conf添加如下配置

[root@CentOS7-0003 ~]# vim /etc/sysctl.conf

vm.swappiness = 5

// 关闭防火墙

$ systemctl stop firewalld

$ systemctl disable firewalld

//关闭selinux,修改配置如下(原配置为SELINUX=enforcing)

[root@CentOS7-0003 ~]# vim /etc/selinux/config

SELINUX=disabled 

2.3、拷贝参数文件至/etc

//路径及相关内存参数按实际情况调整。

[root@CentOS7-0003 ~]# cp /opt/software/my.cnf /etc

2.4、创建用户及用户组

[root@CentOS7-0003 ~]# groupadd mysql
[root@CentOS7-0003 ~]# useradd -r -g mysql -s /bin/false mysql

2.5、环境变量配置

[root@CentOS7-0003 ~]# echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /root/.bash_profile
[root@CentOS7-0003 ~]# source /root/.bash_profile

 2.6、创建目录

[root@CentOS7-0003 ~]# mkdir -p /data/app/mysql
[root@CentOS7-0003 ~]# mkdir -p /data/mysql/mysql3306/{data,log,tmp}
[root@CentOS7-0003 ~]# mkdir -p /data/mysql/mysql3306/log/{relaylog,binlog}
[root@CentOS7-0003 ~]# chown -R mysql:mysql /data/mysql/mysql3306

2.7、解压安装包

[root@CentOS7-0003 ~]# cd /opt/software
[root@CentOS7-0003 software]# tar -xvf mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz -C /data/app/mysql

[root@CentOS7-0003 software]# cd /usr/local/
[root@CentOS7-0003 local]# ln -s /data/app/mysql/mysql-8.0.32-linux-glibc2.12-x86_64 mysql

​​​​​​​2.8、初始化Mysql

[root@CentOS7-0003 local]# mysqld --initialize --user=mysql
// 记录临时密码,第一个问号后面串就是初始化密码。bFe*#(!r82sg

[root@CentOS7-0003 local]#  cat /data/mysql/mysql3306/log/error.log | grep password

3、启动数据库

​​​​​​​3.1、配置启动脚本

[root@CentOS7-0003 local]# cd /usr/local/mysql

[root@CentOS7-0003 local]# cp support-files/mysql.server /etc/init.d/mysql

// 修改启动脚本,设置数据库目录、数据库目录,pid目录

[root@CentOS7-0003 local]# vim /etc/init.d/mysql

basedir=/usr/local/mysql

datadir=/data/mysql/mysql3306/data

mysqld_pid_file_path=/data/mysql/mysql3306/data/mysql.pid

MySQL数据库8.0+版本部署安装_第1张图片

// 在$bindir/mysqld_safe 后面添加,注意 --defaults-file 要放在第一个

--defaults-file=/etc/my.cnf

MySQL数据库8.0+版本部署安装_第2张图片

​​​​​​​3.2、启动Mysql 

[root@CentOS7-0003 local]#  /etc/init.d/mysql start

3.3、登录数据库并修改root密码

[root@CentOS7-0003 local]# mysql -uroot -p      --用初始化时记录的临时密码登录(见2.8)

SQL> alter user 'root'@'localhost' identified by 'Aa@123';
Query OK, 0 rows affected (0.04 sec)

SQL> flush privileges;
Query OK, 0 rows affected (0.01 sec)

SQL> exit;

3.4、设置root用户可以远程连接

//设置root用户可以通过远程链接,如果需要使用链接工具链接,就需要设置,看个人需要。8.0以上版本不支持创建用户和授权一起执行,需要分开。

[root@CentOS7-0003 local]# mysql -uroot -p

SQL> CREATE USER 'root'@'%' IDENTIFIED BY 'Aa@123';
Query OK, 0 rows affected (0.05 sec)

SQL> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.03 sec)

SQL> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.03 sec)

//验证远程登录

mysql -uroot -p -h

​​​​​​​

你可能感兴趣的:(#,Mysql,数据库,mysql)