mysql 忘记root密码 通用办法

一,装了二个不同版本的mysql,进入数据库要密码

今天又装了个新的mysql,因为以前的那个mysql比较老了,不支持mysql的分区功能,我又不想把老的删除掉,里面有好多,我实践过的东西,不舍得。我的电脑里面有二个不同版本的mysql,本想让这二个不同版本的mysql同时跑起来,没成功。我通过修改/share/mysql/mysql.server中的配置,让二个不同版本的mysql都能独立跑起来

vi /usr/local/mysql/share/mysql/mysql.server

  1. then   
  2.  print_defaults="$bindir/my_print_defaults"  
  3. elif test -x $bindir/mysql_print_defaults   
  4. then   
  5.  print_defaults="$bindir/mysql_print_defaults"  
  6. else  
  7.  # Try to find basedir in /etc/my.cnf   
  8.  conf=/usr/local/mysql/my.cnf   //读取不同的mysql配置在这儿改  
  9.  print_defaults=   
  10.  if test -r $conf  
  11.  then   
  12.  subpat='^[^=]*basedir[^=]*=\(.*\)$'  
then
 print_defaults="$bindir/my_print_defaults"
elif test -x $bindir/mysql_print_defaults
then
 print_defaults="$bindir/mysql_print_defaults"
else
 # Try to find basedir in /etc/my.cnf
 conf=/usr/local/mysql/my.cnf   //读取不同的mysql配置在这儿改
 print_defaults=
 if test -r $conf
 then
 subpat='^[^=]*basedir[^=]*=\(.*\)$'

在这里面修改调用mysql的配置文件,差不多在218行左右,如果你找不到mysql下面的share目录的话。你可以用这个命令查一下

[root@BlackGhost mysql]# whereis mysql
mysql: /usr/bin/mysql /etc/mysql /usr/lib/mysql /usr/include/mysql /usr/local/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

从这儿我们就能发现share的目录了。

mysqld_safe --user=root 或者/usr/local/mysql/bin/mysqld_safe --user=root 启动后

mysql -u root

[root@BlackGhost zhangy]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

root密码忘记了

二,解决办法

将启动mysql相关的进程全部停掉

  1. ps -e|grep mysql |xargs killall   
  2. mysqld_safe --user=root --skip-grant-tables   
  3. mysql -u root   
  4. use mysql   
  5. update user set password=password("new_pass") where user="root";   
  6. flush privileges;  
ps -e|grep mysql |xargs killall
mysqld_safe --user=root --skip-grant-tables
mysql -u root
use mysql
update user set password=password("new_pass") where user="root";
flush privileges;

forward from http://blog.51yip.com/mysql/927.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值