一、目标名称

  MySQL

二、目标版本

  mysql-5.6.24-win32.1432006610.zip

三、环境信息

  系统:windows 7 旗舰版

  防火墙:关闭  —— 注意:如果防火墙不关闭或不允许列外的话,远程登陆将会失败。

四、问题严重性和复杂度

  严重性:非常严重,直接导致数据库无法使用,与之相关的所有应用均受到影响。

  复杂度:非常复杂,涉及到数据库的安装问题,由其他安装应用程序引入,问题比较隐晦不容易发现。

五、问题描述

  (1) - 首先是依赖于该数据库的程序打开时,弹出错误对话框提示所数据库“某某@某某”无法访问。

  

  在MySQL数据库中出现这种无法访问的原因有很多,例如服务器未开通远程访问权限,用户密码错误等一系列原因。上图中‘root'@'localhost'显示我在本地登录,但事实上这是我已经把MySQL数据库维护好了之后故意在本地制造的一个无法访问的提示,因为要重现原来的我又得忙活半天了。

  (2) - 然后到Navicat中访问数据库同样出现无法访问的错误提示。初步判断时数据库服务没启动造成的。

  (3) - 远程登录到用windows 7旗舰版系统做的服务器,并用管理员权限运行命令窗口。

  (4) - 切换到mysql\bin目录下,用mysql -u root -p登录数据库,发现以前设置的密码不能用了,直接提示Access denied for user。然后我尝试不用密码直接登陆,我发现能够进入MySQL,并且通过select user()查询到自己当前的登陆用户是root@localhost。但是用show databases查询数据库时始终只有infromation_schema和test两个数据库,而目录下的mysql和其他应用数据库都没有显示出来。并且在设置mysqladmin -u root -p password后密码无法修改,悲催。

  (5) - 开始向通过直接卸载服务,然后重新安装服务来解决该问题,于是我使用net stop mysql停止服务,再使用mysqld remove卸载服务。我尝试重新安装服务,然后再启动mysql服务,发现仍然只有infromation_schema和test两个数据库。于是我开始认为是my-default.ini配置文件的问题,我又开始尝试寻找各种配置my.ini的方法,这个启动mysql服务的过程中出现最多的是1067。光这个问题就会把你整崩溃,因为你完全不知道错哪儿。这里有一个非常隐晦的问题,启动不了不一定是my.ini的问题,也可能是其他问题,例如其他的软件也安装并启动了mysql服务,而我们停止的和启动的是冲突的服务,但是一般我们无法发现,只看到它给我们反馈了1067的错误。我光解决这个问题就花了1天的时间,被弄得非常无语。

  (6) - 换了一台机器,在官网上下载了最新的MySQL 5.7.11 for Windows再我家用电脑上安装之后任然只有infromation_schema和test两个数据库。最后不得不使用原来的mysql-5.6.24-win32.1432006610.zip数据库版本进行解压,不用配置my.ini直接使用默认的my-default.ini安装启动mysql服务后登录可以看见mysql这个数据库,喜出望外。

  (7) - 在本地使用Navicat测试连接,更改数据库mysql使用update user set host='%' where user='root';  flush privilideges;更新外界访问权限,此时还有一点问题就是我的user中有一个user为空,host为localhost的用户,这条记录会伤害本地连接以及远程访问,因此我删掉之后就能正常访问了。

  (8) - 原来的数据库重新加入到data目录下,直接拷贝其他的,注意mysql、information_schema、test等原有的数据库就不要拷贝了,尤其是mysql。拷贝之后会发现我们拷贝过来的数据库能看见,但是数据库不能够访问,会出现inodb错误之类的东西。

  (9) - 将原来的数据库中data目录下除了跟本地用户相关的文件的其他文件都拷贝过来覆盖即可。

  

  (10)- 回到原来的服务器,使用Navicat登录到本地,发现能够登录无密码版本的,并且找到了zantao的数据库,于是找到问题原因是因为这个叫禅道的软件也启动了mysql服务,这个服务于我安装的服务冲突,而我在命令窗口登录时识别到的是另外一个,这种冲突很隐晦。mysql自身无法很好的检测。

  (11) - 停止服务,并重新配置我的数据库,OK了。

