docker安装MySQL5.7示例!!坑,ERROR 1045 (28000): Access denied for user

摘要:
处理mysql1045错误1.在/usr/local/mysql/conf中添加一个文件。d目录:mysql文件的内容是:[mysqld]skip-grant-tables2重新启动mysql:dockerstartmysql5.73进入docker:dockerexec-itmysql5.7bash4登录mysql:mysql-uroot-p5将root密码设置为空。注意,根密码是加密的,通过设置其他值很难找到对应的明文。使用mysql;selectuser,authentication_string,hostfromuser;//更新为空updateusersetauthentication_string='whereuser='root';冲洗特权;6退出MySQL并在步骤1中注释跳过授权表。然后重新启动mysql7以使用root并输入密码登录;8修改根密码:alteruser'root'@'localhost'IDENTIFIEDBY'rootroot';alteruser'root'@'%'IDENTIFIEDBY'root'冲洗特权修改了根密码。9额外的一步授权:GRANTALON TO'root'@'%'IDENTIFIEDBY'root'冲洗特权两个交替的8中的第二个报告错误。通常,9的授权更改为grantallon*。*火炬@“%”由授予的“根”标识;最后,一切都好了

docker  pull  mysql拉取镜像

启动mysql需要做端口映射 -p

其他几个高级操作:

docker安装MySQL5.7示例!!坑,ERROR 1045 (28000): Access denied for user第1张

Docker安装mysql5.7报错 ERROR 1045 (28000): Access denied for user

【tips】docker安装MySQL5.7ERROR 1045 (28000): Access denied for user解决办法

进入mysql报错:1045(28000), 原因:mysql5.7 首次安装后,需要修改root的默认密码才能使用。

为了解决这个问题,来来回回试了很多遍,这里就不说过程了,下面记录下目前看正确的处理步骤:

docker安装Mysql

1 docker拉取mysql版本:

docker pull mysql:5.7.23

2 创建挂载目录:

mkdir /usr/local/mysql

用于挂载mysql数据文件

mkdir /usr/local/mysql/data

用于挂载mysql配置文件

mkdir /usr/local/mysql/conf.d

3 启动容器

命令:

docker run --name mysql5.7 -p 3306:3306 -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=rootroot -d mysql:5.7.23

注意: -e MYSQL_ROOT_PASSWORD 这里==敲错了==,后面就是为了解决不知道root密码情况下怎么处理。

处理mysql 1045报错

1 在 /usr/local/mysql/conf.d目录下增加文件: my.cnf

文件内容为:

[mysqld]
skip-grant-tables

2 重启mysql:

docker restart mysql5.7

3进入docker的bash:

docker exec -it mysql5.7 bash

4登录mysql:

mysql -uroot -p

5设置root密码为空,注意root密码是加密的,设置其它值不好找到对应的明文。

use mysql;

select user,authentication_string,host from user;

//更新为空

update user set authentication_string='' where user='root';

flush privileges;

6 退出mysql,把第一步的skip-grant-tables注释。再重启mysql

7 使用 root用户,密码 回车键登录;

8 修改root密码:

alter user 'root'@'localhost' IDENTIFIED BY 'rootroot';

alter user 'root'@'%' IDENTIFIED BY 'rootroot';

flush privileges;

修改root密码完成。

9 可附加一步授权:

GRANT all ON . TO 'root'@'%' IDENTIFIED BY 'rootroot' ;

flush privileges;


【注意】

8的两个alter其中第二个alter报错,正常

9的授权改为grant all on *.* to root@'%' identified by  'rootroot'  with grant option;

docker安装MySQL5.7示例!!坑,ERROR 1045 (28000): Access denied for user第2张

 终于好了...

 

免责声明:文章转载自《docker安装MySQL5.7示例!!坑,ERROR 1045 (28000): Access denied for user》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇scan chain的原理和实现——5.UDTP安装gulp教程(整理)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql主从之半同步复制和lossless无损复制

一 MySQL 的三种复制方式 1.1 简介 asynchronous 异步复制 fully synchronous 全同步复制 Semisynchronous 半同步复制 从MySQL5.5 开始,MySQL 以插件的形式支持半同步复制。 1.2 异步复制(Asynchronous replication) MySQL 默认的复制是异步的,主库在执...

MySQL 连接查询

一.什么是连接查询 1.连接查询是一种非常常见的数据库操作,在两张(或者多张)表中进行匹配. 2.以mysql为例,支持Cross join(交叉连接), inner join(内连接), outer join(外连接),等其他连接.  二、数据准备(创建emp员工表和dept部门表并插入数据) SET NAMES utf8mb4; SET FOREIGN...

Mysql对用户的操作

1.创建用户语法:CREATE USER 用户名@地址 IDENTIFIED BY '密码'; 2.给用户授权语法:GRANT 权限1, … , 权限n ON 数据库.* TO 用户名 3.撤销授权语法: REVOKE权限1, … , 权限n ON 数据库.* FROM 用户名 4.查看用户权限语法:SHOW GRANTS FOR 用户名 5.删除用户语法...

laravel中migration 数据迁移

简介 数据库迁移就像是数据库的版本控制,可以让你的团队轻松修改并共享应用程序的数据库结构。迁移通常与 Laravel 的数据库结构生成器配合使用,让你轻松地构建数据库结构。如果你曾经试过让同事手动在数据库结构中添加字段,那么数据库迁移可以让你不再需要做这样的事情。 Laravel Schema facade 对所有 Laravel 支持的数据库系统提供了创...

MAC地址记录与重复检测系统

一、通信模块如WiFi、Zigbee都会有唯一的MAC地址,这些模块在出厂前需要一套系统来确保唯一性。 此套MAC地址记录与重复检测系统已经经过KK级的出货验证,难有漏网之鱼。 二、系统设计思路: 客户端程序读取模块MAC地址,然后去pass数据库中寻找是否已经存在,如果不存在,则将此MAC存到pass数据库中,显示PASS,如果已经存在,证明已经生产过了...

MySQL导入、导出、数据库定时备份

  本篇使用的MySQL版本是5.7.30,注意不同版本之间可能会有差异。   一、导出操作   1、查找mysqldump命令位置 which mysqldump   2、mysqldump导出示例   用户名和密码分别是root和123456;导出远程库,使用-h+IP和-port+端口,如下所示。后面的命令默认导出本地库。 /usr/bin/mysq...