MySQL8.0安装配置

MySQL8.0新特性

MySQL从5.7一跃直接到8.0,这其中的缘由,咱就不关心那么多了,有兴趣的朋友自行百度,本次的版本更新,在功能上主要有以下6点:

  • 账户与安全
  • 优化器索引
  • 通用表表达式
  • 窗口函数
  • InnoDB 增强
  • JSON 增强

MySQL8.0安装

MySQL Download

基础环境准备

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 上传、解压
[root@db01 ~]# mkdir /server/tools -p
[root@db01 ~]# cd /server/tools/
[root@db01 tools]# tar xf mysql-8.0.25-linux-glibc2.12-x86_64.tar.xz -C /application/
[root@db01 ~]# ln -s /application/mysql-8.0.25-linux-glibc2.12-x86_64/ /application/mysql

# 系统设置
[root@db01 ~]# useradd -u 1020 -s /sbin/nologin -M mysql
[root@db01 ~]# rpm -qa |grep mariadb
[root@db01 ~]# rpm -e mariadb-libs --nodeps
[root@db01 ~]# mkdir /application
[root@db01 ~]# mkdir /data/3306/data -p

# 配置环境变量
[root@db01 ~]# vim /etc/profile
export PATH=/application/mysql/bin/:$PATH

初始化数据

1
mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/3306/data

初始化参数说明:

  • –initialize-insecure : 初始化核心参数
  • –user=mysql : 指定初始化用户
  • –basedir=/application/mysql : 数据库软件位置
  • –datadir=/data/3306/data : 数据存储位置

报错

1
2
3
4
[root@db01 ~]# mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/3306/data
mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
# 解决
[root@db01 ~]# yum install -y libaio-devel

配置文件

1
2
3
4
5
6
7
8
9
[root@db01 ~]# vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/application/mysql
datadir=/data/3306/data
port=3306
socket=/tmp/mysql.sock
[client]
socket=/tmp/mysql.sock

准备启动脚本

1
2
3
4
5
[root@db01 ~]# cd /application/mysql/support-files/
[root@db01 support-files]# cp -rp mysql.server /etc/init.d/mysqld
[root@db01 ~]# systemctl enable mysqld
[root@db01 ~]# systemctl start mysqld
[root@db01 ~]# systemctl status mysqld

MySQL新特性详解后续更新请持续关注!!