Cannot Connect to Database Server

缘由

由于不同的项目中使用的数据库用户名与密码出现了不一致的情况,在其中之前较早一个项目执行过程中出现“The user specified as a definer ('root'@'localhost') does not exist”的错误提示。经过网络一番搜索,原因是root用户不存在,故自己将用户名改回到之前的用户名,结果出现连接不到数据库的情况,如下图所示:

原因

1.可能数据库服务没有启动

2.可能指定的数据库连接用户名或密码不正确

3.可能数据库连接语句写得不正确

4.可能数据库中没有指定的数据库存在

5.可能没引sql包或没有驱动程序

解决方法

Mysqlbin目录: C:\Program Files\MySQL\MySQL Server 5.7\bin

mysql -u root -p

删除原来的数据库实例后,创建新的实例,发现还是无法连接数据库,如下所示:

还是搞不定,明天继续,还是对mysql认知度太低!...........

将错误原因逐一排除,关闭重启mysql服务,发现还是无法登录,自己也就纳了闷了。

将mysql服务关闭后,可以进入workbench,但是还是无法连接mysql,这个是必须的。根据下图可获知mysql配置文件my.ini位置:

网上居然有人建议重新安装,忍不住要爆粗口了!你妹的!这是解决问题吗?不到万不得已的时候,谁会选择重装这条道路呢!

Can't connect to MySQL server on '127.0.0.1' (10061)

检查密码对否

如何知道密码对否?

密码错误的话会提示密码不对

查看一下你的hosts的文件

Hosts文件位置:C:\Windows\System32\drivers\etc

难道是端口的问题?于是用telnet 127.0.0.1 3308测试端口,结果它竟然提示:

my.ini中确实用的是3308端口,用netstat -an查看,3308处于如下TIME_WAIT超时状态:

那到底是什么原因呢?

在项目中测试发现也是提示“Host 'localhost' is not allowed to connect to this MySQL server”!要崩溃了。

启动mysql服务,出现下图错误:

重启计算机解决问题。

还是无法连接到数据库!

不要逼我,否则,我真的要重装数据库了!

尝试无果后,重装!

卸载过程中由于没卸载干净,导致安装时又出现了一系列的问题。悲剧!

Mysql卸载教程:点击查看

Mysql安装教程:

http://database.51cto.com/art/201304/387439.htm

第二天........

继续卸载、安装,我就不信弄不好它!

为防止重装系统后重装数据库,将其安装在C盘之外的其它目录中。

安装过程中出现了如下错误:

网络搜寻各种方法,还是未能解决问题。

再次转换思路,换个版本试试,其中尝试了5.7.10.但其是zip格式,解压后还需配置一系列的文件,尝试无果后,使用了低版本的5.5.47,msi格式,这是傻瓜式安装方式还是比较方便的。第一次安装后,自己曾试图将之前的数据库恢复,无果而终,并且导致无法更改用户名,又是一顿狂卸载,安装,第二次之后,用户名可以正常更改。经测试,一切正常!

折磨自己将近3天的问题终于以这样的方式结束了。

感触

数据库要及时备份,否则后果不堪设想!

