核心问题1:下载中断这个包就会有问题,下载中断的话一定要重新下载
核心问题2:低版本向高版本迁移 无法整库备份 只能单库备份
1.数据备份
我这里备份了全库,所以后面数据没恢复回来,把DDL语句拆出来了单独建表
mysqldump -u root -p --all-databases >/root/backup.sql
2.安装包
# 安装包上传至原安装包目录下 我的是
/usr/local/ cd /usr/local/realtime/mysql
# 解压安装包
xz -d mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar
# 文件夹重命名为mysql8
mv mysql-8.0.19-linux-glibc2.12-x86_64 mysql8
# 更改文件夹所属
# 这两句很重要 一定要 -R
chown -R mysql.mysql /usr/local
chmod -R 777 /usr/local
3.初始化
mysqld --initialize --console
rm -rf /usr/local/realtime/mysql/mysql-8.0.27/data/*
service mysql restart
记住密码登陆进去
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Jmkx2022';
给远程权限
update user set host="%" where user="root" ;
flush privileges;
创建用户
create user 'bigdata_user'@'%' IDENTIFIED by 'jmkx.2023';
给用户某库下所有表的增删改查权限
GRANT SELECT, INSERT,update,delete ON ads_data_screen.* TO 'bigdata_user'@'%';
update user set host="%" where user="bigdata_user" ;
flush privileges;
更改配置文件/etc/my.cnf
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# # 作用是禁止域名解析:在mysql的授权表中就不能使用主机名了,只能使用IP
skip-name-resolve
# # 设置3306端口
port = 3306
# #设置远程访问ip
bind-address=0.0.0.0
# # 设置mysql的安装目录
basedir=/usr/local/realtime/mysql/mysql-8.0.27
# # 设置mysql数据库的数据的存放目录
datadir=/usr/local/realtime/mysql/mysql-8.0.27/data
# # 允许最大连接数
max_connections=200
# # 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# # 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# #设置查询操作等不区分大小写
lower_case_table_names=1
#严格模式禁止 不然不能创建大表
innodb_strict_mode=0
#使用这个严重不安全 也就不能操作权限用户了
#skip-grant-tables
#skip_ssl
#default_authentication_plugin=mysql_native_password
# 修改mysql服务启动项配置
vi /etc/init.d/mysql
# 修改basedir目录
basedir=/usr/local/realtime/mysql/mysql-8.0.27
datadir = /usr/local/realtime/mysql/mysql-8.0.27/data
# 生效验证
[root@centos ~]# source /etc/profile
[root@centos ~]# which mysql
/usr/local/mysql8/bin/mysql
[root@centos ~]# mysql -V
mysql Ver 8.0.27 for linux-glibc2.12 on x86_64 (MySQL Community Server - GPL)
mysql -u root -p< /root/backup.sql