一 .当在windows下使用mysql数据库时,出现无法登录的现象,需要修改mysql数据库的roo密码时,我们可以使用一下两种方法。
1.
(1)关闭mysql服务。然后在bin目录下使用cmd运行命令mysqld.exe --skip-grant-tables;
(2)使用新的cmd命令,打开mysql.exe 免密码登录。
(3)使用命令use mysql,切换到MySQL数据库
    update user set password=password('123456') where user='root';   
    设置密码为123456
(4)flush privileges;  刷新权限
(5)exit  退出
2.找到my.ini文件,记事本打开,在mysqld下面添加skip-grant-tables,然后重启mysql服务,在使用mysql.exe免密码登录。其他步骤如上。
 
flush privileges 
flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL 用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐号的设置后,怕重启后无法再 登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。
 
二.关闭或者重启mysql服务的方法有两种:
1.右击我的电脑(计算机),点击管理,找到服务和应用程序,打开,服务,找到mysql服务,右键,有关闭,启动和重启。
2.使用net start 命令,打开cmd,使用命令:net start mysql  打开服务,使用命令:net stop mysql  关闭服务。
 
当使用net start mysql或者net stop mysql命令时出现:

显示服务名无效

有以下两种解决方法:
使用以下方法时,需要切换到管理员身份!检测当前是否为Administrator身份,若不是,以下步骤:
开始->关机边上小三角->切换用户,选择administrator,若没有administrator用户。右击 我的电脑(计算机)点击管理,选择本地用户和组,找到Administrator,双击,找到一下界面:
将账户已禁用前面的勾去掉。应用,然后重复,开始->关机边上小三角->切换用户,切换成Administrator用户。进行以下操作。(建议方案二)
 
方案一:cd到mysql 目录下 输入命令 mysqld –initialize,初始化后mysql才有data文件夹。
方案二:打开cmd,输入mysqld.exe -install   
                Service successfully installed.
 
–initialize会重置root密码,并生成一个随机的临时密码,下次登录需要用这个密码。
按照文档说,这个临时密码会显示在cmd窗口,但并没有。原因在于当初初始化时应该用 –console选项来输出,在没有输出的情况下,这个密码会被记录到log中。于是开始看log存在哪里。发现 mysql的log文件是二进制的,而且有很多log文件。
最终解决办法:
新建一个txt文件,里面写上修改密码的SQL语句。
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘MyNewPass’;
然后启动mysql服务器
mysqld –init-file=path:\initfileNamealerty
执行后,即可修改root密码。 
 
三.mysql8.0出现无法登录问题,使用--skip-grant-tables时,报错且无法使用。
我使用的方式有下面两种:
1.
(1)新建一个txt文件,里面写上修改密码的SQL语句。
        ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘MyNewPass’;
(2)启动mysql服务器
        mysqld –init-file=path:\initfileNamealerty
        执行后,即可修改root密码。 
2. 
(1)停止MySQL服务
   cmd命令:net stop mysql
(2)打开my.ini文件
    加入:ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678'; 引号里面的的信息为账号和密码保存;
(3)进入MySQL安装的bin目录
   执行:mysqld --defaults-file="路径\my.ini"  
(4)等待执行过后重新打开my.ini 去掉刚才添加的内容保存
(5)重启MySQL
    net start mysql
    使用新密码 12345678 登录即可
 
 
 
 
 