mysql进阶(十七)Cannot Connect to Database Server的更多相关文章

  1. Cannot Connect to Database Server

    好久没登数据库了,今天登陆时忽然要输入密码,然后一登结果就报了下图的错. 之前也发生过这种情况,但是重启服务就好了,这次重启后依然不行. 后来密码用root居然就登进去了,可是真不记得有改过密码 不知 ...

  2. Unable to connect to database server to retrieve database list; Arcgis 连接不上postsql库;

    在C:\Program Files (x86)\ArcGIS\Desktop10.2\bin 目录下添加 pg依赖的插件 插件下载地址:

  3. 连接Mysql提示Can’t connect to local MySQL server through socket的解决方法

    mysql,mysqldump,Mysqladmin,php连接mysql服务常会提示下面错误: ERROR 2002 (HY000): Can't connect to local MySQL se ...

  4. Mac下安装Mysql出现 Can’t connect to local MySQL server through socket '/tmp/mysql.sock'

    在Mac下安装mysql出现 Can't connect to local MySQL server through socket '/tmp/mysql.sock' 错误,解决如下: $ unset ...

  5. mysql进阶(二十七)数据库索引原理

    mysql进阶(二十七)数据库索引原理 前言   本文主要是阐述MySQL索引机制,主要是说明存储引擎Innodb.   第一部分主要从数据结构及算法理论层面讨论MySQL数据库索引的数理基础.    ...

  6. MySQL 8.0版本连接报错:Could not create connection to database server.

    准备搭建一个Spring Boot 组合mybatis的项目,数据库采用的是MySQL 8.0.11按照以往的配置,使用插件mybatis-generator-maven-plugin生成代码时,一直 ...

  7. 如何解决远程连接mysql出现Can’t connect to MySQL server on (111 “Connection refused”)的问题

    如何解决远程连接mysql出现Can’t connect to MySQL server on (111 “Connection refused”)的问题 开放Mysql的远程连接 在服务器上登录my ...

  8. 【转】pam_mysql - MySQL error (Can't connect to local MySQL server through socket

    转自:http://350201.blog.51cto.com/340201/1034672 参照 http://wjw7702.blog.51cto.com/5210820/936244博 主做的p ...

  9. 【转】Linux mysql停止失败的解决办法 Stopping MySQL database server mysqld [fail]

    root@ubuntu:/# /etc/init.d/mysql stop * Stopping MySQL database server mysqld [fail] root@ubuntu:/# ...

随机推荐

  1. strut2接收参数的三种方式

    strut2接收参数有三种方式(普通属性\领域对象\模型驱动),分别对三种进行一个总结: 一.普通属性 Jsp代码 <body> <h1>普通属性</h1> < ...

  2. Hibernate设置时间戳的默认值和更新时间的自动更新

    Generated and default property values 生成的和默认的属性值 The database sometimes generates a property value, ...

  3. TCP发送源码学习(3)--tcp_transmit_skb

    一.tcp_transmit_skb static int tcp_transmit_skb(struct sock *sk, struct sk_buff *skb, int clone_it, g ...

  4. Android开发学习之路--基于vitamio的视频播放器(二)

      终于把该忙的事情都忙得差不多了,接下来又可以开始good good study,day day up了.在Android开发学习之路–基于vitamio的视频播放器(一)中,主要讲了播放器的界面的 ...

  5. 使用maven执行单元测试总结

    maven本身没有单元测试框架,但是maven的default生命周期的test阶段绑定了maven-surefire-plugin插件,该插件可以调用Junit3.Junit4.TestNG等Jav ...

  6. Win7下安装linux虚拟机

    关于如何在Win7下搭建linux学习环境,特在此分享下. 一.工具 1.VMware-workstation-full-9.0.0-812388.exe       下载地址:http://pan. ...

  7. FFmpeg的HEVC解码器源代码简单分析:解析器(Parser)部分

    ===================================================== HEVC源代码分析文章列表: [解码 -libavcodec HEVC 解码器] FFmpe ...

  8. UNIX网络编程——ioctl 函数的用法详解

    1.介绍 Linux网络程序与内核交互的方法是通过ioctl来实现的,ioctl与网络协议栈进行交互,可得到网络接口的信息,网卡设备的映射属性和配置网络接口.并且还能够查看,修改,删除ARP高速缓存的 ...

  9. 指令汇B新闻客户端开发(六) 浅谈屏幕适配解决方案

    屏幕适配的问题,我相信很多大牛的经验远比我丰富,在此就简单的分享一下我所做的的屏幕适配方案,当然我说的是安卓方面的啦,嘿嘿,屏幕适配我们一般用1280*720的屏幕作为我们的主流开发屏,当然现在And ...

  10. 关于LT分发系统的设计构想

    git地址 https://github.com/cxyxd/LtDistribution 背景 对tomcat做集群,在多机多tomcat的情况下,如果要更新代码,只能手动的将代码复制,粘贴,然后下 ...