1.MySQL二进制包获取
在MySQL官网下载你需要的二进制包版本。
官网下载链接:https://downloads.mysql.com/archives/community/
本文是以mysql-5.6.46版本为例,所以也可以直接下载我这个版本。
链接:https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
2.二进制安装MySQL
2.1 下载mysql-5.6.46二进制包
wget https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
2.2 安装依赖包
yum -y install gcc gcc-c++ cmake ncurses-devel libaio-devel autoconf openssl openssl-devel
2.3 解压二进制包
tar xf mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
2.4 移动二进制包并做软链接
mv mysql-5.6.46-linux-glibc2.12-x86_64 /usr/local/mysql-5.6.46
ln -s /usr/local/mysql-5.6.46 /usr/local/mysql
2.5 创建数据库管理用户
useradd -M -s /sbin/nologin mysql
2.6 拷贝mysql配置文件和启动脚本
CentOS 7 系统中默认使用的数据库是MariaDB,配置文件是/etc/my.cnf
,所以这里我们需要覆盖原配置文件。
\cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
拷贝mysql启动脚本到/etc/init.d/
目录下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2.7 初始化数据库
- 执行初始化命令
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
- 查看是否初始化成功
执行的输出过程内容中出现2个 OK
数据库目录下/usr/local/mysql/data/
有如下几个库:mysql、test、performance_schema
3.启动登录数据库
3.1 使用mysql启动脚本启动数据库
#启动数据库
/etc/init.d/mysqld start
#停止数据库
/etc/init.d/mysqld stop
3.2 使用systemd管理mysql服务
- 创建mysql的unit文件
在 /usr/lib/systemd/system/
目录下创建一个名为mysqld.server
的unit文件。
cat >>/usr/lib/systemd/system/mysqld.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF
- 重载unit配置文件
systemctl daemon-reload
- 启动mysql服务,并设置开启自启
systemctl start mysqld.service
systemctl enable mysqld.service
3.3 检查mysql服务是否启动
[root@db01 ~]# ps -ef | grep [m]ysqld
mysql 7354 1 0 21:57 ? 00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
[root@db01 mysql]# netstat -lntp | grep 3306
tcp6 0 0 :::3306 :::* LISTEN 17648/mysqld
3.4 登录mysql数据库
- 使用绝对路径登录
[root@db01 ~]# /usr/local/mysql/bin/mysql
- 配置环境变量,直接使用mysql命令
因为系统中/usr/bin/
或者/usr/sbin/
目录下默认是mysql的命令的,修改下PATH变量,让其可以直接使用mysql命令
#修改PATH变量
echo "export PATH=/usr/local/mysql/bin:\$PATH" > /etc/profile.d/mysql.sh
#登录mysql数据库
[root@db01 ~]# mysql