一般情況下打開access時會產(chǎn)生ldb文件,但在網(wǎng)站空間卻不是這種情況,可以通過以下幾方面分析解決。
以前網(wǎng)站經(jīng)常會產(chǎn)生一個同數(shù)據(jù)庫同名(擴展名是.ldb)的文件,每當(dāng)產(chǎn)生這個文件,網(wǎng)站就不能正常訪問,用ftp登陸一開始刪除不了此文件,要過一段時間才行,這文件一沒有了,網(wǎng)站就能正常訪問。
網(wǎng)站空間產(chǎn)生ldb文件的解決方法:
1:解決方法:將數(shù)據(jù)庫下載到本地,再上傳
2:直接更新服務(wù)器緩存就OK了,
如果不行請下載數(shù)據(jù)庫用ACCESS壓縮修復(fù)后上傳~
3:數(shù)據(jù)庫運行引擎終止了,服務(wù)器質(zhì)量不行,ACCESS運行過多就會出現(xiàn),讓服務(wù)器重起或者IIS重起即可(但是空間商一般不會這么做,所以你還是下載,修復(fù)后上傳即可~ )
4:這個代表 你的程序造成ACCESS 出現(xiàn)死循環(huán)CPU 不停的執(zhí)行同一個指令出現(xiàn)LDB的原因就是CPU 出現(xiàn)死循環(huán)造成的你檢查一下你的程序
一般出現(xiàn)這個情況 你ASP無法打開 HTML 基本正常 你重新啟動一下 IIS 和 修復(fù)一下 ACCESS數(shù)據(jù)庫然后檢查好程序那里出現(xiàn)死循環(huán)這樣就可以解決了
5:應(yīng)該是服務(wù)器的問題,你重啟一下IIS試試
6:造成打開網(wǎng)站慢的原因是你的代碼有問題或者訪問量過大,Access是輕量級數(shù)據(jù)庫,數(shù)據(jù)量或訪問量過大都會造成執(zhí)行效率低下,可換成SQL Server來解決
7:用代碼的方式關(guān)閉
復(fù)制代碼 代碼如下:
<%
Application.Contents.Removeall()
%>
將上面的代碼保存為一個ASP文件放在空間里執(zhí)行一下就OK了!
在用戶要操作并且容易出錯的那個asp的最前面加上
<%
if exist(數(shù)據(jù)庫路徑/數(shù)據(jù)庫文件.ldb) then
application.contents.removeall
end if
%>
不知道這樣會不會連session也刪除了,導(dǎo)致用戶要重新登錄。既然你想要自動,沒其它好辦法了
.ldb 文件小常識
.ldb 文件是由共享數(shù)據(jù)庫的使用者自動創(chuàng)建以及刪除得。.LDB 文件建立并存儲計算機名、用戶名以及放置擴展域鎖的。.LDB 文件一般與 .MDB 同名,并且與 .MDB 文件在相同目錄,在 .MDB 文件被打開時建立并鎖定。舉個例子,如果你打開 c:\northwind.mdb 文件后 c:\northwind.ldb 文件會自動被建立并被鎖定。
當(dāng)最后一個用戶關(guān)閉共享數(shù)據(jù)庫時 .ldb 文件會被自動刪除。但是當(dāng)用戶沒有正常關(guān)閉數(shù)據(jù)庫或者數(shù)據(jù)庫已經(jīng)被標(biāo)記為損壞,那么 .LDB 文件不會被自動刪除,因為 .LDB 文件中存儲著數(shù)據(jù)庫損壞時誰正在使用該數(shù)據(jù)庫。
權(quán)限問題:
記得要給予 .LDB 文件所在的文件夾一定的權(quán)限。
如果你準(zhǔn)備共享一個數(shù)據(jù)庫,該 .MDB 文件應(yīng)該被放置在一個用戶擁有讀取、寫入、建立、刪除權(quán)限的目錄中(NTSF格式)。即使你要求每個用戶有不同的文件權(quán)限(比如,只讀或者可讀寫),所有能夠共享該數(shù)據(jù)的用戶對該目錄都應(yīng)該擁有讀取、寫入、建立的權(quán)限,但是你可以分配用戶對某個 .MDB 文件只擁有只讀權(quán)限。
注意:如果用獨占方式打開某個數(shù)據(jù)庫,那么 MS JET DB 將不會建立 .LDB 文件,此時用戶對目錄的權(quán)限只要求有讀取和寫入兩個權(quán)限即可。
.ldb 文件的內(nèi)容:
MS JET DB ENGINE 會為每個以共享方式打開數(shù)據(jù)庫的使用者在 .LDB 文件中創(chuàng)建一個條目,每個條目的大小是 64 字節(jié)。前面 32 字節(jié)保存計算機名,后面 32 字節(jié)保存用戶名。JET DB ENGINE 支持的最大用戶數(shù)是 255,因此 .LDB 文件的大小不會超過 16 KB。
當(dāng)一個用戶關(guān)閉一個共享數(shù)據(jù)庫時,該用戶在 .LDB 文件中的條目不會立即被刪除,可是該條目會在下一個用戶打開這個數(shù)據(jù)庫時被覆蓋。這也就意味著你不能通過 .LDB 文件來唯一確定誰是某個數(shù)據(jù)庫的當(dāng)前使用者。
.LDB 文件的使用方法:
JET DB ENGINE 使用 .LDB 文件中的信息來確定誰鎖定了數(shù)據(jù),誰正在寫入被其他人鎖定的數(shù)據(jù)。如果 JET DB ENGINE 發(fā)現(xiàn)有其他用戶的鎖定沖突,它會讀取 .LDB 文件以獲取計算機名與用戶名誰鎖定了文件或者記錄。
在多數(shù)鎖定沖突情況下,你會在存儲記錄時得到一個 “寫入沖突”的提示并且取消你所做的修改。在有些情況下你會得到如下提示:
Couldn''t lock table <table name>; currently in use by user <security name> on computer <computer name>.
注意:上述關(guān)于 .LDB 文件的信息與數(shù)據(jù)庫文件無關(guān)。如果一個 .LDB 文件損壞,數(shù)據(jù)庫文件仍然能夠工作正常。但是寫入沖突的提示消息中<security name>這個部分你可能會看見一串不知所云的文字。