Centos二进制安装MySQL5.7
目录
一、 安装依赖包 1
二、 检查是否安装mysql和mariadb 1
三、 卸载系统自带的 mysql和mariadb-lib,没有则跳过 1
四、 下载安装包 1
五、 解压到指定目录,并创建文件链接 1
六、 创建mysql相关的组和用户 2
七、 创建mysql相关的目录,并修改相关文件的权限 2
八、 创建mysql的配置文件,在/etc/my.cnf,默认位置 2
九、 安装mysql系统数据库 3
十、 安装mysql的系统数据库 3
十一、 创建mysql.sock对应的文件软连接到 /tmp/mysql.sock 3
十二、 复制mysql的启动文件到centos的启动目录,设置开机启动 3
十三、 启动mysql服务 3
十四、 修改MySQL的root密码,并修改root用户远程可连接 3
十五、 关闭服务器防火墙,生产环境不建议关闭 4
十六、 安装完毕 4
一、 安装依赖包
yum install libaio
二、 检查是否安装mysql和mariadb
rpm -qa | grep mysql
rpm -qa | grep mariadb
三、 卸载系统自带的 mysql和mariadb-lib,没有则跳过
yum -y remove mysql-libs
Yum -y remove mariadb-libs
rm -rf /etc/my.cnf
下载安装包
镜像:http://mirrors.ustc.edu.cn/
Wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/mysql-5.7.29-el7-x86_64.tar.gz
解压到指定目录,并创建文件链接
tar -zvxf mysql-5.7.29-el7-x86_64.tar.gz -C /usr/local/
ln -s /usr/local/mysql-5.7.29-el7-x86_64/ /usr/local/mysql
创建mysql相关的组和用户
groupadd mysql
useradd -g mysql -d /usr/local/mysql -s /sbin/nologin -M mysql
创建mysql相关的目录,并修改相关文件的权限
mkdir -p /data/mysql/{log,data}
chown -R mysql.mysql /data/mysql/
chown -R mysql.mysql /usr/local/mysql
创建mysql的配置文件,在/etc/my.cnf,默认位置
vi /etc/my.cnf
[mysqld]
port = 3306 #指定端口
#指定文件路径,确认权限
basedir = /usr/local/mysql
datadir=/data/mysql/data
socket=/data/mysql/mysql.sock
log-error=/data/mysql/log/mysqld.log
pid-file=/data/mysql/mysqld.pid
#skip-grant-tables
lower_case_table_names = 1 #配置表名不区分大小写
character-set-server = utf8 #设置为默认编码为utf8
init_connect = ‘SET NAMES utf8’
max_connections = 1024 #设置最大连接数
导入mysql的bin目录到profile
echo “export PATH=$PATH:/usr/local/mysql/bin” >> /etc/profile
source /etc/profile
安装mysql的系统数据库
mysqld --basedir=/usr/local/mysql --datadir=/data/mysql/data --user=mysql --initialize
cat /data/mysql/log/mysqld.log
创建mysql.sock对应的文件软连接到 /tmp/mysql.sock
ln -s /data/mysql/mysql.sock /tmp/mysql.sock
复制mysql的启动文件到centos的启动目录,设置开机启动
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
启动mysql服务
service mysql start
修改MySQL的root密码,并修改root用户远程可连接
mysql -uroot -p
输入之前的密码:
set password=password(‘123456’);
use mysql;
update user set host=’%’ where user=‘root’;
flush privileges;
关闭服务器防火墙,生产环境不建议关闭
停止防火墙
systemctl stop firewalld
systemctl disable firewalld