Unable to connect to database server:specified database is invalid 错误修复方法
常見軟件 博優軟件、中頂軟件、超贏軟件、海德軟件、方象軟件
1.因為物理磁盤故障,如硬盤壞道或固件磁頭損壞造成Anywhere 數據庫無法打開
2.由于在使用過程中突然斷電造成的數據庫無法打開
3.由于操作系統或其它方面的故障導致數據庫無法打開
1、將dbrepair.exe復制到數據庫目錄下 例如:d:\cwdata,在dos方式下執行以下語句。
2、d:\cwdata>dbrepair -k d:\cwdata\cwbase1.db 將錯誤頁號(xxxx)記下?
3、d:\cwdata>dbrepair -z xxxx d:\cwdata\cwbase1.db
OK,問題通過
用Sybase提供的dbtranw.exe,DB32W.EXE,rtsqlw.exe等實用程序來完成恢復工作,步驟如下表。
步驟命令功能 :
1.Dbtranw -r-k-y mydb.logdb.sql把.log
文件的內容轉換成的SQL語句
2.Attrib -r mydb.db
修改只讀文件mydb.db的屬性為可寫
3.Attrib -r mydb.log
修改只讀文件mydb.log的屬性為可寫
4.Copy new.db mydb.db
用新的空庫文件覆蓋被破壞的舊庫文件
5.Copynew.log mydb.log
用新的日志文件覆蓋舊的日志文件
6.DB32W.EXE -d mydb.db
啟動數據庫SQLAnywhere
7.Rtsqlw -q-c "userid=dba;
password=sql"readdb.sql
執行從.log文件中倒出來的SQL語句
其中第一步的功能是把舊的日志文件轉換成SQL語句,并放在一個名為db.sql的文件中,特別注意它只能在第五步之前操作,否則日志文件會被new.log所覆蓋,而導致無法恢復數據。最后一步的功能是從文件db.sql中讀取SQL語句并執行,假設數據庫的用戶名為dba,而口令為sql。有關各個命令及參數據的更詳細的用法可以查看相應的幫助。在此提醒用戶注意:.log文件不能隨便刪除,否則恢復的數據就不完整。
Connection failed:Specified database is invalid?”
若ODBC中所有的內容都沒有填錯,那么就可以能是在建立數據庫的時候,夠選了Use Transaction Log選項,導致創建了日志文件。
而移植到別的機器上的時候,使用的目錄并不一樣,所以就出錯了。
解決方法:
在創建ASA數據庫的時候不創建LOG文件,如果已經創建了LOG文件則可以利用PB自帶的工具Sybase central來去掉LOG文件和數據庫文件的關聯。操作步驟如下:
1)啟動Sybase central在左邊的樹型目錄中選擇Utilities;
2)雙擊右邊出現的條目中的change log file settings,直接next;
3)點Browse選擇需要去除log文件的數據庫文件,選好后next;
4)這里你會看到一些數據庫的信息,log文件名,文件大小等。next;
5)去掉Maintin the following transaction log file前面的對勾(這里也可以改成新的目錄),Finish;
6)配置ODBC連接數據庫就可以了。
注:如果在Sybase central里沒有ASA,則
tools->plug-ins->Register->Register a plug-in by specifying a plug-in registration file,找到asa.jpr
(一般在C:/Program Files/Sybase/SQL Anywhere 8/Java,以ASA8為例)。
注冊之后就有了
總結
以上是生活随笔為你收集整理的Unable to connect to database server:specified database is invalid 错误修复方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: wxpython收费吗_wxpython
- 下一篇: Android高仿QQ消息列表、侧拉删除