MySQL root用户忘记密码解决方案(安全模式,修改密码的三种方式)

1.关闭正在运行的MySQL

2.启动MySQL的安全模式,命令如下:

mysqld --skip-grant-tables

or

mysqld-nd --skip-grant-tables

3.使用root用户[免密码]登陆MySQL

mysql -u root -p

输入密码时,直接回车

4.选择MySQL系统库

use mysql

5.查看当前系统用户root的密码

select user,host,password from user where user="root"

查看的password是经过加密的,若以后想要恢复当前密码可以先运行这条命令备份一下当前的密码

6.修改root用户的密码

update user set password=PASSWORD("your_password") where user="root"

这里是直接修改了root用户在所有登陆位置的密码,若你仅仅只想修改root在某一处的密码,可以在上一条命令中增加一个限定条件host=‘somewhere‘

比如,下面的命令修改了root用户在本机localhost的登陆密码

update user set password=PASSWORD("your_password") where user="root" and host="localhost"

上面的操作是直接对MySQL系统库mysql进行修改,安全性较低,一旦出现误操作,成本高,难恢复,并且仅限于对mysql库有UPDATE权限的用户,MySQL本身为我们提供了一种更加简便的操作方式,在此作一下简单的介绍

修改当前登陆用户的密码,使用SELECT CURRENT_USER();可查看当前登陆用户

SET PASSWORD = PASSWORD('cleartext password');

修改bob用户在%.example.org位置上的登陆密码,注意这里的host地址%.example.org是必须要存在的

SET PASSWORD FOR 'bob'@'%.example.org' = PASSWORD('cleartext password');

当然我们也可以通过GRANT的方式修改密码

GRANT USAGE ON *.* TO 'bob'@'%.example.org' IDENTIFIED BY 'cleartext password';

关于修改密码的详细内容还是请见官方文档(5.6)

http://dev.mysql.com/doc/refman/5.6/en/set-password.html

7.刷新一下系统的权限

flush privileges;

8.关闭MySQL的安全模式,重新启动即可

注:

在第2步,启动安全模式的时候,命令行可能会一直处于挂起状态,此时Ctrl+c也不能终止运行,这时候只要通过netstat -ao查看MySQL端口是否处于监听状态,如是即代表MySQL已经进入了安全模式,出现这种现象是主要因为MySQL不提倡安全模式长时间运行

使用mysql命令连接数据库时可能会出现如下错误:

ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)

网上关于此错误的描述有很多,我们知道MySQL的默认端口是3306,当以其他端口启动服务时,使用mysql命令又没有指定对应的端口,当然就无法连接Server啦

附加信息:

MySQL官方文档(5.5) http://dev.mysql.com/doc/refman/5.5/en/index.html

MySQL官方文档(5.6) http://dev.mysql.com/doc/refman/5.6/en/index.html

以此类推...

时间: 2024-10-12 19:14:50

MySQL root用户忘记密码解决方案(安全模式,修改密码的三种方式)的相关文章

centos7.4 修改主机名三种方式(临时及永久生效)

一.临时修改(重启后失效) 格式: hostname 主机名称 ##注:新开会话窗口生效,重启后失效 [[email protected] ~]# hostname YMYG 二.命令修改(推荐:新开会话窗口生效,重启后仍旧生效) 格式: hostnamectl set-hostname 主机名称 ##注:新开会话窗口生效,重启后仍旧生效 [[email protected] ~]# hostnamectl set-hostname wangzy 三.修改配置文件(只有重启后生效) #重启后生效

Windows下修改mysql root用户密码

忘记mysql的root密码是一件让人头疼的问题. 下面理一下Windows7下面重置root密码的方法. 1.打开一个命令行窗口:这儿必须注意,要使用管理员身份打开: 2.关闭mysql服务:net stop mysql 3.运行 mysqld --skip-grant-tables.该命令是让mysql启动的时候跳过授权表,这儿要注意的是网上很多地方都是 mysqld-nt,但新版本已经被mysqld取代了. 4.重开一个命令行窗口(用管理员身份打开), 运行命令: mysql -u roo

