1、点击桌面上的“开始”图标。
2、点击右下角的“所有程序”按钮。
3、找到“Microsoft SQL Server 2008”文件夹,并点击。
4、点击“Microsoft SQL Server 2008”下的“配置工具”。
5、点击“配置工具”下的“Sql server配置管理器”。
6、右击带有“MSSQLSERVER”的选项,并点击“启动”选项。(有多项都是以那个结尾的,就要都点了)。这样就可以连接上了。
故障处理移除当前使用的 redo log 文件,然后可以试着启动数据库,结果启动失败!
提示:
[ERROR] InnoDB: Page [page id: space=0, page number=0] log sequence number 178377412422 is in the future! Current system log sequence number 165909011496.
这样的错误,这是因为 MySQL writer 线程按照配置的时间间隔以 page 为单位刷新 buffer 数据到磁盘。当数据刷新到磁盘的时候,新写入磁盘的 page 包含了较新的 LSN,此时系统 system 表空间头的 LSN 并没有同步更新,通常这是检查点线程的工作。在正常的崩溃恢复中,MySQL 可以借助 redo log 来进行前滚和回滚,但是此时 redo log 已经被我们删掉了,MySQL 无法进行恢复 *** 作。此时,我们设置 innodb_force_recovery=3 来强制启动 MySQL,仍然启动不成功,改成 4 后启动了!
再使用 mysqldump 导出备份,结果噩梦又降临了!MySQL 又 crash 了。
提示:
InnDB: Failed to find tablespace for table......
设置参数 innodb_force_recovery=5,数据库仍然启动失败,再设置成 6,启动成功!用 sqldump 顺利把数据备份出来了!
再初始化数据库,把刚刚备份的数据库导入,数据库恢复成功完成!
参数说明
这里的关键是设置 innodb_force_recovery 参数,对应这个参数的说明如下:
1. SRV_FORCE_IGNORE_CORRUPT:忽略检查到的 corrupt 页;
2. SRV_FORCE_NO_BACKGROUND:阻止主线程的运行,如主线程需要执行 full purge *** 作,会导致 crash;
3. SRV_FORCE_NO_TRX_UNDO:不执行事务回滚 *** 作;
4. SRV_FORCE_NO_IBUF_MERGE:不执行插入缓冲的合并 *** 作;
5. SRV_FORCE_NO_UNDO_LOG_SCAN:不查看重做日志,InnoDB 存储引擎会将未提交的事务视为已提交;
6. SRV_FORCE_NO_LOG_REDO:不执行前滚的 *** 作。
由于你安装的一个成功一个不成功 导致某些问题产生你现在可以这样做
将你安装不成功的2008 和2000全部卸载掉
卸载方法如下:
1、确保以前版本卸载干净,卸载干净方法
--删除C:\Program Files\Microsoft SQL Server这整个文件夹,
--regedit打开注册表
--删除[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server]主键
--删除[HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server]主键
--windows服务如果还在,还需要删除服务.
--HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 直接删除相关的键值便可
--重新启动计算机
2、如果机器上装有VS 2005的话,要把VS 2005自带的SQL 2005 EXPRESS卸载;
同时删除XML4和MSXML6,到控制面板/添加删除程序。
因为你安装过2个SQL Server,所以注册表上清理的时候注意把相关的SQL的都删除
之后你在XP上安装SQL Server2000 一定得装developer或者express版本
xp是不可以装企业版
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)