mysql数据库出现无法登录(ERROR 1045 ),预防和解决及系列问题解决方法。的更多相关文章

  1. CentOS命令登录MySQL时,报错ERROR 1045 (28000):

    CentOS命令登录MySQL时,报错ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)错误解 ...

  2. centos环境下登录mysql报 ERROR 1045 (28000)怎么解决

    centos环境下登录mysql报 ERROR 1045 (28000)怎么解决 新入手一台虚拟机,Centos7系列的操作系统,安装mysql后,执行连接出现了Mysql ERROR 1045 (2 ...

  3. mysql学习笔记1---mysql ERROR 1045 (28000): 错误解决办法

    mysql ERROR 1045 (28000): 错误解决办法 在启动mysql服务后,登陆mysql的窗口的时候,执行mysql命令,结果报错,没法登陆.   (在安装mysql和配置的时候,我是 ...

  4. MySQL数据库插入数据出现 ERROR 1526 (HY000): Table has no partition for value xxx

    MySQL数据库插入数据出现ERROR 1526 (HY000): Table has no partition for value xxx工作的时候发现无法插入数据,报错:ERROR 1526 (H ...

  5. MySQL 执行SQL脚本 报ERROR 1231 (42000)的解决办法【转】

    今天在source mysqldump 备份文件时,发现导入的过程中报如下的错误: ERROR 1231 (42000): Variable 'time_zone' can't be set to t ...

  6. mysql登录时,ERROR 1045 (28000): 错误解决办法

    错误问题的描述: ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO) ERROR 10 ...

  7. 解决MySQL登录ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor)问题

    问题描述 今天在MAC上安装完MySQL后,MYSQL默认给分配了一个默认密码,但当自己在终端上使用默认密码登录的时候,总会提示一个授权失败的错误:Access denied for user ‘ro ...

  8. 在linux系统中登录mysql时出现Enter password: ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)的解决办法

    在一次使用mysql数据库是出现了这种错误,于是乎去百度看了很多博文踩了很多坑,最终解决了问题,分享给大家. 转载与:https://blog.csdn.net/css33/article/detai ...

  9. mysql ERROR 1045 (28000): 错误解决办法

    ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO) ERROR 1045 (28000 ...

随机推荐

  1. 移动端vue2.5去哪儿项目-常见问题整理

    一.项目中遇到的问题.难点及解决方式 1. 移动端开发中的1px边框问题,由于在不同设备屏幕上,可能会使得1px实际在移动端显示不是1px,怎么解决? 2. 移动端click点击事件,会延迟300ms ...

  2. 经典数据结构与算法在经典软件(linux kernel)中的应用

    参考文章:Core Alorgithms deployed linux中的priority search tree数据结构研究 虚拟内存: 1.红黑树,管理与进程关联的vm_area_struct实例 ...

  3. java web编程 servlet

    先从请求的信息里面获取协议,版本协议如果是1.1结尾的就报错,也就是我们常见的405报错: 405是协议请求方式错误,所以要重写doget或者dopost方法,直接调用父类的get和post方法是会报 ...

  4. django learn step

    django开发: 1 安装python环境 官网下载后安装 或者安装anacondaconda env list anaconda相关操作: 查看环境 conda env list 创建环境 con ...

  5. Nginx 配置 HTTPS(多域名)

    平常开发要求比较低, 依然在用 HTTP, 但到了微信小程序就不行了, 腾讯和苹果都对 API 提出了 HTTPS 的要求. 尤其是苹果, 不仅要求 HTTPS, 还要求 TLS 协议版本要在 1.2 ...

  6. 【HICP Gauss】数据库 数据库高级语法(数据类型函数)-3

    SQL高级语法:整型:   integer 2(-31) ~2(31)-1 4字节 intger unsigned 2(0)~2(32)-1 4字节 bigint 2(-63)~2(63)-1 8字节 ...

  7. python的time模块和datetime模块

    1. 将当前时间转成字符串 strftime 方法,并输出 import datetime # 获取当前时间 datetime.datetime.now() print(datetime.dateti ...

  8. 【转】Guava cache使用总结

    缓存分为本地缓存和远端缓存.常见的远端缓存有Redis,MongoDB:本地缓存一般使用map的方式保存在本地内存中.一般我们在业务中操作缓存,都会操作缓存和数据源两部分.如:put数据时,先插入DB ...

  9. SQL进阶系列之0窗口函数

    窗口函数 What's 窗口函数? 窗口函数也称为OLAP(OnLine Analytical Processing)函数,目前MySQL还不支持. 窗口函数的语法 <窗口函数> OVER ...

  10. OpenStack是什么,OpenStack详解

    1. OpenStack是什么 OpenStack官方的解释很官方,而且从不同角度,也有不同的理解,OpenStack可以理解为一个云操作系统 OpenStack旗下包含了一组由社区维护的开源项目,他 ...