华为欧拉openEuler 22.03 (LTS-SP3)安装MySQL5.7.44
一、前提条件:
1、先确认服务器是否可以访问外网,本文仅尝试了可以访问外网的服务器;
2、确认当前登录用户是root
3、更新服务器软件库:
清除缓存
yum clean all
更新缓存
yum makecache
如果遇到更新失败,根据报错提示查看/etc/yum.repos.d/openEuler.repo文件中配置的路径是否可访问,我的是update的时候报错,通过浏览器尝试访问了一下更换了一下链接:
从:gpgkey=http://repo.openeuler.org/openEuler-22.03-LTS-SP3/OS/$basearch/RPM-GPG-KEY-openEuler
改成:gpgkey=http://repo.openeuler.org/openEuler-22.03-LTS-SP3/OS/aarch64/RPM-GPG-KEY-openEuler
二、安装MySQL5.7.44
1、添加MySQL5.7的软件源:
sudo dnf install https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
2、下载MySQL公钥:
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql
3、确认公钥已正确导入:
sudo rpm -qa gpg-pubkey*
4、安装MySQL5.7.44
sudo dnf install mysql-community-server -y
这里如果出现GPG密钥检查失败,使用 --nogpgcheck 选项禁用 GPG 检查:
sudo dnf install mysql-community-server --nogpgcheck -y
5、安装完成,启动服务
启动:
sudo systemctl start mysqld
开机自启:
sudo systemctl enable mysqld
查询Mysql的运行状态:
sudo systemctl status mysqld
6、我的没有找到初始化的密码,直接走的密码找回:
msyql配置文件中添加skip-grant-tables
vim /etc/my.cnf
说明:skip-grant-tables是MySQL配置文件(my.cnf)中的一个选项,用于在MySQL服务启动时跳过权限验证,从而让所有用户都具有完全的访问权限。这个选项通常只用于特定的维护任务,并不适合在生产环境中长期使用。(所以我们登录之后修改密码就关掉)
保存并退出 :wq
重启MySQL
systemctl restart mysqld
如下图所示:登录成功。
修改密码
(1)切换到mysql库
use mysql;
(2)查看当前用户信息:执行以下SQL查询语句,查看当前用户的用户名和相关权限
select user, host, authentication_string from user;
说明:在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string
(3)使用sql命令修改root账号密码
update user set authentication_string=password('<new_password>') where user='用户';
(4)刷新权限
flush privileges;
退出数据库
exit
(5)删除掉skip-grant-tables
vim /etc/my.cnf
:wq
重启MySQL:
systemctl restart mysqld
重启后登录成功MySQL之后被要求重新设置密码:
执行sql:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
刷新权限
flush privileges;