在CentOS中默认安装有MariaDB,是MySQL的一个分支,主要由开源社区维护。
CentOS 7及以上版本已经不再使用MySQL数据库,而是使用MariaDB数据库。
如果直接安装MySQL,会和MariaDB的文件冲突。
因此,需要先卸载自带的MariaDB,再安装MySQL。
rpm -qa|grep mariadb
rpm -e --nodeps 文件名
rpm -qa|grep mariadb
2.1 检查是否本地已经安装了mysql
rpm -qa | grep mysql
2.2 卸载以前的mysql
rpm -e 已经存在的MySQL全名
2.3 下载mysql
从mysql官网下载linux9的8.0镜像https://dev.mysql.com/downloads/mysql/
2.4 解压文件
[root@10 mysql]# tar -xvf mysql-8.0.34-1.el9.aarch64.rpm-bundle.tar
2.5 rpm安装(注意顺序,文件名根据自己实际的替换)
rpm -ivh mysql-community-common-8.0.28-1.el7.aarch64.rpm
rpm -ivh mysql-community-client-plugins-8.0.28-1.el7.aarch64.rpm
rpm -ivh mysql-community-libs-8.0.28-1.el7.aarch64.rpm
rpm -ivh mysql-community-client-8.0.28-1.el7.aarch64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.28-1.el7.aarch64.rpm
rpm -ivh mysql-community-server-8.0.28-1.el7.aarch64.rpm
2.6 初始化数据库
mysqld --initialize --user=mysql
mysqld --initialize-insecure --user=mysql
2.7 新增数据目录(可选)
mysql默认目录是 /var/lib/mysql,这个文件夹下文件较多,不方便做数据管理,所以在该目录下新增data目录
[root@10 mysql]# cd /var/lib/mysql
[root@10 mysql]# mkdir data
[root@10 mysql]# chgrp -R mysql data
[root@10 mysql]# chown -R mysql data
[root@10 mysql]# ll | grep data
2.8 更改配置文件中的数据目录
[root@10 mysql]# vi /etc/my.cnf
[root@10 mysql]# service mysqld start
[root@10 mysql]# mysql --version
[root@10 mysql]# service mysqld status
方法一:
首次登陆没有设置密码,mysql会自动为root用户生成临时密码
临时密码从mysqld.log中获取
[root@10 log]# vi /var/log/mysqld.log
方法二:
1. 可以设置跳过权限验证登录
[root@10 log]# vi /etc/my.cnf
2. 重启mysql
3. 输入mysql命令,直接回车登录
4. 刷新一下权限表: mysql> flush privileges;
5. 修改密码 (以下语句针对8.0版本)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxx';
6. 去掉 skip-grant-tables配置,尝试用新密码登陆
2.1 检查防火墙状态
[root@10 log]# firewall-cmd --state
2.2 关闭防火墙(生产环境不推荐,本地调试为了方便可以直接关闭)
[root@10 log]# service firewalld stop
2.3 设置账号允许远程登录
登录到mysql里执行
mysql> use mysql
mysql> update user set user.Host='%'where user.User='root';
mysql> flush privileges;
mysql> quit