mysql5升级到mysql8的血泪教训

核心问题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
 

你可能感兴趣的:(笔记)