欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

win7系统安装2个mysql版本后连接不上数据库的问题如何解决?

程序员文章站 2022-05-16 16:17:23
解决方案: 1.开始-->cmd-->netstopmysql(停用mysql服务没启动的可以省略) 2.找到安装路径mysqlserver5.1下的my.ini 3.打开my.ini找...

解决方案:

1.开始-->cmd-->netstopmysql(停用mysql服务没启动的可以省略)

2.找到安装路径mysqlserver5.1下的my.ini

3.打开my.ini找到[mysqld]然后在下面加上

这句:skip_grant_tables(意思好像是启动mysql服务的时候跳过权限表认证)

4.然后就启动修改密码了

开始-->cmd-->netstartmysql(启动mysql服务)--->mysql回车(如果成功,将出现mysql提示符)

5.输入usemysql;(连接权限数据库)。

6.改密码:updateusersetpassword=password("123")whereuser="root";(别忘了最后加分号)。

7.刷新权限(必须步骤):flushprivileges; 。

8.退出quit。

9.将第3步的my.ini里的skip_grant_tables去掉(启动mysql服务的时候不能让他跳过权限表认证)

10.重启mysql,再进入,使用用户名root和刚才设置的新密码123就可以登录了。

查看日志的方法:

这几天安装mysql5.7版本的时候,出现了服务无法启动的问题,尝试了各种修改配置文件my.ini的方法都不行,查看到错误日志,一般错误日志在c:\programfiles\mysql\mysqlserver5.7\data\xxx.err,其中看到错误提示为:

2017-05-03t17:14:56.155066z0[error]innodb:.\ibdata1mustbewritable2017-05-03t17:14:56.155066z0[error]innodb:thesystemtablespacemustbewritable2017-05-03t17:14:56.375466z0[error]plugin'innodb'initfunctionreturnederror.2017-05-03t17:14:56.375466z0[error]plugin'innodb'registrationasastorageenginefailed.2017-05-03t17:14:56.375466z0[error]unknown/unsupportedstorageengine:innodb2017-05-03t17:14:56.375466z0[error]aborting

mysql没有权限写入.\ibdata1文件,使用管理者取得该文件的权限后也没有效果,偶然看到有位大佬的修改方法:

解决方法:

1、打开任务管理器终止mysqld进程;

2、打开mysql安装目录的data文件夹,删除以下2个文件:ib_logfile0和ib_logfile1

3、重新启动mysql

原因分析

mysql文件结构

mysql文件包括mysql所建数据库文件和mysql所用引擎创建的数据库文件。

.frm文件与操作和数据库引擎无关,都有这么个与表名同名文件。

myisam引擎的文件:

.myd即mydata,表数据文件

.myi即myindex,索引文件

.log日志文件。

innodb引擎的文件:

采用表空间(tablespace)来管理数据,存储表数据和索引,

innodb数据库文件(即innodb文件集,ib-fileset):

ibdata1、ibdata2等:系统表空间文件,存储innodb系统信息和用户数据库表数据和索引,所有表共用。

.ibd文件:单表表空间文件,每个表使用一个表空间文件(filepertable),存放用户数据库表数据和索引。

redo日志文件:ib_logfile0、ib_logfile1

——————————————————————————————————————————————

安装的mysql5.1.48或是mysql5.5.8,配置好最后点击execute按钮了,但是进行不到startservice这一步。检查了下mysql系统服务已添加,但是无法启动,手工也不行。这时候用事件查看器可以看到程序事件里有几个来自于mysql的错误:

plugin'innodb'registrationasastorageenginefailed.

unknown/unsupportedtabletype:innodb

原来是因为这两版本的mysql默认使用了支持事物的innodb引擎,打开my.ini文件,在mysql的安装文件夹,如c:programfilesmysql中,看到:

default-storage-engine=innodb

解决办法是把该设置改为

default-storage-engine=myisam

__________________________________________________________________________________________

#安装mysql服务:mysqld-installmysql5

d:\programfiles\mysql_5.6.24_winx64\bin>mysqld-installmysql5

servicesuccessfullyinstalled.

#启动mysql服务:netstartmysql5

d:\programfiles\mysql_5.6.24_winx64\bin>netstartmysql5

mysql5服务正在启动...

mysql5服务无法启动。

系统出错。

发生系统错误1067。

进程意外终止。

#卸载mysql服务:scdeletemysql5

d:\programfiles\mysql_5.6.24_winx64\bin>scdeletemysql5

[sc]deleteservice成功