MySQL 8 安装教程(CentOS7)
- 本文是整理的在CentOS7上安装MySQL8的教程
- 纯净的CentOS7系统安装最合适
- MySQL5.7可参考这篇文章
一、下载文件并解压
mkdir /mysql
cd /mysql
wget https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
tar -xvf mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
- 如果官方文件下载慢,可以从网盘下载:搜索微信小程序“数字续坚”在资源页面筛选复制网盘信息即可
二、检测环境并卸载原MySQL
- 可以用网络上的方法卸载,卸载得越干净越好
- 本文推荐的方法
- 检测是否已安装
rpm -qa | grep -i mariadb
mariadb-libs-5.5.65-1.el7.x86_64
rpm -ev --nodeps mariadb-libs-5.5.65-1.el7.x86_64
- 其他可能需要卸载的依赖(否则后续安装libs的时候可能报错)
yum remove mysql-libs
yum install net-tools -y
yum -y install perl.x86_64
yum install -y libaio.x86_64
三、检测环境并卸载原MySQL
- 按顺序安装逐个安装,顺序不同可能导致依赖异常
- common–>libs–>client–>server
rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm
- 如果出现了缺少numactl的so文件的错误,执行下方命令,然后重新执行上述命令即可
yum -y install numactl
四、启动mysql
- 启动、关闭、重启命令
- 查看运行状态命令
- 此处只执行启动命令即可
service mysqld start
service mysqld stop
service mysqld restart
service mysqld status
五、查看配置
cat /var/log/mysqld.log | grep password
mysql -uroot -p
![在这里插入图片描述]()
ALTER user 'root'@'localhost' IDENTIFIED BY 'Atlassian@2023';
- 截至此处,MySQL 8 默认安装已完成,后续为可选操作
六、其他常见操作
1.开放远程访问
- 第三行命令是核心,可修改指定用户、指定IP(host)
- 命令如下
use mysql;
select host,user from user;
update user set host='%' where user ='root';
flush privileges;
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
- 执行完如果还不能访问,可以考虑是否云服务器的安全组或安装了iptables
2.修改配置文件
vim /etc/my.cnf
3.Atlassian产品的cnf配置
- atlassian用户,如Jira、Confluence、Bitbucket等需在[mysqld]下加入如下内容
- 完成后需重启
default-storage-engine=INNODB
character_set_server=utf8mb4
collation-server=utf8mb4_bin
max_allowed_packet=256M
innodb_log_file_size=2GB
innodb_default_row_format=DYNAMIC
#innodb_redo_log_capacity=4G
#autoCommit=false
binlog_format=row
log_bin_trust_function_creators=1
transaction-isolation=READ-COMMITTED
![在这里插入图片描述]()
4.创建数据库
CREATE DATABASE jira CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
5.修改数据目录位置
- 在/etc/my.cnf中找到默认的数据目录位置
- 将原数据复制到你想的地方
- 给新目录适当的权限
- 修改/etc/my.cnf并重启
- 详细步骤如下
5.1 移动文件并给权限
service mysqld stop
mv /var/lib/mysql /data
chmod -R 777 /data/mysql/
5.2 修改my.cnf文件
vi /etc/my.cnf
datadir=/data/mysql
socket=/data/mysql/mysql.sock
5.3 启动mysql
service mysqld start
setenforce 0
- selinux启动即关闭:修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启或等待下次重启。