数据库MySQL多个数据库服务冲突的更多相关文章

  1. 数据库MySQL之 视图、触发器、存储过程、函数、事务、数据库锁、数据库备份、事件

    数据库MySQL之 视图.触发器.存储过程.函数.事务.数据库锁.数据库备份.事件 浏览目录 视图 触发器 存储过程 函数 事务 数据库锁 数据库备份 事件 一.视图 1.视图概念 视图是一个虚拟表, ...

  2. 阿里云数据库MySQL版快速上手!

    MySQL是全球最受欢迎的开源数据库,其在各Web应用中均有广泛部署.阿里云数据库MySQL版基于Alibaba的MySQL源码分支,经过双11高并发.大数据量的考验,拥有优良的性能和吞吐量.除此之外 ...

  3. 云应用开发之新浪SAE读写云端数据库MySQL

    本博文为前篇博文新浪云应用SAE日志查看的延续. 在读写云数据库MySQL之前,须要说明的是,在新浪云平台上使用数据库时.该平台默认会为每个应用单独新建一个数据库database实例.在该实例中再创建 ...

  4. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  5. MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限

    1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Pas ...

  6. Robot Framework-DatabaseLibrary数据库(MySql)

    Robot Framework-Mac版本安装 Robot Framework-Windows版本安装 Robot Framework-工具简介及入门使用 Robot Framework-Databa ...

  7. paip.导入数据英文音标到数据库mysql为空的问题之道解决原理

    paip.导入数据英文音标到数据库mysql为空的问题之道解决原理 #---原因:mysql 导入工具的bug #---解决:使用双引号不个音标括起来. 作者 老哇的爪子 Attilax 艾龙,  E ...

  8. paip.解决 数据库mysql增加列 字段很慢添加字段很慢

    paip.解决 数据库mysql增加列 字段很慢添加字段很慢 #环境如下: mysql5.6    数据仅仅3w alter table xxx add column yyy int default ...

  9. Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql、oracle...)间进行数据的传递

    http://niuzhenxin.iteye.com/blog/1706203   Sqoop是一款开源的工具,主要用于在HADOOP(Hive)与传统的数据库(mysql.postgresql.. ...

随机推荐

  1. 关于iOS9中的App Transport Security相关说明及适配(转)

    原文:http://my.oschina.net/vimfung/blog/494687 iOS9中新增App Transport Security(简称ATS)特性, 主要使到原来请求的时候用到的H ...

  2. 如何删除Oracle数据库

    1>点击开始找Oracle的目录,-->点击[Universal Installer],打开点击[卸载产品] 2>除了oracle_home1 不点外,其他的都勾选. 3>再点 ...

  3. 自学Xpath的几个例子

    Xpath可以对XML文件中的信息进行查找,并对XML文件树形结构进行遍历.详细语法请转:http://www.w3school.com.cn/xpath/index.asp 例子:利用在JavaSc ...

  4. BST的删除

    #include<iostream> #include<math.h> #include<stdio.h> #include<stdlib.h> #in ...

  5. flash Builder JSON使用实例

    flash Builder JSON 使用说明(转载houdinime) XML虽然强大但有人觉得xml不够简洁,编码和解码也有一定难度,于是21世纪初有人发明了JSON编码,相比xml内容少并且容易 ...

  6. mac os vim 乱码

    yum -y groupinstall chinese-support vim /etc/sysconfig/i18n LANG="zh_CN.UTF-8" LANGUAGE=&q ...

  7. C语言学习——C和Java语言不同点

    Java中有boolean数据类型,”真“为true,”假“为false.而且在if()括号里只能放boolean类型的值. C的基本数据类型和Java的基本一致,但C多了指针类型.指针是C语言的重点 ...

  8. Windows 7/Vista 开机自动登录

    “Win”+“R”打开命令窗口,输入"control userpasswords2"(不包括引号),或者 “rundll32 netplwiz.dll,UsersRunDll” 回 ...

  9. Android GridView 二维布局界面

    GridView用于在界面上按行.列分布的方式来显示多个组件. <LinearLayout xmlns:android="http://schemas.android.com/apk/ ...

  10. nodejs 文件查找中文,替换为英文

    帮以前同事解决一个需求,中文项目 翻译 英文项目~~~ 考虑到具体实现方面的问题,如果智能的话,肯定是要做中文的语法分析,不过感觉这个有难度. 所以最后的方案是遍历文件,将中文短语匹配出来,再进行人工 ...