如何修改mysql mysql忘记root密码码

博客访问: 15017
博文数量: 1
注册时间:
ITPUB论坛APP
ITPUB论坛APP
APP发帖 享双倍积分
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: MySQL
疏忽大意,长久荒废,忘记了MySQL的root密码
解决方法如下:
1、终端中结束当前正在运行的mysql进程。
# sudo /etc/init.d/mysql stop
2、用mysql安全模式运行并跳过权限验证。
# sudo /usr/bin/mysqld_safe --skip-grant-tables
3、ctrl+T重开一个终端以root身份登录mysql。
# mysql -u root
4、修改root用户口令。
Reading table information for completion of table and column
You can turn off this feature to get a quicker startup with
Database changed
mysql> update user set Password = PASSWORD('root') where
User ='root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3& Changed:
3& Warnings: 0
mysql> exit
注意:括号里的'root'就是新密码。
5、结束mysql安全模式,用正常模式运行mysql。
# sudo /etc/init.d/mysql restart
6、试试你新修改的口令登陆MySQL
# myslq -u root -p
输入密码 root
mysql> show grants for
'root'@'127.0.0.1';&
mysql> flush privileges;
刷新账户后,退出。
阅读(13413) | 评论(0) | 转发(0) |
上一篇:没有了
下一篇:没有了
相关热门文章
给主人留下些什么吧!~~
请登录后评论。新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
丰衣足食, 积分 512, 距离下一级还需 488 积分
论坛徽章:0
host列分别是localhost和127.0.0.1,我改了localhost的password列,127.0.0.1的仍为空。不知为何要两个root,安不安全?我在dos不用密码也能登录,用户名为ODBC@localhost,user表里没有,怎么回事,安全吗?
论坛徽章:0
MySQL用户名是什么样?
MySQL的用户名有两部分组成: 用户名@主机名
用户名:一般用字母组成。
主机名:可以是机器IP也可以机器名。
反应到user表中,用户名对应user,机器名对应于host,密码对应于password
更改密码:
set&&password for '用户名'@'主机名‘=password('yourpassword');
所以你见到的两个Root不能算是一个用户名的。
家境小康, 积分 1788, 距离下一级还需 212 积分
论坛徽章:0
在dos不用密码也能登录,用户名为ODBC@localhost,user表里没有,怎么回事,安全吗?
==========================================================
这个可能是以测试用户登录的.
两个,你删掉一个即可.
论坛徽章:0
原帖由 wildlily980 于
23:26 发表
在dos不用密码也能登录,用户名为ODBC@localhost,user表里没有,怎么回事,安全吗?
==========================================================
这个可能是以测试用户登录的.
两个,你删掉一个即可.
如果是linux应该是程序以root身份运行,然后那个127.0.0.1 没有密码。所以可以直接认证进去了。
如果是Windows了,都不知道是什么情况了。Windows不孰悉。
论坛徽章:9
刚刚测试了一下:
mysql.user里有两条记录,如下
User: root
Host: localhost
Password: XXXXXXX
Host:127.0.0.1
& mysql -uroot -hlocalhost -p
& mysql -uroot -h127.0.0.1 -p
都可以登陆,但是即使host指明为127.0.0.1也需要输入第一条记录中的密码才能登陆。
& mysql -uroot -h127.0.0.1 不能登录
因为mysql在验证用户时先对user表进行排序:
1. specified的host排在pattern的host前面。
2. 相同host的条目,specified的user排在anonymous的前面。
3. 其他按默认存储顺序。
排序结束后,从第一条开始匹配,如果匹配符合则忽略剩下所有。
即使第二条记录的密码为空,从理论上来说无论什么情况下都无法匹配到(mysql认为localhost=127.0.0.1,所以总是存储靠前的那条记录起作用)。
当然如果为了安全,可以把这条记录删除,或者为他设置密码,但并不影响root在localhost上的登录。
巨富豪门, 积分 27642, 距离下一级还需 12358 积分
论坛徽章:210
回复 #5 cenalulu 的帖子
原来是因为排序啊
我以前还以为mysql在127.0.0.1与localhost之间选择一个最安全的呢,,
大呼,MYSQL真TM安全,还晓得智能匹配更安全的
论坛徽章:0
根据我的网络知识判断,
localhost 不等于 127.0.0.1
只不过很多系统默认 localhost 的ip是127.0.0.1
论坛徽章:9
回复 #7 net_robber 的帖子
我的意思是,mysql对每一条权限记录都进行域名和ip的匹配,命中其一就算命中。
而一般localhost解析的地址就是127.0.0.1
之前说的不太严密。。。。
论坛徽章:8
手册上有关于登录验证的部分
写的非常好
建议楼主看看
家境小康, 积分 1186, 距离下一级还需 814 积分
论坛徽章:0
在unix里localhost使用的是socket连接,127.0.0.1使用的是tcp ip的连接方式,是不同的连接方式,所以会有2个root,windows下貌似没有什么区别,mysql本来就是在unix下用的,所以用户表的格式也是按unix的格式来做的。
北京盛拓优讯信息技术有限公司. 版权所有 京ICP备号 北京市公安局海淀分局网监中心备案编号:22
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处Mysql5.7忘记root密码及mysql5.7修改root密码的方法 - A5创业网
当前位置:&&&
Mysql5.7忘记root密码及mysql5.7修改root密码的方法
14:54&&来源:豆花饭烧土豆的博客&
【引自豆花饭烧土豆的博客】关闭正在运行的 MySQL :
[root@www.woai.it&~]#&service&mysql&stop&
[root@www.woai.it&~]#&mysqld_safe&--skip-grant-tables&&&
为了安全可以这样禁止远程连接:
[root@www.woai.it&~]#&mysqld_safe&--skip-grant-tables&--skip-networking&&&
使用mysql连接server:
[root@www.woai.it&~]#&mysql&-p&
更改密码:
mysql&&update&mysql.user&set&authentication_string=password('123qwe')&where&user='root'&and&Host&=&'localhost';&
*特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了
而是将加密后的用户密码存储于authentication_string字段
mysql&&flush&privileges;&
修改完毕。重启
[root@localhost&~]#&service&mysql&restart&
然后mysql就可以连接了
但此时操作似乎功能不完全,还要alter user&
mysql&&alter&user&'root'@'localhost'&identified&by&'123';&
这样也可以:
mysql&&set&password&for&'root'@'localhost'=password('123');&
重点给大家介绍下mysql 5.7 root密码修改
MySQL管理者密码设置或修改:
依据官方说明5.6以后版本,第一次启动时会在root目录下生产一个随机密码,文件名.mysql_secret。
[root@bright&~]#&cat&/root/.mysql_secret&
#&Password&set&for&user&'root@localhost'&at&&23:12:10&
:Jj+FTiqvyrF&
[root@bright&~]#&cd&/usr/local/mysql/bin/&
[root@bright&bin]#&./mysqladmin&-u&root&-h&localhost&password&'123456'&-p&
Enter password: #此行输入.mysql_secret里第二行内容
mysqladmin:&[Warning]&Using&a&password&on&the&command&line&interface&can&be&insecure.&
Warning:&Since&password&will&be&sent&to&server&in&plain&text,&use&ssl&connection&to&ensure&password&safety.&
官方的方式,笔者无论是否使用--skip-grant-tables启动mysql都测试失败,亲们可以测试:
shell&mysql&-uroot&-p'password'&#password即.mysql_secret里的密码&
mysql&SET&PASSWORD&=&PASSWORD('newpasswd');&
旧版本,安装后ROOT无密码,按如下操作:
shell&service&mysqld&stop&#停止mysql服务&
shell&mysqld_safe&--skip-grant-tables&&&#以不启用grant-tables模式启动mysql&
shell&mysql&-uroot&-p&#输入命令回车进入,出现输入密码提示直接回车。&
mysql&use&&
mysql&update&user&set&password=PASSWORD("123456")where&user="root";&#更改密码为&newpassord&
mysql&flush&privileges;&#更新权限&
mysql&quit&#退出&
shell&service&mysqld&stop&#停止mysql服务&
shell&mysqld_safe&--skip-grant-tables&&&#以不启用grant-tables模式启动mysql&
shell&mysql&-uroot&-p&#输入命令回车进入,出现输入密码提示直接回车。&
mysql&&&set&password&for&root@localhost&=&password('mysqlroot');&
shell&/path/mysqladmin&-u&UserName&-h&Host&password&'new_password'&-p&
参考:http://www.jb51.net/article/77858.htm
忘记mysql root用户密码的解决办法(skip-grant-tables)
skip-grant-tables
顾名思义,数据库启动的时候 跳跃权限表的限制,不用验证密码,直接登录。
这种情况只有在忘记root密码 不得已重启数据库的情况下使用的。现网环境慎用,需要重启数据库,并且安全性也比较难以保证。
1.修改配置参数
[mysqld] 下面加上:
skip-grant-tables
2.重启MySQL
使得参数生效:
service mysqld restart
3.注意事项
此时所有用户登录当前数据库都是免密码的,所以此时数据库的安全性是非常低的。
4.修改密码
具体的办法:
参考以上介绍
5.去掉参数
a.密码修改好了之后再将配置文件中 skip-grant-tables去掉
b.再次重启数据库。
责任编辑:yangyang
作者:佚名
延伸阅读:关键词:
变设龙 企业高质量图片智造平台
增值电信业务经营许可证:苏B2- 在线数据处理与交易许可证:苏B2-
编辑热线:6-2
A5创业网 徐州八方网络科技有限公司 版权所有
扫一扫关注最新创业资讯windows下修改mysql数据库&root密码
windows下修改mysql数据库 root密码
今天接到一任务,需要将网站迁移至客户的服务器上,这个站点的有好几个后台,数据库也是多个版本
有mssql和mysql&
刚开始并不知道有多个后台,迁移完后测试一切OK,想着就完事了。中午的时候客户告知另外一个后台打不开,查看后是数据库连接错误。想着可能是遗漏了什么,到服务器中查看了下配置信息才发现,还有个mysql的数据库,晕死!
客户服务器的mysql
root密码对方技术忘记了。。。这可难为我了。上网搜了下还真有破解的法子。在这里转发过来,提供给大家,方便大家以后遇到此类问题有个好的解决方法。
操作不走如下:
  1.在服务中关闭MySQL的服务,或用命令关闭。
