mysql迁移至8.0时的注意事项(小结)

密码模式

PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password]

mysql8 之后,默认的密码模式改为 caching_sha2_password,新的模式需要新的驱动,至少现在 pdo / navicat 还没给出,所以我们还是得切换成老的 mysql_native_password 模式。

`mysql_native_password`:7.0 以下
`caching_sha2_password`:8.0 以上

1、my.cnf 配置默认的密码模式

[mysqld]
default_authentication_plugin=mysql_native_password

2、更新账号的密码模式

# 创建新的账号
create user 'root'@'%' identified with mysql_native_password by '123456';

# 已存在的账号
alter user 'root'@'%' identified with mysql_native_password by '123456';

3、如果你需要授权

# 授权也不能兼并创建账号了,只能授权
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

密码复杂度策略

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

密码复杂度验证策略导致的,关闭后设定即可

set global validate_password.policy=0;
set global validate_password.length=6;

默认编码

PDO::__construct(): Server sent charset (255) unknown to the client. Please, report to the developers

设定 mysql 服务的默认编码

# Default Homebrew MySQL server config
[client]
default_character_set=utf8mb4

[mysql]
default_character_set=utf8mb4

[mysqld]
default_authentication_plugin=mysql_native_password
character_set_server=utf8mb4
collation_server=utf8mb4_general_ci

远程访问

1、my.conf 注释掉本地监听

[mysqld]
#bind_address=127.0.0.1

2、更新账号的 host

update mysql.user set host='%' where user='root';

到此这篇关于mysql迁移至8.0时的注意事项(小结)的文章就介绍到这了,更多相关mysql迁移至8.0内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Docker版的MySQL5.7升级到MySQL8.0.13,数据迁移

    1.备份旧的MySQL5.7的数据 记得首先要备份旧的数据,防止升级失败导致数据丢失.备份的方式有两种,一种是在宿主机直接执行导出命令,另外一种是先进入Docker环境下进行操作.主要的导出命令如下: #方式一,直接在宿主机器进行数据备份 # 0df568 是docker的id ;-uroot -p123456 是用户名和密码;dbA dbB是要备份的数据,--databases 后面可以接多个数据库名,导出的sql到/root/all-databases3306.sql docker exec

  • mysql迁移至8.0时的注意事项(小结)

    密码模式 PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password] mysql8 之后,默认的密码模式改为 caching_sha2_password,新的模式需要新的驱动,至少现在 pdo / navicat 还没给出,所以我们还是得切换成老的 mysql_native_password 模式. `mysql_native_passwo

  • 使用MySQL MySqldump命令导出数据时的注意事项

    今天使用mysqldump命令备份数据的时候出现了一个问题. 一开始迁移 Discuz 7 论坛的 mysql 数据库时,采用 mysqldump 命令的时候一切顺利,但导入的时候却遇到了  ERROR 1062 (xxxxx) at line 1262: Duplicate entry 'XXX' for key 'XXX' 错误,并停在原地. 对于遇到相同错误的朋友千万别第一时间就尝试用 –force 参数强行导入(除非你原来的数据库已经崩溃).因为这样做的话,即使导入了,也会有一大片数据丢

  • Nuxt升级2.0.0时出现的问题(小结)

    喜大普奔,Nuxt终于正式发布2.0了,最近趁热把博客从1.4升级到了2.0,并且用Typescript重构了下,可以点Jooger.me看下,在升级Nuxt过程中出现了一个小问题 关于release 2.0的公告可以查看官网的Release Notes以及官方的Demo,升级过程十分简单,基本不需要什么迁移成本,所有npm命令都跟以前一样,只需要把一些关联包升级一下即可 今天出现的问题是这样的,随着nuxt升级,webpack和vue-loader也分别升级到了4和15,升级过后,报了如下问题

  • MySql 8.0.11 安装过程及 Navicat 链接时遇到的问题小结

    我的系统和软件版本是这样的: 系统环境:win7.64位 MySQL版本:8.0.11 对版本的说明 之所以说是 MySQL5.7 及以上版本,是因为从 MySQL5.7 版本之后,其安全机制有所改变.在安装完成后,登陆 MySQL 时,需要输入一个密码,这个密码其实是在配置 MySQL 的过程中生成的一个随机密码,而我们必须找到这个随机密码才能登陆 MySQL.而在 5.7 之前的版本并不需要这样做,因此对于 5.7 之前的版本,本教程可能并不完全适用,不过网上有很多,如果需要可以自己搜索.

  • 数据从MySQL迁移到Oracle 需要注意什么

    将数据从MySQL迁移到Oracle的注意事项,有如下几点 1.自动增长的数据类型处理 MYSQL有自动增长的数据类型,插入记录时不用操作此字段,会自动获得数据值.ORACLE没有自动增长的数据类型,需要建立一个自动增长的序列号,插入记录时要把序列号的下一个值赋于此字段. CREATE SEQUENCE 序列号的名称 (最好是表名+序列号标记) INCREMENT BY 1 START WITH 1 MAXVALUE 99999 CYCLE NOCACHE; INSERT 语句插入这个字段值为:

  • MySQL迁移KingbaseESV8R2的实现步骤

    目录 1. 使用Oracle中转 2. 使用KingbaseESV8R3中转 3. 其他问题 1.自增 2.uuid 4. 已发现的 SQL 问题 1. 使用Oracle中转 KingbaseESV8R2只支持从Oracle迁移,所以先MySQL迁移到Oracle. 迁移到Oracle问题:1.oracle对表名有最大30位限制2.invalid hex number,无效16进制3.表数据空,报cannot insert NULL into4.索引名太长 MySQL迁移Oracle问题就很多了

  • MySQL 4.1/5.0/5.1/5.5/5.6各版本的主要区别整理

    各版本的一些命令差异: show innodb status\G mysql-5.1 show engines innodb status\G mysql-5.5 关于grant授权 mysql-5.5 的 user@'%' 不包含localhost ----------------------------------------------------------------------- MySQL 4.1/5.0/5.1/5.5/5.6各版本的主要区别  1.4.1 增加了子查询的支持,字

  • Mysql占用过高CPU时的优化手段(必看)

    Mysql占用CPU过高的时候,该从哪些方面下手进行优化? 占用CPU过高,可以做如下考虑: 1)一般来讲,排除高并发的因素,还是要找到导致你CPU过高的哪几条在执行的SQL,show processlist语句,查找负荷最重的SQL语句,优化该SQL,比如适当建立某字段的索引: 2)打开慢查询日志,将那些执行时间过长且占用资源过多的SQL拿来进行explain分析,导致CPU过高,多数是GroupBy.OrderBy排序问题所导致,然后慢慢进行优化改进.比如优化insert语句.优化group

  • MYSQL替换时间(年月日)字段时分秒不变实例解析

    写法1: update sas_order_supply_month_pay set RECEIVE_TIME=REPLACE(RECEIVE_TIME,DATE_FORMAT(RECEIVE_TIME,'%Y-%m-%d'),(select PERIOD_END from sas_task_supply_month_pay_period where belong='1729' and CREATE_TIME like '%2017-07-12%')) where ORDER_CODE='PO2

  • ECshop 迁移到 PHP7版本时遇到的兼容性问题

    在 PHP7 上安装 ECShop V2.7.3时,报错! Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ECS has a deprecated constructor in /usr/local/nginx/html/ecshop/upload/includes/cls_ecshop.php on line 25 这个报错的原

随机推荐