本文章收录于【国产银河服务器安装文档集】,将详细的讲解 国产银河服务器操作系统各种软件的部署与说明。
说明
由于目前使用的是arm架构的服务器,在mysql的官方提供版本中,5.7没有支持arm架构的包,而8.0版本有支持arm架构的版本。所以目前有两种方式
方式一:安装高版本的的mysql
方式二:自行去编译安装5.7版本的mysql
经过比对mysql8和mysql5.7的相关差异,决定直接安装mysql8
直接官网下载:
https://dev.mysql.com/downloads/mysql/
选择版本:
先查看一下是否已经安装了
rpm -qa|grep mariadb
删除mariadb,命令:
rpm -e --nodeps mariadb-libs
rpm -e mariadb-server --nodeps
cd /usr/local/geoStar/
tar -xvf mysql-8.0.29-1.el8.aarch64.rpm-bundle.tar
逐个安装,命令如下:
【必须安装】
rpm -ivh mysql-community-common-8.0.21-1.el8.aarch64.rpm --nodeps --force
rpm -ivh mysql-community-client-plugins-8.0.29-1.el7.aarch64.rpm --nodeps --force
rpm -ivh mysql-community-libs-8.0.29-1.el7.aarch64.rpm --nodeps --force
rpm -ivh mysql-community-client-8.0.29-1.el7.aarch64.rpm --nodeps --force
rpm -ivh mysql-community-server-8.0.29-1.el7.aarch64.rpm --nodeps --force
查看 mysql
rpm -qa | grep mysql
命令:
systemctl status mysqld
命令:
service mysqld stop
注意:在安装完成之后,初始化数据库之前,修改 my.cnf
打开mysql配置文件
vim /etc/my.cnf
在尾部追加一行
lower_case_table_names=1
1:数据库大小写不敏感
0:数据库大小写敏感
默认是0,如果不追加,数据库安装好后,数据库表名大小写敏感,再要调整只能删除数据后重新初始化
然后再初始化数据库
mysqld --initialize --console
若是报 mysqld: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory 的错误,解决办法如下:
二进制包下载地址:
https://vault.centos.org/centos/8/AppStream/aarch64/os/Packages/compat-openssl10-1.0.2o-3.el8.aarch64.rpm |
下载好包之后上传到服务器中并进行安装
rpm -ivh compat-openssl10-1.0.2o-3.el8.aarch64.rpm --nodeps --force
安装完成后继续执行 mysqld --initialize --console 命令。
chown -R mysql:mysql /var/lib/mysql/
命令:
systemctl start mysqld
systemctl status mysqld
mysql -V
命令:
cat /var/log/mysqld.log
命令:mysql -u root -p 回车键
然后输入临时密码(输入时不会显示出来,输入完直接回车)
命令:
alter USER 'root'@'localhost' IDENTIFIED BY '123456';
命令:show databases;
命令:use mysql;
命令:select host, user, authentication_string, plugin from user;
命令:update user set host = "%" where user='root';
命令:select host, user, authentication_string, plugin from user;
命令:flush privileges;
注意:
尝试使用navacat远程连接,会出现如下错误
2059 - Authenticationplugin‘caching_sha2_password’ cannot be loaded:XXXXX
解决办法:
命令:mysql -u root -p(回车后,输入更改后的密码123456)
命令:use mysql;
命令:alter USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
命令:flush privileges;
备注:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。
解决问题方法有两种:方法1.升级navicat驱动;方法2.把mysql用户登录密码加密规则还原成mysql_native_password.。此处我使用的是方法2。
< END >
本文章收录于【国产银河服务器安装文档集】,将详细的讲解 国产银河服务器操作系统各种软件的部署与说明。