提示:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'   由于使用mysql -u root 方式登录,实际上是登录到一个空用户(''@'localhost'),不是root用户

提示:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)   一般这个错误是由密码错误引起

方法一:

1.关闭mysql

service mysqld stop

2.屏蔽权限,重置密码的第一步就是跳过MySQL的密码认证过程,方法如下

>cd /etc/mysql
>sudo vim my.cnf
mysqld_safe --skip-grant-table

或者

skip-grant-tables

3.新开起一个终端输入

mysql -u root mysql
UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
FLUSH PRIVILEGES

FLUSH PRIVILEGES/记得要这句话,否则如果关闭先前的终端,又会出现原来的错误

方法二:
1.关闭mysql

service mysqld stop

2.屏蔽权限

skip-grant-tables

3.新开起一个终端输入

mysql -u root mysql
delete from user where USER='';
FLUSH PRIVILEGES

4.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!

MySQL允许远程访问的设置

1.注释bind-address = 127.0.0.1

>cd /etc/mysql
>sudo vim my.cnf

将bind-address = 127.0.0.1注释掉(即在行首加#),如下:

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
# bind-address = 127.0.0.1

除了注视掉这句话之外,还可以把后面的IP地址修改成允许连接的IP地址。但是,如果只是开发用的数据库,为了方便起见,还是推荐直接注释掉。

2.删除匿名用户

登录进数据库

切换到数据库mysql。SQL如下:

use mysql;

查询用户表命令

select  User,authentication_string,Host from user

如有,删除匿名用户。SQL如下:

delete from user where user='';
flush privileges

3.增加允许远程访问的用户或者允许现有用户的远程访问

接着上面,删除匿名用户后,给root授予在任意主机(%)访问任意数据库的所有权限。SQL语句如下

这里的123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '' 
flush privileges

4.重启数据库

sudo service mysql restart

MySQL启动,停止,重启方法

一、启动方式

1、使用 service 启动:service mysqld start

service mysqld start

2、使用 mysqld 脚本启动:

/etc/inint.d/mysqld start

3、使用 safe_mysqld 启动:

safe_mysqld&

二、停止

1、使用 service 启动:

service mysqld stop

2、使用 mysqld 脚本启动:

/etc/inint.d/mysqld stop

3、

mysqladmin shutdown

三、重启

1、使用 service 启动:

service mysqld restart

2、使用 mysqld 脚本启动:

/etc/inint.d/mysqld restart
												

对于出现拒绝访问root用户的解决方案的更多相关文章

  1. C# Process.Kill() 拒绝访问(Access Denied) 的解决方案

    需求:很多时候我们需要后台运行几个Console来不停的计算数据,那么部署到客户服务器后,如果出现突发异常,程序挂掉了,那...? 解决方案:封装了一个对后台运行程序不停监测的功能,如果发现程序有异常 ...

  2. MySQL数据库(13)----忘记root用户密码解决方案【转载】

    1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录 ...

  3. ASP.NET MVC 4.0中选择Windows 验证默认出错拒绝访问的原因和解决方案

    在VS 2012或者2013 中,根据模板创建一个ASP.NET MVC 4.0的应用程序,选择下面的模板 然后选择Intranet Application 不对源代码做任何修改,直接按下F5调试,会 ...

  4. JAVA编译中拒绝访问的问题及解决方案

    在java编译时出现,可以将C盘内的文件转移到其他盘,此问题可能是权限不足不能够读取C盘文件造成的. 文件名与类名要一致,包括大小写,也是要一致!

  5. 【转载】在MySQL登录时出现Access denied for user 'root'@'localhost' (using password: YES) 拒绝访问,并可修改MySQL密码

    在MySQL登录时出现Access denied for user 'root'@'localhost' (using password: YES) 拒绝访问,并可修改MySQL密码 2018年08月 ...

  6. 解决 Vmware 服务拒绝访问的问题

    背景 在服务页面想将 VMware NAT Service 设置为自动开启的,但是保存的时候显示拒绝访问,如下图 解决方案 想到在本机的火绒启动项管理里面将 VMware NAT Service 设置 ...

  7. ubuntu 下root用户无法访问声音设备的解决方案

    原因:root用户没有对pulsaudio的访问权限,而且pulsaudio默认是不能在root下自动启动解决办法: 一.修改自动启动:编辑 gedit /etc/default/pulseaudio ...

  8. CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\d29b5393\123c3a1c\App_Code.odl3w4o6.dll”--“拒绝访问。 ”

    IIS部署网站或者Webservice时,出现以下问题: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Tempor ...

  9. CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\root\921bbfc4\ca7cf42\App_Code.fu98jwep.dll”--“拒绝访问。 ”

    在本地开发环境没问题,但是发布到服务器出现:未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Fil ...

随机推荐

  1. 解决谷歌浏览器给输入框input自动填充密码问题

    这时候我们可能会在 input上 加上 autocompleted="off" 这个属性来阻止input被自动填充. <input type="text" ...

  2. Android图片优化指南

    图片作为内存消耗大户,一直是开发人员尝试优化的重点对象.Bitmap的内存从3.0以前的位于native,到后来改成jvm,再到8.0又改回到native.fresco花费很多精力在5.0系统之前把B ...

  3. cpp 面向对象初步探索

    需求 尝试定义一个complex(复数类) 简略实现 headers/complex.h #ifndef __COMPLEX__ #define __COMPLEX__ class complex { ...

  4. 用smtplib来发送邮件

    先安装 pip install smtplib 发送qq,163邮件,带有附件的邮件 1.qq邮件 # 用于发送邮件的模块import smtplib # QQ邮箱/163邮箱的邮件发送:py文件发送 ...

  5. [CSP-S模拟测试]:Cicada拿衣服(暴力+乱搞)

    题目传送门(内部题94) 输入格式 第一行两个整数$n,k$,代表衣服的数量和阈值. 接下来一行$n$个数,第$i$个数$a_i$表示每件衣服的愉悦值. 输出格式 输出一行$n$个数,第$i$个数为$ ...

  6. leetcode-mid-Linked list- 200. Number of Islands¶

    mycode  57.92% class Solution(object): def numIslands(self, grid): """ :type grid: Li ...

  7. Visual Studio Code - 插件

    Intellisense(代码提示.智能感应) Path Intellisense:路径别名(alias)代码提示 例如:在模块打包配置中配置@代替了src,可以使用下面的配置让@智能感应 " ...

  8. JWT原理和使用

    jwt JSON Web Tokens,是一种开发的行业标准RFC 7519,用于安全的表示双方之间的声明.目前,jwt广泛的用在系统的用户认证方面,特别是前后端分离项目. 1.jwt认证流程 在项目 ...

  9. [VBA]斐波那契数列

    Sub 斐波那契()Dim arrFor i = 3 To 100Cells(1, 1) = 0Cells(2, 1) = 1Cells(i, 1) = Cells(i - 1, 1) + Cells ...

  10. 阶段3 1.Mybatis_05.使用Mybatis完成CRUD_2 Mybatis的CRUD-保存操作

    增加的方法 修改映射配置 id是方法名 按照原来jdbc的写法 values里面应该是一堆问号,现在这里不能再去写问号了因为要取值 从我们要执行的方法传的参数里面去取值 所以参数的类型我们必须要告诉这 ...