c:\& net stop mysql
  2.打开MS-DOS窗口,cd到*\mysql\bin\目录下(路径请自己补齐)。
&& C:\& cd
C:\Program Files\MySQL\MySQL Server 5.1\bin\
  3.输入mysqld --skip-grant-tables回车,进入单用户。
(如果没有出现提示信息,那就证明你进对了,不要关闭此窗口。)
&& C:\Program Files\MySQL\MySQL
Server 5.1\bin& mysqld --skip-grant-tables
  4.然后再开一个MS-DOS窗口,同样cd到*\mysql\bin\目录下。
& C:\& cd C:\Program
Files\MySQL\MySQL Server 5.1\bin\
  5.输入mysql回车,如果成功,将出现MySQL提示符 &
& & C:\Program Files\MySQL\MySQL
Server 5.1\bin& mysql
  6.连接数据库:
&& mysql& use
  7.修改密码:update user set password=password("qweasd") where
user="root";
&& mysql& update
user set password=password("qweasd") where user="root";
  8.刷新权限(重要步骤)flush
&& mysql& flush
  9.退出& (退出的方法很多 有quit、exit、ctrl+c、\q 等等)
&& mysql& \q
10.mysql的所有进程
,然后重启mysql服务
c:\& net start mysql
  11.开mysql使用用户名root和刚才设置的新密码qweasd登陆。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。强制修改MySQL的root密码的六种方法_源码_站长之家
