如果是windows的服务器,请看我另外一个文章:
windows下安装mysql教程
一、下载
https://downloads.mysql.com/archives/community/
二、卸载mariadb
安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb
# 查看系统自带的Mariadb
rpm -qa|grep mariadb
# 卸载系统自带的Mariadb
# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
# 删除etc目录下的my.cnf ,一定要删掉,等下再重新建,之前我将就用这个文件,后面改配置各种不生效
rm /etc/my.cnf
三、创建用户和组
//检查mysql 用户组是否存在
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
// 创建mysql 用户组和用户
groupadd mysql
useradd -r -g mysql mysql
四、解压并安装mysql
# 这里的安装目录是/home
cd /home
# 下载就不说了,把它丢到同目录即可,/home,这里给的mysql-5.7.44的安装
# 解压
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
# 更改所属用户
chown -R mysql:mysql /home/mysql5.7.44
chmod -R 755 /home/mysql5.7.44
# 创建mysql数据、日志目录等
# 这里装在/home/data/mysql里
mkdir -p /home/data/mysql/{data,logs,tmp}
# 将这些目录赋给mysql用户
chown -R mysql.mysql /home/data/mysql/
五、修改my.cnf
vi /etc/my.cnf
[client]
port = 3306
socket = /home/data/mysql/tmp/mysql.sock
[mysqld]
user = mysql
port = 3306
basedir = /home/mysql5.7.44
datadir = /home/data/mysql/data
socket = /home/data/mysql/tmp/mysql.sock
pid-file = /home/data/mysql/tmp/mysqld.pid
tmpdir = /home/data/mysql/tmp
log-error = /home/data/mysql/logs/error.log
#给mysql分配内存,一般是机器内存的80%,越大越好
innodb_buffer_pool_size=10G
#每个表以独立文件存在
innodb_file_per_table=1
# 设置大小写不敏感
lower_case_table_names = 1
# 解决 mysql sql_mode = only_full_group_by 问题
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
六、配置环境
# 将mysql自带服务添加到系统服务中
cd /home/mysql5.7.44/support-files
cp mysql.server /etc/init.d/mysql
#修改服务配置文件
vi /etc/init.d/mysql#添加以下内容 basedir=/home/mysql5.7.44 datadir=/home/data/mysql/data
# 注册开机启动服务
chkconfig --add mysql
chkconfig --list
# 添加环境变量
echo "PATH=$PATH:/home/mysql5.7.44/bin " >> /etc/profile
source /etc/profile
七、初始化数据库
# 初始化的时候可能会报 libaio.so.1 的问题
# 这是缺少环境导致
# 你可以用yum -y update来全量更新,或使用yum install -y libaio libaio-devel来解决这个问题
yum -y update
# 初始化
/home/mysql5.7.44/bin/mysqld --initialize --user=mysql --basedir=/home/mysql5.7.44 --datadir=/home/data/mysql/data
# 初始化的时候可能会报 libaio.so.1 的问题
# 这是缺少环境导致
# 你可以用yum -y update来全量更新,或使用yum install -y libaio libaio-devel来解决这个问题
# 获取临时密码
more /home/data/mysql/logs/error.log |grep password
八、启动mysql服务、改密码配置远程链接
# 启动mysql服务
service mysql start
# 使用初始密码登录mysql服务 并修改密码
# 后面输入自己的刚才看到的临时密码
mysql -uroot -p
# 更改root密码为Jwcs_18916939125
alter user 'root'@'localhost' identified by 'Jwcs_18916939125';
# 允许远程连接mysql
use mysql;
update user set host='%' where user='root';
# 刷新权限
flush privileges;
#退出
quit
九、完成
# 启动mysql服务
service mysql start
# 停止mysql服务
service mysql stop
# 重启mysql服务
service mysql restart