aarch64 架构的 CenterOS7 安装 mysql
2023-10-31 本文已影响0人
__Y_Q
电脑是 M1 芯片的 mac, 虚拟机装的是centOS7
, aarch64
架构的 . 一开始并不了解这么多版本区分. 后面才发现不同架构的根本无法安装😭. 现在记录一下成功的安装步骤.
安装前的准备
先检查本机是否有安装后, 是否有安装残留.
- 停止
mysql
服务
sudo systemctl stop mysqld
- 卸载旧版本
mysql
#查看现有版本,mariadb和mysql都要查:
rpm -qa|grep mariadb
rpm -qa|grep mysql
- 卸载
rpm -e --nodeps 文件名(不要带后缀)
- 再次检查是否卸载干净
rpm -qa|grep mariadb
rpm -qa|grep mysql
- 查找
mysql
的目录并全部删除
find / -name mysql
1. 直接去 mysql 官网 下载对应版本的 mysql
版本对应
这里选择的是
bundle
, 代表是所有依赖.
2. 将安装包上传到虚拟机后, 执行解压命令, 接着就看到解压出来的一堆东西了.
安装包内容3. 安装.
一定要顺序强制安装, 忽略依赖安装. 不然报错, 会一直让安装依赖, 顺序和命令如下.
rpm -ivh --nodeps --force mysql-community-client-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-client-plugins-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-common-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-debuginfo-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-devel-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-embedded-compat-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-icu-data-files-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-libs-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-libs-compat-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-server-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-server-debug-8.0.35-1.el7.aarch64.rpm
rpm -ivh --nodeps --force mysql-community-test-8.0.35-1.el7.aarch64.rpm
4. 配置 mysql
安装好后, 先尝试启动一下安装好的 mysql
服务
systemctl start mysqld
nice , 一次成功.
登录成功后, 用命令查看默认密码并且登录.
cat /var/log/mysqld.log | grep password
接着进行登录
mysql -u root -p
输入密码
如果给的默认密码特别复杂, 想要直接修改密码. 那就进行下面的操作
- 打开
vim /etc/my.cnf
, 在最后加上skip-grant-tables
. 在skip-grant-tables
模式下启动mysql
时不启动授权表功能,可以直接免密登录 - 接着使用
systemctl restart mysqld
命令重启mysql
- 登录
mysql
, 不需要输入密码mysql -u root
- 重置
root
密码use mysql;
update user set authentication_string='' where User='root';
- 刷新并退出
flush privileges;
quit;
- 注释掉
my.cnf
, 最后加上的skip-grant-tables
. - 再次重启
mysql
- 再次登录
mysql
, 登录密码为空, 然后修改密码.use mysql
-
ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123123';
直接这样修改 ,会提示密码不符合要求, 需要大小写加数字. 那么需要接着修改密码等级.
- 修改密码等级
set global validate_password.policy=0;
set global validate_password.length=1;
- 再来执行修改密码
-
ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123123';
显示成功. 或者ALTER USER 'root'@'localhost' IDENTIFIED BY '123123';
忘记是哪个了.
-
- 刷新并退出.
5. 远程连接 mysql.
默认情况下, mysql
账号不允许从远程登录, 只能在 localhost
登录. 有两种方式设置. 这里使用的是改表的方式.
update user set host = '%' where user = 'root';
select host, user from user;
还有最重要的一步, 开放3306端口. 执行命令开启3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
然后重新加载一下
firewall-cmd --reload
查看下是否开启成功
[root@local_2 mysql]# firewall-cmd --query-port=3306/tcp
yes
现在就可以使用 Navicat
等一系列的工具进行远程登录了.