澳门金莎娱乐手机版 数据库 root用户密码的问题,但无论如何都进不去mysql

root用户密码的问题,但无论如何都进不去mysql

自家的操作系统是ubuntu18.04,以下是自身的mysql版本:

windowslinux下安装mysql报1045等错误

曾经在windows 下安装mysql
没怎么现身过难点,而在linux下安装的时候现身了有的标题,后日在windows
安装的时候也不能自已了1045 错误,就个人阅历来看这些主题材料就是root顾客密码的主题材料,所以将一挥而就的法门总括如下:

上面十二分简便的不二法门用来重新复苏设置密码:

澳门金莎娱乐手机版 1

一、mysql登录报 1045 错误

mysqladmin: connect to server at ‘localhost’ failed
error: ‘Access denied for user ‘root’@’localhost’ (using password: YES)’

大家来看地方的那个荒诞正是 user 为root
host为localhost的密码有标题,所以大家将在看看
mysql数据库中user表中user为root,host为localhost的那个客户的密码。

消弭办法:破解mysql密码

1、 service mysqld stop

// 停止mysql服务

2、mysqld_safe –skip-grant-tables

//
在mysql的配置文件若是是linux(centos卡塔尔则在etc/my.cnf配置文件的mysqld_safe
下天加多skip-grant-tables,倘使在windows下则在设置目录下的my.ini
配置文件的mysqld 下增加 skip-grant-tables,
skip-grant-tables是跳过授权表,那样安顿之后保存
关闭,重新启航mysql服务

3、 mysql -uroot -p 回车

//
那样就踏向了,这里有多少个难点,也是本身遭受的三种情况,意气风发种是user表中有user为root的顾客,意气风发种是从未有过,假若有则举行如下管理:

(1)、use mysql;

// 使用mysql数据库

(2)、 delete from user where host=”localhost” and user=” “;

//
将host为localhost下的user为空的客商都删了,其实也能够把那边localhost改成
% 免得现在连接的时候总是不了,可是是后话在那该不应该都足以。

(3)、 update user set password=PASSWORD(“newpass”) where user=”root”;
// 假诺您询问一下您会意识
mysql中的密码是加密保存的,所以改正密码无法向平常的sql同样而要使用password(“新密码”)关键字来改革密码,新密码为password中的字符。

(4)、 flush tables;

//数据刷到磁盘

(5)、 flush privileges;

//更新权限

(6)、quit

//退出

(7)、将计划文件中 skip-grant-tables 注释/删掉 保存

(8)、service mysqld restart

// 再一次启航服务 mysql -uroot -p新密码回车 ,那样应该能够了

1、编辑MySQL配置文件my.cnf

设置到位后,登陆mysql的时候就现身了如下错误:

二、 接着下边3、mysql -uroot -p 回车 步向之后use表中非常少,即开立root顾客做如下管理:

第风华正茂种情景,正是user中有root客户不过连接不上是在windows下境遇的,而user中如何都未曾是在linux(centos)
下遭受的,具体管理如下:

在linux下安装了mysql之后现身错误,刚早前以为就是率先种这种状态,网络海高校多也都是那类随笔于是就根据那篇小说举办了改变:linux下mysql
初次登入校勘密码
校订未来应该准确,但再一次启航服务root登陆依旧不行,上边包车型地铁便是现身的主题材料和消灭进度:

1、查询看有未有user 为root的客商,或那说user中有未有客户。

mysqld_safe–skip-grant-tables&mysql-uroot mysql
mysql> select * from user;
Empty set (0.00 sec)
mysql> select USER();
+——–+
| USER()|
+——–+
| [email protected] |
+——–+
1 row in set (0.00 sec)

结果是未曾root顾客,user表里面是空的,还是率先次境遇这种主题材料的。

2、插入顾客音信到 user表
由于 mysqld_safe
–skip-grant-tables里面是不能用grant的,于是想到了手动insert插入root客户:

**为了大家有利这里提供部分验证:第二个值是host,第叁个为user这两项是必填项,password(“my_password”)这里举行密码的安装,MY_PASSWO昂CoraD
正是新设的密码 ,而’Y’有贰十五个,之后有1个enum和3个blob
可感觉空,也便是此处的4个空字符,int类型有4个,私下认可值为0

INSERTINTO user VALUES(‘%’,’root’,password(‘MY_PASSWORD’),’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,”,”,”,”,0,0,0,0)

此地要注重的是第1个字段密码处要用password(‘密码’),因为mysql中密码是要经过编码的,不是一贯字符串保存的。

3、接着在杀死全体mysql进程,之后不荒谬重启mysql,就可以用root用户登入

到日前个人就遇上的标题总的就那二种,希望对你有用!!

曾在windows
下安装mysql
没怎么冒出过难点,而在linux下安装的时候现身了一些标题,昨日在windows
安装的时…

  vi /etc/my.cnf
#编写文件,找到[mysqld],在底下增添意气风发行skip-grant-tables [mysqld]
skip-grant-tables :wq! #保留退出 shutdown -r now #重启系统

澳门金莎娱乐手机版 2

2、进入MySQL控制台

因为安装的进度中没让设置密码,大概密码为空,但不管怎样都进不去mysql。

  mysql -uroot -p #直白按回车,那个时候不须要输入root密码。

 

3、修改root密码

那便是说该如何是好吗,接下去就将那些清除办法本身总括记录一下。

  update mysql.user set password=password(‘123456’) where User=”root”
and Host=”localhost”; flush privileges; #刷新系统授权表

澳门金莎娱乐手机版,step1:在ubuntu的terminal(也即终端卡塔尔国上输入sudo vim
/etc/mysql/mysql.conf.d/mysqld.cnf,步向到那个布局文件,然后在此个布局文件中的[mysqld]这一块中投入skip-grant-tables那句话。

4、取消/etc/my.cnf中的skip-grant-tables

 1 [mysqld]
 2 #
 3 # * Basic Settings
 4 #
 5 user              = mysql
 6 pid-file          = /var/run/mysqld/mysqld.pid
 7 socket           = /var/run/mysqld/mysqld.sock
 8 port              = 3306
 9 basedir          = /usr
10 datadir          = /var/lib/mysql
11 tmpdir          = /tmp
12 lc-messages-dir   = /usr/share/mysql
13 skip-external-locking
14 character-set-server=utf8
15 collation-server=utf8_general_ci
16 skip-grant-tables

  vi /etc/my.cnf 编辑文件,找到[mysqld],删除skip-grant-tables这一行
:wq! #保存退出

效用正是让您能够毫无密码登陆进去mysql。

5、重启mysql

保存:wq,退出。输入:service mysql restart,重新起动mysql。

  service mysqld restart
#重启mysql,这时候mysql的root密码已经改良为123456

 

6、进入mysql控制台

step2:在极限上输入mysql -uroot
-p,遇见输入密码的晋升平素回车就可以,步向mysql后,分别试行上边三句话:

  mysql -uroot -p #进入mysql控制台

1 use mysql;   然后敲回车
2 update user set authentication_string=password("你的密码") where user="root"  然后敲回车
3 flush privileges  然后敲回车

  密码 #输入密码

结果如下图:

OK。就那样轻松。

澳门金莎娱乐手机版 3

然后输入quit,退出mysql。

 

step3:重新步向到mysqld.cnf文件中去把刚领头加的skip-grant-tables那条语句给注释掉。

 1 [mysqld]
 2 #
 3 # * Basic Settings
 4 #
 5 user              = mysql
 6 pid-file          = /var/run/mysqld/mysqld.pid
 7 socket           = /var/run/mysqld/mysqld.sock
 8 port              = 3306
 9 basedir          = /usr
10 datadir          = /var/lib/mysql
11 tmpdir          = /tmp
12 lc-messages-dir   = /usr/share/mysql
13 skip-external-locking
14 character-set-server=utf8
15 collation-server=utf8_general_ci
16 # skip-grant-tables

再回来终端输入mysql -uroot -p,应该就能够进来数据库了。

 

step4:假使那时候要么报出错误,那么就需求重返step3中,把注释掉的那条语句再次生效(正是去除#标识卡塔尔,重新踏向mysql中,先选拔贰个数据库(use
mysql卡塔 尔(阿拉伯语:قطر‎,然后输入select user,plugin from user,看下图:

澳门金莎娱乐手机版 4

从图中能够看看在举行了select user,plugin from
user后,错误原因是因为plugin
root的字段是auth_socket,那我们改掉它为下边包车型大巴mysql_native_password就行了。输入:

1 update user set authentication_string=password("ln122920"),plugin='mysql_native_password' where user='root'

接下来回车履行以下,再输入select user,plugin from
user;回车,大家能来看root客商的字段改成功了。

澳门金莎娱乐手机版 5

 

最终quit退出。重回实施step3。

那么那几个难点就全盘缓慢解决了。

参照链接:

 

标签:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图