版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 Pubwin2009SQLServer数据库修复常见问题方法目录Pubwin2009SQLServer数据库修复常见问题方法1一、 修复一致性错误和分配错误1二、 用自动备份文件(local_db.DBBak)恢复local数据库2三、修复置疑的数据库9四、最大限度导出会员22五、local数据库文件和自动备份文件都损坏或丢失23六、 合并会员表24七Pubwin2009各个表的作用331、 修复一致性错误和分配错误 数据库的基本信息:Pubwin2009的数据库文件有4个(路径为:HintsoftPubwinServerdatabase 下的“local_Data.MDF”和“local_
2、log.LDF”“eventDB_Data.MDF”和“eventDB_log.LDF”; 其中eventDB数据库专门存放会员事件记录和部分省市的实名ID卡库,local数据库存放除eventDB数据库以外的全部数据(包括会员数据、各项计费相关设置、各项报表数据、各项历史记录数据)注意:在对数据库做任何操作前请一定注意备份数据库。Pubwin2009默认会间隔37分钟自动进行差异备份local数据库,自动备份文件其路径为 :HintsoftPubwinServerappServserverwebappsNetCafebackuplongtermdata下“local_db.DBBak”),用
3、此文件恢复会丢失最近37分钟的全部记录。修复数据库步骤:在数据库损坏时候,优先考虑使用自动备份文件来恢复local数据库,恢复方法本文档下面会谈到,不能恢复时再用修复置疑的方法处理,用置疑方法不能导出完整会员表时,可以尝试用最大限度导出会员的工具(方法如下)。 1、开始检查local数据库是否发生一致性错误或分配错误:并把Pubwin2009服务停止,只启动SQLSERVER服务;进入CMD。输入osql -U netcafe P 数据库密码 1>use local 2>go1>dbcc checkdb2>go2、发现错误后我们要开始修复, 所使用语句下:(1)把数据库
4、置为单用户模式 sp_dboption'local','single user', 'true'go(2)修复数据库 DBCC checkdb('local',REPAIR_ALLOW_DATA_LOSS) go如果DBCC checkdb('local',REPAIR_A LLOW_DATA_LOSS)语句执行一次不行,可以在多执行几次直到没有再提示数据库有错误为止.(3)设置为多用户模式 sp_dboption 'local', 'single user', 'false
5、'(4)如有必要可以收缩(压缩)下数据库:DBCC SHRINKDATABASE (local, 0) go3、 然后停止SQLSERVER,重新启动Pubwin2009服务控制器就可以了。2、 用自动备份文件(local_db.DBBak)恢复local数据库1、新建一个全新的local数据库:点确定完成新建空库,可以把新建的空库备份,方便以后使用。首先要新建个空的local数据库(方法同上),然后在local上右键->所有任务->还原数据库在下面对话框上选从设备,点选择设备。点添加浏览到自动备份文件所在目录,选择local_db.DBBak点确定,回到还原数据库对话框,
6、点选项,选择使数据库不再运行,但能还原其它事务日志点确定开始还原数据库,完成后弹出以下提示。此时local显示为正在装载,再点一遍还原数据库->选从设备->选择设备->点添加->浏览到自动备份文件所在目录->选择local_db.DBBak->点确定, 回到还原数据库对话框打开查看内容:选择你需要的某个时间点将其恢复,通常为最后一个时间。这个时候把local分离出去,把local的2个文件(“local_Data.MDF”和“local_log.LDF”)拷贝到database 文件夹下替换,重新附加database 文件夹下的local附加到SQL,如有必
7、要可以收缩下数据库 DBCC SHRINKDATABASE (local, 0) 这时启动Pubwin2009服务控制器就好了。三、修复置疑的数据库修复置疑的数据库基本步骤:取消local置疑状态->从相同版本的安装包里面获取空的数据库附加为local2->把必要的5个表导入到空库中->分离置疑的local 和local2数据库->把服务端数据库目录HintsoftPubwinServerdatabase下的原始2个旧文件重命名->然后把local2数据库的2个文件复制到服务端数据库目录HintsoftPubwinServerdatabase下->附加为lo
8、cal->启动服务。1、什么情况下可能是数据库发生置疑导致的?1)打开后台提示:“server not ready yet”2)Pubwin 2009服务控制器运行时,提示发生错误:2、检查数据库是否置疑:1)启动SQL数据库服务:2)在运行中输入cmd,进入到cmd命令窗口。3)输入osql -U netcafe P 数据库密码 4)use local5) go6) 若local数据库发生置疑即提示下图,eventDB数据库的检查方法同上。3、 若发生置疑,即需要使用SQLManager.rar和SQL查询分析器.rar工具,来修复置疑,下载地址:ftp:/pubwinxz:pubwi
9、nxz40/WWW/1)将SQLManager.rar解压缩到D盘根目录,运行Reg.Bat进行注册一遍。注意:当打开我的电脑-管理-服务时会提示:在运行里面输入services.msc 即可打开服务。2)运行SQL Server Enterprise Manager.MSC 打开3)连接SQL数据库服务,编辑属性:4) 设置登录数据库的账户:netcafe 务必勾选:总是提示输入登录名和密码。5) 输入登录数据库的密码:新安装Pubwin2009服务端时,数据库密码默认是pubwin以后则以在Pubwin2009 后台Web管理平台中,修改的数据库密码为准,然后点连
10、接,再点确定即可登录数据库,6) 登录数据库后,即可查看数据库的置疑情况。7) 用SQL查询分析器取消置疑状态:执行isqlw.exe开始连接SQL数据库:把以下语句粘贴到SQL查询分析器去执行或者按F5,USE MASTERGOSP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDEGOUPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='local'Gosp_dboption 'local', 'single user', &
11、#39;true'GoDBCC CHECKDB('local') Goupdate sysdatabases set status =28 where name='local'Gosp_configure 'allow updates', 0 reconfigure with overrideGo sp_dboption 'local', 'single user', 'false'Go如果是eventDB数据库发生置疑,将上面的local改为eventDB即可。4、如何从Pubwin200
12、9服务端安装包中获取:双击打开服务端安装包目录下的Data1.cab压缩包文件,如图:将两个空的数据库文件:local_data.mdf和local_log.ldf解压缩到任意目录,例如:D盘根目录。5、 运行完此脚本后数据库就不再是置疑状态了,现在把上面从安装包里面提取的空的数据库附加到SQL里面;并重命名local2下面就可以开始导表了,在local上点右键->所有任务->导出数据->下一步:数据源选local,点击下一步:目的选local2,点击下一步:建议只导出必要的5个表:1、 client_pc 客户端机型列表(需要转换,方法如下)2、 console_clien
13、tpc_list 客户端列表3、 Leveltype 会员等级列表(需要转换,方法如下)4、 mem_localdiscountaccount 优惠时间会员表5、 mem_localmemberbaseinfo 会员信息列表转换方法:导出客户端列表console_clientpc_list:导出会员等级列表Leveltype需要转换:导出会员优惠时间表,和会员信息表:然后点击下一步、下一步、完成:6、在通常导过表或者还原过的数据库文件比实际的要大,数据库文件临时空间没有释放,这个时候就需要收缩数据库:注意勾选“在收缩前将页移到文件起始位置”或者查询分析器执行:DBCC SHRINKDATABA
14、SE (local2, 0) 注意:local2为数据库名称。7、 这个时候把local和local2都分离,如图:8、 把服务端数据库目录HintsoftPubwinServerdatabase下的原始2个旧文件“local_Data.MDF”和“local_log.LDF”)重命名,然后把local2数据库的2个文件复制到服务端数据库目录HintsoftPubwinServerdatabase下,附加为local,如图:注意:因为只导出了5个必要的表,所有的营业记录、充值记录、所有的价格方案和设置、当前上机的人员的信息都会丢失,不是不得已的情况下,不建议使用导表的方法。1)在数据库能访问的
15、情况下,可以用此语句查询出所有用户编号和预付款信息:select uniqueid 用户编号,prepay/100 预付款元 from cur_useraccount Go2) 在后台能打开,营业管理-用户视图能打开的情况下,因为其它原因需要导表,可以把后台的用户视图截图下,方便导表后给网民补钱。3) 因为当前表丢失,若启动服务,数据库损坏的时候已经在客户端上机的用户可能会立即关机;所以启动服务前,先请通知网吧做好准备工作。4) 立即重新设置价格方案、admin登录后台的密码、admin登录客户端的密码。到此导表完毕,可启动Pubwin2009服务端,用admin登录后台,密码为空。四、最大限
16、度导出会员在数据库损坏不能用自动备份文件恢复,又不能完整的导出会员表的情况下,可以尝试使用最大限度导出会员的工具导出;基本原理是因部分行损坏,导致后续行的数据不能读取,用此工具尽量读取已经损坏的会员表最多的会员信息;需要从相同版本的安装包里面获取空的数据库附件为local2;工具下载地址:ftp:/pubwinxz:pubwinxz40/WWW/1) 打开此工具,首先输入访问数据库的密码2) 输入会员总数,用SQLManager工具打开数据库的时候可以查看会员表的行数,也是会员总数(如下图:),当用SQLManager工具不能打开的时候可以用语句查看会员的行数:Sel
17、ect count(*) from mem_localmemberbaseinfoGo3) 输入原库和目标库,即开始把local数据库导入到local2数据库。4) 然后把local和local2分离,把服务端数据库目录HintsoftPubwinServerdatabase下的原始2个旧文件“local_Data.MDF”和“local_log.LDF”)重命名,然后把local2数据库的2个文件复制到服务端数据库目录HintsoftPubwinServerdatabase下,重新把local2附件为local。注意:此工具只导出会员基本信息,会员等级的ID相关没有导出,注意单独修改。五、l
18、ocal数据库文件和自动备份文件都损坏或丢失如果有会员事件数据库文件(“eventDB_Data.MDF”和“eventDB_log.LDF”)首先把会员事件数据库附件到SQL server,在事件查询里面输入会员编号,事件类型为结账,排序字段为时间,排序方向为降序更新时间就是最后一次的结账时间,可以计算得出,预付款减去消费金额就是余额,这里还有积点;注意:部分版本已经取消此显示。6、 合并会员表以下将介绍local_B数据库的会员表合并到local会员表;合并时如果2个数据库的会员卡号有相同的,则将金额和积点进行合并,注意:需要是相同版本(会员表的字段数量相同)的数据库才能合并,或者loca
19、l会员表的字段数量比local_B会员表的字段数量多也可以,否则就升级到相同版本再进行合并操作;开始合并前需要把2个网吧的数据库在控制台上全体结账。1)附加数据库local_B2) 用local数据库的会员表,生成用于创建空会员表的脚本3)保存脚本,直接点确定4)在local数据库中创建一个名称为mem_localmemberbaseinfobak空的会员表:用查询分析器打开刚刚保存的脚本文件,如下图:将上图中if、drop、Go开头的三行删除,数据库选择为local,需要创建的表名改为:mem_localmemberbaseinfobak,修改后如图:点击绿色小三角,开始执行,完成时会提示命
20、令已成功完成:执行完成后,刷新local数据库,可以看见刚刚创建的mem_localmemberbaseinfobak会员表5) 将local_B的mem_localmemberbaseinfo导到local的mem_localmemberbaseinfobak注意选择目标表:mem_localmemberbaseinfobak6)复制以下语句到查询分析器,查询有多少重复的会员:SELECT * FROM mem_localmemberbaseinfo AS A WHERE (UniqueID IN (SELECT UniqueID FROM mem_localmemberbaseinfoba
21、k AS B WHERE A.UniqueID = B.UniqueID)结果如下图:7)将相同卡号会员的储值、累加积分、循环积分合并:Update mem_localmemberbaseinfo set mem_localmemberbaseinfo.balance=mem_localmemberbaseinfo.balance + a.balance,mem_localmemberbaseinfo.score=mem_localmemberbaseinfo.score + a.score,mem_localmemberbaseinfo.remainscore=mem_localmember
22、baseinfo.remainscore + a.remainscore from(select balance,score,remainscore,uniqueid from mem_localmemberbaseinfobak)awhere mem_localmemberbaseinfo.uniqueid = a.uniqueid注意:以上合并的语句只能执行一次,若多次执行,金额将多次相加。8) 删除mem_localmemberbaseinfobak中与mem_localmemberbaseinfo相同的卡号:delete from mem_localmemberbaseinfobak
23、where uniqueid IN (select uniqueid from mem_localmemberbaseinfo)9)将mem_localmemberbaseinfobak追加到mem_localmemberbaseinfo:update local.dbo.mem_localmemberbaseinfobak set id=id+500000;insert into mem_localmemberbaseinfo select * from mem_localmemberbaseinfobak ;注意:以上追加的语句只能执行一次,若多次执行,金额将多次追加。 到此local_B
24、的会员表合并到local完毕;local数据库中的mem_localmemberbaseinfobak 会员表不会影响业务操作。如果是pubwin2007如果要导表,需要注意以下三张表的字段和字段值必须一致 同时表的个数必须一样会员表 mem_localmemberbaseinfo当前上机表 cur_user上机使用记录hst_usepcbiz然后导出下面五个表即可:cfg_adminaccount 控制台帐号密码表 (必须要转换)cur_user 当前上机表configitem 配置表 (必须要转换)mem_localdiscountaccount会员优惠套餐mem_localmemberb
25、aseinfo会员信息如果是pubwin2009如果导表,可以导入下面几张表console_clientpc_list客户机列表client_pc客户对象类型 (必须要转换)leveltype会员等级(必须要转换)mem_localdiscountaccount会员优惠套餐mem_localmemberbaseinfo会员信息2009只是需要导这5个表。配置还不能导,需要重新设置七Pubwin2009各个表的作用1. client_config客户机使用的相关配置(服务器ip地址,允许自助开户,允许自助结账,客户机重启后自动登录,允许登录口令为空,允许Admin登录客户机最长时间(分钟),登录
26、响应超时(秒))2. client_pc客户对象类型3. client_pc_policy客户机策略列表4. client_room包房5. client_roomlist包房对象类表6. client_section区域类型列表7. client_sectionlist区域对象列表8. communication_config与其他通讯配置列表9. console_clientpc_list客户机列表10. consoel_config控制台使用相关配置(开户后自动打印凭证,结账后自动打印账单,启动无人值守,开户时必须登录身份,开户时核实用户身份)11. client_dutyUser本班上
27、机人数记录12. console_config_other-限制条件选项13. console_disrecharge充值按固定项目14. console_fixdtime固定项目15. console_fixdtime_dtl对于允许机器类型的从表16. console_limit会员操作限制选项17. console_list控制台列表18. console_other控制台其他配置(坏账原因,会员冲正原因等)19. console_recharge充值固定项目20. console_timing定时默认选项21. cur_useraccount当前用户22. cur_userdetail
28、当前用户详细信息,实名相关加密23. hst_cashserialyyyymm(分表)24. hst_dealrecord yyyymm(分表)25. hst_discountconsume yyyymm(分表)26. hst_presentation yyyymm(分表)27. hst_usehistory yyyymm(分表)28. hst_usepcbiz yyyymm(分表)29. layout场景试图30. leveltype会员等级31. member_config会员高级选项32. member_scoreconfig赠送积点方式33. payinfo保持电影扣费失败信息34. priceschema_config价格方案列表35. priceschema_limit匹配条件集合(使用ID与priceschme_config关联)36. priceschema_c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年中考语文试题分类专练:诗词鉴赏(第02期)解析版
- 何官学区安全培训会议课件
- 扶贫考试题及答案
- 反洗钱题库及答案
- 二建市政真题及答案
- 企业安全环保大培训制度课件
- 小学五年级语文上册题临安邸“西湖歌舞”讽刺意图课件
- 小学五年级语文上册语文园地三爱国名言积累运用课件
- 成都大学附属医院2025年公开考核招聘高层次人才备考题库及完整答案详解一套
- 2026年沈阳工业大学冲击与防护工程科研团队科研助理工程师招聘备考题库及答案详解(夺冠系列)
- 北京八中2026届高二物理第一学期期末考试模拟试题含解析
- 2026年湖南铁道职业技术学院单招职业技能考试必刷测试卷附答案
- 销售费用申请与报销流程标准化手册
- 高等学府零基预算管理体系深化策略研究
- 小学数学奥赛8-10-火柴棒游戏.教师版
- DB11T 2491-2025 文物保护工程勘察规范 长城
- 小儿危重症的早期识别及护理
- 泵站维修施工方案
- 表没食子儿茶素没食子酸酯生物合成-洞察及研究
- 2025-2030奶山羊养殖效益分析及乳制品深加工与产业投资机会报告
- 设备网格化管理办法
评论
0/150
提交评论