1.下载二进制文件
路径:官方社区版下载链接
PS:安装前要确定没有安装过MySQL数据库
然后将文件导入到Linux即可:
2.安装相关依赖包
yum -y install libaio perl-Data-Dumper vim gcc gcc-c++ wget autoconf net-tools lrzsz
yum -y install curl policycoreutils openssh-server openssh-clients postfix
3.创建MySQL账户
#创建mysql组,并设置组id为306
groupadd -r -g 306 mysql
#创建mysql用户,设置用户id为306,并加入到mysql组中,指定用户家目录为/data/mysql,然后设置不能登录
useradd -r -g 306 -u 306 -d /data/mysql -s /sbin/nologin mysql
虽然创建用户的同时也会创建同名的组,但是无法同时指定组ID和用户ID,从而导致用户ID和组ID不同,所以还是使用以上方法比较方法便于后期管理
4.准备数据目录
数据目录的分区为了便于后期扩容,建议使用逻辑卷
mkdir /data/mysql
chown mysql:mysql /data/mysql
ls -l
total 0
drwxr-xr-x 2 mysql mysql 6 Feb 16 14:50 mysql
5.准备二进制程序
#安装包解压缩到指定/usr/local/路径
tar xf mysql-5.6.47-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
#进入到/usr/local/
cd /usr/local/
#创建一个mysql的软连接,指向解压缩文件(设置软连接的目的是为了方便后期管理)
ln -sv mysql-5.6.47-linux-glibc2.12-x86_64/ mysql
#解压完的目录里有的文件没有所属者和所属组,所以我们要统一递归设置成root
chown -R root:root /usr/local/mysql/
6.准备配置文件
#将解压缩目录下的配置文件模板复制到/etc/my.cnf
#-b:覆盖已存在的文件目标前将目标文件备份
cp -b /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
#打开复制完的配置文件
vi /etc/my.cnf
#mysql语句块中添加以下三个选项
[mysqld]
datadir=/data/mysql #指定mysql的数据目录
innodb_file_per_table=on #在mariadb5.5以上版的是默认值,可不加
skip_name_resolve=on #禁止主机名解析,建议使用
7.创建数据库文件
cd /usr/local/mysql/ #必须进入到这个目录位置执行,否则会报错
#执行安装程序,并指定数据存放目录和文件的所属者所属组
./scripts/mysql_install_db --datadir=/data/mysql --user=mysql
提示此错误的话,安装对应的软件包即可
dnf -y install perl
提示此错误的话,安装对应的软件包即可
dnf -y install libaio
8.准备服务脚本,并启动服务
#将解压文件中的mysql服务端程序复制到/etc/init.d/中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/
#习惯性的将服务端程序改名
cd /etc/init.d/
mv mysql.server mysqld
#启动服务
service mysqld start
#让服务实现开机自动启动
echo '/etc/init.d/mysqld start' >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local
如果有对应的service文件可以执行下面操作:
cp support-files/systemd/mariadb.service /usr/lib/systemd/system/
#重新加载服务
systemctl daemon-reload
#设置开机自动启动
systemctl enable --now mariadb
9.将其他相关程序加入到PATH变量中
echo 'PATH=/usr/local/mysql/bin:$PATH'>> /etc/profile.d/mysql.sh
#source生效
. /etc/profile.d/mysql.sh
启动mysql服务并把其他工具加入到PATH变量后执行mysql命令时可能会出现如下错误
#将和libncurses.so.5相关的依赖文件全部下载即可
dnf -y install libncurses*
10.执行安全加固脚本
/usr/local/mysql/bin/mysql_secure_installation