强制修改MySQL的root密码的六种方法
[摘要]MySQL 是一个多线程的,结构化查询语言(SQL)数据库服务器,MySQL 的执行性能非常高。本文介绍强制修改MySQL的root密码的六种方法。
  下面我们提供了6种不同的修改MySQL root用户的密码,与增加MySQL用户的方法。方法一  使用phpmyadmin,这是最简单的了,修改MySQL库的user表,不过别忘了使用PASSWORD函数。方法二  使用MySQLadmin,这是前面声明的一个特例。MySQLadmin -u root -p password mypasswd  输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。把命令里的root改为你的用户名,你就可以改你自己的密码了。当然如果你的MySQLadmin连接不上MySQL server,或者你没有办法执行MySQLadmin,那么这种方法就是无效的。而且MySQLadmin无法把密码清空。  下面的方法都在MySQL提示符下使用,且必须有MySQL的root权限:方法三MySQL& INSERT INTO MySQL.user (Host,User,Password)VALUES('%','jeffrey',PASSWORD('biscuit'));MySQL& FLUSH PRIVILEGES  确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。在《MySQL中文参考手册》里有这个例子,所以我也就写出来了。注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。方法四  和方法三一样,只是使用了REPLACE语句MySQL& REPLACE INTO MySQL.user (Host,User,Password)VALUES('%','jeffrey',PASSWORD('biscuit'));MySQL& FLUSH PRIVILEGES方法五  使用SET PASSWORD语句:MySQL& SET PASSWORD FOR jeffrey@&%& = PASSWORD('biscuit');  拟也必须使用PASSWORD()函数,但是不需要使用FLUSH PRIVILEGES。方法六  使用GRANT ... IDENTIFIED BY语句MySQL& GRANT USAGE ON *.* TO jeffrey@&%& IDENTIFIED BY 'biscuit';  这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。MySQL 忘记口令的解决办法  如果 MySQL 正在运行,首先杀之: killall -TERM MySQLd。启动 MySQL :bin/safe_MySQLd --skip-grant-tables &  就可以不需要密码就进入 MySQL 了。  然后就是:&use MySQL&update user set password=password(&new_pass&) where user=&root&;&  重新杀 MySQL ,用正常方法启动 MySQL 。 软件大小:38.75MB 软件类别:国外软件 |
软件语言:英文 运行环境:Win9X/2000/XP/2003/Vista/Win7 软件授权:免费版 更新时间: 10:07:25 相关链接:
最流行的Web Server Apache发布了一个重大升级版,Apache HTTP Server 2.4的一个重要目标是大幅改进性能。...
热门源码下载推荐
最受关注报导
编辑推荐排行}

我要回帖

更多关于 mysqladmin 修改密码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信