CentOS 7.9 安装 MySQL5.7
1.下载mysql
1.1 官网下载压缩包
https://dev.mysql.com/downloads/mysql/5.7.html
https://dev.mysql.com/downloads/mysql/8.html
1.2 直接下载
也可以直接在服务器运行下边的这两条名称
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.38-linux-glibc2.17-x86_64.tar.xz
1.3 安装wget命令
如果么有安装wget可以安装一下,使用如下命令
sudo yum -y install wget
1.4 上传
下载完成后,上传至服务器想要的位置
mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
MySQL-8.0/mysql-8.0.38-linux-glibc2.17-x86_64.tar.xz
2.检查服务器是否安装过mysql服务
2.1检查是否安装过mysql
rpm -qa | grep mysql
# 显示没有东西,则代表 没有安装过 mysql服务
2.2 卸载
如果安装过或者系统自带,变需要去查询所有的mysql对应的文件,进行卸载,全部删除
whereis mysql
find / -name "mysql"
3.卸载 CentOS 7 自带的 mariadb
3.1 查看系统自带的 mariadb
rpm -qa | grep mariadb
3.2 卸载Mariadb
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
3.3 删除掉对应的配置文件
别忘了删除对应的配置文件,等会在建,不然会产生问题
rm -f /etc/my.cnf
4.创建mysql 用户和用户组
4.1 检查有没有myql用户组
如果检查没有则进行创建
# 查看
cat /etc/group | grep mysql
cat /etc/passwd | grep mysql57
4.2 创建MySQL 用户组和用户
# 新建组
groupadd mysql
# 新建用户
useradd -r -g mysql mysql57
5.安装 mysql5.7
5.1.解压MySQL安装包
# 新建目录
mkdir /usr/local/mysql57 -p
# 解压
tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql57
5.2 修改目录名称
shellcd /usr/local/mysql57
mv mysql-5.7.31-linux-glibc2.12-x86_64 mysql
5.3 给用户组 添加权限
chown -R mysql57:mysql /usr/local/mysql57/mysql
5.4 配置 mysql的配置文件
vim /etc/mysql57.cnf
[client]
socket=/usr/local/mysql57/mysql/data/mysql.sock
[mysqld]
socket=/usr/local/mysql57/mysql/data/mysql.sock
datadir=/usr/local/mysql57/mysql/data
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
log-error=/usr/local/mysql57/mysql/data/mysqld.log
pid-file=/usr/local/mysql57/mysql/data/mysqld.pid
max_connections=400
innodb_file_per_table=1
#表名大小写不敏感, 敏感为
lower_case_table_names=1
#是否只读,1代表只读,0代表读写
read-only=0
#忽略的数据,指不需要同步的数据库
#binlog-ignore-db=mysql
#指定同步的数据库
#binlog-do-db=db01
# 指定用户
user=mysql57
[mysqld_safe]
socket=/usr/local/mysql57/mysql/data/mysql.sock
5.5初始化 MySQL 实例
注意: 此时需要切换到 mysql57 用户权限才可以
su - mysql57
# 进入安装目录
cd /usr/local/mysql57/mysql
# 新建 data 数据目录
mkdir -p data
# 初始化实例
bin/mysqld --defaults-file=/etc/mysql57.cnf --initialize --user=mysql57 --port=3306
5.6 查看初始化数据库密码
tail -f /usr/local/mysql57/mysql/data/mysqld.log
5.7 停止数据库
#
ps -ef | grep mysql
# 杀死刚刚 实例化的mysql 服务,看看有没有启动。
kill -9 23414
5.8 启动MySQL 数据库实例
/usr/local/mysql57/mysql/mysqld_safe --defaults-file=/etc/mysql57.cnf --user=mysql57 --port=3306 &
5.9 测试连接
# 切换到 bin 目录
cd /usr/local/mysql57/mysql/bin
./mysql -h 127.0.0.1 -uroot -p
注意:
1.由于mysql 修改了mysql.sock ,本地启动命令行 需要添加 -h 127.0.0.1 才能正常连接,否则会报错,找不到 mysql.sock
5.10 修改初始密码
alter user 'root'@'localhost' identified by '123456789' ;
5.11 开启远程访问连接数据库
use mysql ;
update user set user.Host='%' where user.User='root' ;
flush privileges ; # 刷新权限
如果远程访问不能连接,检查是否开启了 防火墙(firewalld)
5.12 创建mysql 服务
vim /usr/lib/systemd/system/mysql57.service
[root@hk8s bin]# cat /usr/lib/systemd/system/mysql57.service
[Unit]
Description=MySQL Server on port 3306
After=network.target
[Service]
User=mysql57
Group=mysql
ExecStart=/usr/local/mysql57/mysql/bin/mysqld_safe --defaults-file=/etc/mysql57.cnf --user=mysql57 --port=3306
ExecStop=/bin/kill -TERM $MAINPID
Restart=on-failure
RestartSec=5s
LimitNOFILE=5000
[Install]
WantedBy=multi-user.target
[root@hk8s bin]#
5.13 开启mysql 服务
# 重新加载服务信息
systemctl daemon-reload
# 开启 mysql57 服务
systemctl start mysql57
# 设置 mysql 服务开机启动
systemctl enable mysql57
至此,MySQL 服务 安装完毕。
1014

被折叠的 条评论
为什么被折叠?



