本文章参考:Centos7 安装 Mysql 8.0.13_YaoQi·的博客-CSDN博客
一、卸载Mariadb
# 查看mariadb数据库:
rpm -qa | grep mariadb
# 卸载mariadb数据库:
rpm -e --nodeps mariadb文件名
# 检查并删除etc目录下的my.cnf文件:
rm /etc/my.cnf
二、将tar包解压到local下面,并且重新命名为mysql
# 解压命令:
tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz -C /usr/local/
# 重命名命令:
[root@~ local]# mv mysql-8.0.13-linux-glibc2.12-x86_64/ mysql
三、添加mysql用户组和用户
# 添加mysql用户和组
groupadd mysql
useradd -r -g mysql mysql
四、初始化mysql配置表
# 创建data目录
[root@~]# cd /usr/local/mysql
[root@~ mysql]# mkdir data
# 修改当前目录为mysql用户
[root@~ mysql]# chown -R mysql:mysql ./
# 初始化数据库
[root@~ mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
# 如果出现错误,则说明这是缺少numactl,这个时候如果是Centos就yum -y install numactl就可以解决,然后重新运行上面的initialize命令
# initialize成功会出现一个随机密码,记下
# 修改当前的data目录为mysql用户
[root@~ mysql]# chown -R mysql:mysql data/
# 复制配置文件(如果没有my-default.cnf就手动创建一个文件,并且配置权限)
[root@~ mysql]# cd support-files/
[root@~ support-files]# touch my-default.cnf
[root@~ support-files]# vim my-default.cnf
# 修改my-default.cnf配置文件
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
socket = /usr/local/mysql/tmp/mysql.sock
lower_case_table_names=1
[client]
default-character-set=utf8
socket= /usr/local/mysql/tmp/mysql.sock
[mysql]
default-character-set=utf8
socket= /usr/local/mysql/tmp/mysql.sock
# 设置权限
[root@~ mysql]# cd support-files/
[root@~ support-files]# chmod 777 my-default.cnf
[root@~ support-files]# cp ./my-default.cnf /etc/my.cnf
[root@~ mysql]# mkdir tmp
[root@~ mysql]# chmod 777 ./tmp/
# 修改/etc/my.cnf配置文件
[root@~ mysql]# vi /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
socket=/usr/local/mysql/tmp/mysql.sock
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
五、加入开机启动项
[root@~ mysql]# cd support-files/
[root@~ support-files]# cp mysql.server /etc/init.d/mysqld
# 增加执行权限
[root@~ mysql]# chmod 755 /etc/init.d/mysqld
# 注册启动服务
[root@~ mysql]# chkconfig --add mysqld
# 查看是否添加成功
[root@~ mysql]# chkconfig --list mysqld
# 启动服务
[root@~ mysql]# cd support-files/
[root@~ support-files]# ./mysql.server start --user=mysql
六、配置环境变量
[root@~ ~]# vi /etc/profile
# 末尾加上:
export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
# 保存退出之后 执行
[root@~ ~]# source /etc/profile
# 让文件生效
七、登录并修改初始密码
# 建立软链接
ln -s /usr/local/mysql/tmp/mysql.sock /tmp/mysql.sock
# 登录mysql(密码为initialize成功生成的随机密码),修改密码
alter user 'root'@'localhost' identified by '12345';
# 查询user和host,并将host改成‘%’
update user set host = '%' where user = 'root';
# 更新配置
flush privileges;
#选择mysql数据库
# 授权用户:任意主机以用户root和root密码连接到mysql服务器
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
# 更新配置
flush privileges;
八、开放端口
# 查看防火墙状态
firewall-cmd --state
# 查看已开放的列表
firewall-cmd --list-ports
# 添加要开放的列表
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重启防火墙
firewall-cmd --reload
版权声明:本文为Auspicious_air原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。