centos7下安装MYSQL

本文详细指导如何在CentOS 7中卸载自带的MariaDB,手动安装MySQL 5.7,设置用户权限,配置my.cnf,启用binlog日志,并进行相关初始化和安全性设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 检查系统是否安装过mysql

#检查系统中有无安装过mysql
rpm -qa|grep mysql

#查询所有mysql 对应的文件夹,全部删除
whereis mysql
find / -name mysql

2. 卸载CentOS7系统自带mariadb

# 查看系统自带的Mariadb
[root@localhost ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64
# 卸载系统自带的Mariadb
[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
# 删除etc目录下的my.cnf ,一定要删掉,等下再重新建,之前我将就用这个文件,后面改配置各种不生效
[root@localhost ~]# rm /etc/my.cnf

3. 检查有无安装过mysql 用户组,没有的话创建

#检查mysql 用户组是否存在
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql

# 创建mysql 用户组和用户
groupadd mysql
useradd -r -g mysql mysql

4. 下载安装,从官网安装下载,我下载的位置在/usr/local/

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz

5. 解压安装mysql

tar -zxvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz
#更名
mv mysql-5.7.44-linux-glibc2.12-x86_64 mysql5.7.44

6. 更改mysql 目录下所有文件夹所属的用户组和用户,以及权限

chown -R mysql:mysql /data/sw/mysql5.7.44
chmod -R 755 /data/sw/mysql5.7.44

7. 编写配置文件 my.cnf(Windows为my.ini,在mysql目录下) ,并添加配置

vi /etc/my.cnf
  • 在插入模式下编写,完成后保存
[mysqld]
basedir=/data/sw/mysql5.7.44
datadir=/data/sw/mysql5.7.44/data
log-error=/data/sw/mysql5.7.44/logs/mysql-err.log
pid-file=/data/sw/mysql5.7.44/data/mysql.pid
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
innodb_file_per_table=1

log-bin=mysql-bin
expire_logs_days = 180
server-id=1

#忽略大小写
lower_case_table_names=1
# 连接配置
max_connections = 2000
wait_timeout = 300
interactive_timeout = 300
# 内存配置
innodb_buffer_pool_size = 10G  
key_buffer_size = 512M

#数据库审计on为开启,off为关闭
general_log = on
#审计信息存储位置
general_log_file=/data/sw/mysql5.7.44/logs/mysql_general.log
#设置日志文件的输出时间为地方时
log_timestamps = SYSTEM

plugin-load-add=validate_password.so
validate_password_policy=MEDIUM
validate_password_length=8
validate_password_number_count=1
validate_password_mixed_case_count=1
validate_password_special_char_count=0

# 其他优化
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci

8. 进入mysql/bin/目录,编译安装并初始化mysql,务必记住数据库管理员临时密码

./mysqld --initialize --user=mysql --datadir=/data/sw/mysql5.7.44/data --basedir=/data/sw/mysql5.7.44
  • windows
# 初始化
mysqld --initialize
# 按照服务
mysqld -install
# 启动服务
net start mysql

(初始密码在/data/sw/mysql5.7.44/logs/mysql-err.log文件中)

9. 启动mysql 服务器

/data/sw/mysql5.7.44/support-files/mysql.server start

10. 添加软连接,并重启mysql 服务

  • 添加软连接
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
  • 重启mysql服务
service mysql restart

11. 登录mysql ,密码就是初始化时生成的临时密码

 mysql -u root -p
  • 如果出现 如下错误
mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

缺少libncurses.so.5共享库文件,安装

sudo yum install ncurses-compat-libs
  • 修改密码
set password for root@localhost = password('root');
  • 开放远程连接(可不开)
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;

12. 设置开机自启

  • 将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
  • 赋予可执行权限
chmod +x /etc/init.d/mysqld
  • 添加服务
chkconfig --add mysqld
  • 显示服务列表
chkconfig --list

13. 查看MySQL binlog日志

  • 进入mysql查看是否开启成功,显示为ON时表示开启成功
show variables like 'log_bin' ; 

在这里插入图片描述

  • 查看日志列表
show master logs;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值