本次安装使用Mysql8.0版本,因为5.7版本在mysql官网没有适配,需要自己手动编译安装

一、下载镜像

官网地址:MySQL :: Download MySQL Community Server (Archived Versions)

根据官方文档,KylinLinuxAdvancedServerreleaseV10(Tercel)是基于开源社区的CentOS7进行开发的,因此它对应的是Linux7版本。Kylin在CentOS7的基础上,进行了一些定制化的开发,以适应中国国内的一些特殊需求。

二、卸载系统自带的MySQL和MariaDB

rpm -qa | grep mysqlrpm -qa | grep mariadbrpm -e --nodeps mariadb-libsrpm -e mariadb-server --nodepsrm -rf /var/lib/mysqlcd /var/logrm -rf mysql.logrm -rf mysqld.log 

三、解压并安装

tar-xvfmysql-8.0.30-1.el7.aarch64.rpm-bundle.tar

完成后如下所示:

四、安装

1、安装依赖库(离线环境需要配置yum源)

yum install -y libaio*yum install -y libncurses*

2、安装rpm包

rpm -ivh mysql-community-common-8.0.30-1.el8.aarch64.rpmrpm -ivh mysql-community-client-plugins-8.0.30-1.el8.aarch64.rpmrpm -ivh mysql-community-libs-8.0.30-1.el8.aarch64.rpmrpm -ivh mysql-community-client-8.0.30-1.el8.aarch64.rpmrpm -ivh mysql-community-icu-data-files-8.0.30-1.el8.aarch64.rpmrpm -ivh mysql-community-server-8.0.30-1.el8.aarch64.rpm

3、安装过程报错

安装compat-openssl10-1.0.2o-3.el8.aarch64.rpm,下载地址:

这里可能会因为缺少compat-openssl报错,官网地址CentOSRepositories-pkgs.org

下载链接:https://vault.centos.org/centos/8/AppStream/aarch64/os/Packages/compat-openssl10-1.0.2o-3.el8.aarch64.rpm

安装完比对看是不是六个

4、添加大小写敏感参数

vim/etc/my.cnf

[mysqld]下面添加

5、初始化数据库

mysqld–initialize–console–lower-case-table-names=1

6、目录授权

chown-Rmysql:mysql/var/lib/mysql/

五、启动

1、启动

systemctlstartmysqld

2、查看临时密码

grep’temporarypassword’/var/log/mysqld.log

3、使用临时密码登录

mysql-uroot-p

六、密码及用户

1、修改临时密码

alterUSER’root’@’localhost’IDENTIFIEDBY’你的密码’;

2、远程权限和密码

mysql>CREATEUSER’root’@’%’IDENTIFIEDBY’密码’;

QueryOK,0rowsaffected(0.01sec)

mysql>GRANTALLPRIVILEGESON*.*TO’root’@’%’WITHGRANTOPTION;

QueryOK,0rowsaffected(0.01sec)

3、报错问题解决(ERROR1396(HY000):OperationCREATEUSERfailedfor’root’@’%’)

mysql>dropuserroot@’%’;

mysql>flushprivileges;

mysql>CREATEUSER’root’@’%’IDENTIFIEDBY’密码’;

mysql>GRANTALLPRIVILEGESON*.*TO’root’@’%’WITHGRANTOPTION;

mysql>flushprivileges;

七、调优

1、字符集

[mysql]

default-character-set=utf8mb4

[client]

default-character-set=utf8mb4

[mysqld]

max_connections=1000