Linux/Centos 重置Mysql root用户密码

有时候你可能会忘记MySQL的root用户密码,下面教你们重置MySQL root用户密码 手动修改 1.停止MySQL服务 执行:/etc/init.d/mysql stop,你的机器上也不一定是/etc/init.d/mysql也可能是/etc/init.d/mysqld 反正就是停数据库,用kill杀进程号也可以ps –ef | grep mysql 然后kill -9 mysql 的进程号 2.跳过验证启动MySQL /usr/local/mysql/bin/mysqld_safe --

Linux系统root用户忘记密码解决办法

一.centos6 root用户忘记密码解决办法 1.grub未加密(知道grub密码)root密码找回办法: (1)重启系统,在系统等待时间按任意键进入如图一所示界面 图一 (2)在图一所示界面中按"e"键进入如图二所示界面 图二 (3)在图二所示的界面中选择第二项,并按"e"进入图三所示界面 图三 (4)在图三所示的界面中quite后面加参数single或者数字1,按回车回到图二所示的界面,选择第二项,按"b"进入系统,此时,进入系统不需要密

2、linux系统root用户忘记密码后的重置方式

1.重新启动linux之后到此界面按空格暂停,之后按E进入. 2.找到UTF-8,在后面空格后输入init=/bin/sh  然后CHRL+X启动. 3.进入到这个界面,输入mount -o remount,rw /   4.输入passwd..然后输入新密码.回车.重复输入一次密码,回车.完成 5.完成之后点击电源重启客户机. 6.重启过后输入root用户后,就可以用修改后的密码进行登录.

Ubuntu 忘记系统登录密码,如何修改密码

Ubuntu 忘记系统登录密码,如何修改密码. 1.重新启动,按ESC键进入Boot Menu,选择recovery mode(一般是第二个选项). 2.在#号提示符下用cat /etc/shadow,看看用户名. 3.输入passwd “用户名”(引号要有的哦). 4.输入新的密码. 5.重新启动,用新密码登录. PS:在修改密码时可能会提示修改失败,可能时只读到权限问题引起到,需要更改一下权限如下: mount -o remount, rw / 在执行第3步.

【整理】Linux下中文检索引擎coreseek4安装,以及PHP使用sphinx的三种方式(sphinxapi,sphinx的php扩展,SphinxSe作为mysql存储引擎)

一,软件准备 coreseek4.1 (包含coreseek测试版和mmseg最新版本,以及测试数据包[内置中文分词与搜索.单字切分.mysql数据源.python数据源.RT实时索引等测试配置]) Mysql源码包 (必须选择与你已安装mysql的版本一致) 为了避免安装中出现依赖包缺失,你需要打一句鸡血: yum install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel exp

C#连接mysql三种方式

第一种方式: 使用MySQLDriverCS.dll连接 MySQLDriverCS软件下载:http://sourceforge.net/projects/mysqldrivercs/?source=typ_redirect 安装完之后再引用中添加引用,找到安装目录,找到MySQLDriverCS.dll文件,然后添加using MySQLDriverCS.dll文件 参考网址:http://www.cnblogs.com/genli/articles/1956537.html C#连接mys

[PHP]PHP编程操作Mysql数据库的三种方式

当我开始去接触PHP的时候,真切的感受到其所具有的魅力,本着学习的态度和打破固有的语言和模式的想法,开始了PHP之旅,总的来说,走的还是比较顺利,在其中能够看到C,Java,Perl影子,学习曲线不大,但是做好产品仍然有着一条漫漫长路. 多余的话不说了,慢慢感受和领悟,本文主要讲述PHP操作数据库的三种扩展. 如下图是PHP访问数据库的三种扩展方式: 下面举出三种方式访问数据库并查询数据的实例代码: 1.mysql扩展 <?php //1:获取数据库连接 $connection = @ mysq