最近在做网站迁移的时候,遇到了一件很尴尬的事情,远程连接数据连不上了,一直报 错误号码1045 Access denied for user 'root'@xx.xxx.xxx.xx(using password:YES) 远程登录被拒绝
        尝试通过阿里云自带的远程连接登录,依然是拒绝访问,这下凉凉了,如果这个问题解决不掉,不光是网站迁移完成不了,之前存的数据也保存不下来了。难道只能趁着夜黑风高天里跑路?怎么可能~~
 
        度娘谷哥了一圈,解决办法也有而且都差不多(很多都是一字不差的复制),基本步骤是
        1:停止MySQL服务器(一般在/etc/init.d/mysql)
        2:设置MySQL跳过权限验证并启动
        3:更新远程登录权限并刷新
        4:重启服务器
 
        如果是正常配置的服务器,找到mysql并且停止它,是一件非常容易的事情,但是,作为一台经过了几次交接,基本上没有使用文档的服务器,那就很伤脑筋了。反正我找了很久都没有找到mysql装在了哪里,从哪里启动。
 
        注意:以下操作为非常规操作,且涉及到重启服务器,改配置等危险操作,如果不是自己的服务器或者服务器网站特重要的,不建议尝试,以免被项目经理打出屎...
 
        尝试使用网上给出的命令关闭MySQL服务器,关闭失败,只能强行kill掉进程,然后使用命令 mysqld_safe --skip-grant-tables &  没有成功,报找不到 mysqld_safe
        没有办法,只能想办法改配置文件了,在/etc文件夹下,找到my.cnf文件,对其进行修改,在[mysqld]下添加 skip_grant_tables 让MySQL在运行的时候可以跳过权限,直接登录。
        所以?找不到MySQL要怎么重启呢?幸亏这个服务器目前只挂了一个访问量很小的官网,利用服务器重启后MySQL也会自启的特性,我在后台直接重启了服务器。
        so?我成功了,服务器重启后,MySQL也启动了,直接输入命令 mysql 回车,绕过权限进入数据库成功。
        后面的操作就比较简单了,
        先使用命令 flush privileges; 刷新数据库系统权限
        然后使用命令 
            GRANT ALL PRIVILEGES ON *.* TO 'manage'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;
        新增一个manage用户用于远程访问。
        退出MySQL服务器后,将/etc/my.cnf文件中的 skip_grant_tables 注释掉,再次重启服务器
 
        一顿骚操作之后,再次尝试远程连接数据库,连接成功~~
 
        啊~今天又很坚强的活了下来~~
 
 
 

连接MySQL报错误代码 ERROR 1045时的解决方案的更多相关文章

  1. win10连接mysql提示:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

    win10中cmd连接mysql提示:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YE ...

  2. 升级到macOS 10.12 mysqlb报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    系统升级到macOS 10.12后启动mysql后,在终端输入mysql 报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' ...

  3. CentOS命令登录MySQL时,报错ERROR 1045 (28000):

    CentOS命令登录MySQL时,报错ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)错误解 ...

  4. mysql安装在centos7报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    原文链接:http://blog.csdn.net/kuluzs/article/details/51924086 [问题]:mysql版本:5.7.13 首次在centos下安装MySQL,客户端连 ...

  5. PHP连接MySQL报错:SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket 'MySQL' (2)

    如下所示,PHP连接MySQL报错: SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket 'MySQL' ...

  6. Navicat连接Mysql报错:Client does not support authentication protocol requested by server;

    Navicat连接Mysql报错:Client does not support authentication protocol requested by server: 刚安装Mysql,想用Nav ...

  7. MySQL报错ERROR 1558 (HY000): Column count of mysql.user is wrong.

    MySQL报错ERROR 1558 (HY000): Column count of mysql.user is wrong. 1.今天在使用MySQL创建数据库时出现如下报错: mysql> ...

  8. Asp.Net连接Mysql报错Out of sync with server

    Asp.Net连接Mysql报错Out of sync with server 原因:程序引用的MySql.Data.dll版本高于服务器版本 解决:下载一个低版本的MySql.Data.dll,项目 ...

  9. 解决MySQL报错ERROR 2002 (HY000)【转】

    今天在为新的业务线搭架数据库后,在启动的时候报错 root@qsbilldatahis-db01:/usr/local/mysql/bin# ./mysql ERROR 2002 (HY000): C ...

随机推荐

  1. sql 获取本周周一和周日

    版本1.0(获取周日存在问题,请勿使用,仅用于引以为戒) 存在问题,获取周日的时候,当当前时间正好是周日,会获取下一周的周日,而非本周周日. ,)),) ),, ,)),) 版本2.0 看到版本1.0 ...

  2. 【c# 学习笔记】封装

    封装 指的是把类内部的数据隐藏起来,不让对象实例直接对其操作.c#中提供了属性机制来对类内部的状态进行操作. 在c#中,封装可以通过Public.Private.Protected和Internal等 ...

  3. thinkphp5 验证器 validate 和 layer

    首先tp5的验证器使用特方便 设置规则即可通用 首先页面html(layer 配合) 毕竟是后端 尽量用一些成熟的前台框架  之前用boostrap $.ajax({ url:'/index/Regi ...

  4. 给引入页面的js和css资源加上版本号,防止浏览器缓存资源

    最近因为在做前端开发的相关工作,每次发布新版本以后,不到5分钟,测试童鞋一个接一个的抱怨说BUG根本就没有修改,这个时候你说的最多的话就是“清缓存!!清页面缓存!!你没有清缓存!!你清理了页面缓存就对 ...

  5. 控件setText与setValue赋值顺序先后区别

    1.text与value设置不同的值一定要先赋值 value后赋值text, 否则全为value值 2.若只setValue,则getValue 与 getText获取的值全为value值 $('#t ...

  6. 修改jira数据库配置

  7. hdoj3746(kmp算法的nex数组求最小循环节)

    题目链接:https://vjudge.net/problem/HDU-3746 题意:给定一个字符串,问最少在两端添加多少元素使得整个字符串是呈周期性的. 思路: 应用到kmp中nex数组的性质,数 ...

  8. os路径

    import os linux下 例如: 我现在在 /home/settings.py文件下 # 获取当前的绝对路径 os.path.abspath(__file__) # 获取的内容 /home/s ...

  9. WUSOJ 1293: Fibonacci数列(Java)

    题目:

  10. go 结构体2 文法

    结构体文法表示通过结构体字段的值作为列表来新分配一个结构体. 使用 Name: 语法可以仅列出部分字段.(字段名的顺序无关.) 特殊的前缀 & 返回一个指向结构体的指针. //分配的v1结构体 ...