MySQL8.4的安装与部署


下载

wget https://cdn.mysql.com//Downloads/MySQL-8.4/mysql-8.4.0-1.el8.aarch64.rpm-bundle.tar

安装

清理 mariadb
rpm -qa |grep maria |grep -v connect |xargs rpm -e -f
本地安装
tar -xvf mysql-8.4.0-1.el8.aarch64.rpm-bundle.tar
yum localinstall *.rpm -y

配置文件

[mysqld]
datadir=/mysql/data
max_allowed_packet = 1G
innodb_log_file_size = 512M
innodb_log_buffer_size = 512M
innodb_file_per_table = 1
innodb_buffer_pool_size=8G
innodb_flush_log_at_trx_commit=0
max_connections=2000
lower-case-table-names=1
innodb_strict_mode = 0
character_set_server=utf8
secure_file_priv = 
default-time-zone='+08:00'
binlog_expire_logs_seconds = 7200
transaction-isolation = READ-COMMITTED
mysql_native_password=on
[mysql]
prompt="\\u@\\h : \\d \\r:\\m:\\s>"
default-character-set=utf8

初始化

mkdir -p /mysql/data
chown mysql:mysql /mysql/data -R
mysqld --initialize-insecure

启动异常处理

注意我使用的是 银河麒麟v10 on 鲲鹏920
但是发现启动报错, 提示为:
mysqld: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: Permission denied

提示很奇怪. 发现这个 libcrypto 是我之前 软连接的
原始的文件的确 是 700 
我改成 777 模式 
然后就可以启动服务了.

修改密码

root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
所以理论上 root 在本地可以直接登录

注意需要先启动数据库
chown mysql:mysql /mysql/ -R
systemctl restart mysqld

mysql -uroot  -h127.0.0.1

创建用户和修改密码:
create user root@'%' identified by 'xxxxx';
alter user root@localhost identified by 'xxxxx';

查看用户以及密码验证信息
select user,host,plugin from mysql.user ;

冷备份

关闭服务
覆盖文件
修改属主
重启服务