當前位置:首頁 » 操作系統 » 資料庫太

資料庫太

發布時間: 2022-05-03 01:04:43

㈠ 怎麼解決ACCESS資料庫太大造成運行慢的問題

1.時候在使用Access文件的時候,隨著增刪改的不斷的連續,會導致文件越來越大。即使手動刪除或者使用delete語句刪除了大量的數據記錄,會發現文件的大小依然沒有減掉,而且隨著你再往裡寫數據,又會增大。
2.產生這個現象的原因跟Access本身的機制有關,具體也不清楚,好像是有什麼歷史記錄還是什麼存儲碎片。ACCESS資料庫在進行刪除操作後,並不從該資料庫中把數據清除掉,而是刪除其索引相關的東西,雖然顯示不出來,但是那些東西還是在文件中存在的,所以會引起ACCESS資料庫文件越來越大。即使是我們不通過代碼來訪問access文件,而只是通過用戶界面訪問,隨著文件的增大,也會帶來一系列的問題。其症狀包括:對象可能打開得更慢,查詢可能比正常情況下運行的時間更長,各種典型操作通常似乎也需要使用更長時間。更何況如果在網站應用中,採用的是Access作為資料庫的話,這里就有了性能上的問題。文件越來越大,會影響查詢的速度,而且ACCESS是採用獨占方式工作的,也就是說一次只能一個進程打開這個資料庫執行操作,如果是多個用戶的話就要"排隊"了,所以ACCESS資料庫如果變為很大的話,執行一個查詢時間就會變長,而進程"排隊"的等待時間也就會變得很久,專業型的資料庫就不同,可以同時接收多個並發的訪問,可以採用sql資料庫或其它大型並發數很強的資料庫。

3.但是很多時候我們是需要Access文件,往不同的地方拷貝的,比如說,一個Server上生成了一個Access文件,需要拷貝到另外的Server上,而且Server間如果網速不是很好的話,會需要很長的時間來傳輸這個文件。所以這時候我們希望這個文件在內容不變的前提下,越小越好。所以我們可以去除這個Access的冗餘信息。

4.Office Access本身就有這種功能,我們可以通過菜單找到這個工具,然後單擊這個圖標手動壓縮

5.執行以下這幾句代碼就可以了。
首先引用C:Program FilesCommon FilesSystemadomsadox.dll,該DLL包含ADOX命名空間;
接著引用C:Program FilesCommon FilesSystemadomsjro.dll,該DLL包含JRO命名空間
注意:如,導入dll不成功,手動把com組件 導入為 .net組件,在用vs.net工具導入

///壓縮修復ACCESS資料庫,mdbPath為資料庫絕對路徑
public void Compact(string mdbPath)
{
if (!File.Exists(mdbPath)) //檢查資料庫是否已存在
{
throw new Exception("目標資料庫不存在,無法壓縮");
}
//聲明臨時資料庫的名稱
string temp = DateTime.Now.Year.ToString();
temp += DateTime.Now.Month.ToString();
temp += DateTime.Now.Day.ToString();
temp += DateTime.Now.Hour.ToString();
temp += DateTime.Now.Minute.ToString();
temp += DateTime.Now.Second.ToString() + ".bak";
temp = mdbPath.Substring(0, mdbPath.LastIndexOf("\") + 1) + temp;
//定義臨時資料庫的連接字元串
string temp2 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + temp;
//定義目標資料庫的連接字元串
string mdbPath2 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + mdbPath + ";Jet OLEDB:Database Password=l1epc2";
//創建一個JetEngineClass對象的實例
JetEngineClass jt = new JetEngineClass();
//使用JetEngineClass對象的CompactDatabase方法壓縮修復資料庫
jt.CompactDatabase(mdbPath2, temp2);
//拷貝臨時資料庫到目標資料庫(覆蓋)
File.Copy(temp, mdbPath, true);
//最後刪除臨時資料庫
File.Delete(temp);
}

㈡ mssql資料庫太大怎麼壓縮

資料庫在使用一段時間後,時常會出現因數據刪除而造成資料庫中空閑空間太多的情況,這時就需要減少分配給資料庫文件和事務日誌文件的磁碟空間,以免浪費磁碟空間。當資料庫中沒有數據時,可以修改資料庫文件屬性直接改變其佔用空間,但當資料庫中有數據時,這樣做會破壞資料庫中的數據,因此需要使用壓縮的方式來縮減資料庫空間。可以在資料庫屬性選項中選擇「Auto shrink」選項,讓系統自動壓縮資料庫,也可以用人工的方法來壓縮。人工壓縮資料庫有以下兩種方式:

1、用Enterprise Manager 壓縮資料庫
在Enterprise Manager 中在所要壓縮的資料庫上單擊右鍵,從快捷菜單中的「所有任務(All Tasks)」中選擇「Shrink Database(壓縮資料庫)」選項
、用Transact-SQL 命令壓縮資料庫
可以使用DBCC SHRINKDATABASE 和DBCC SHRINKFILE 命令來壓縮資料庫。其中DBCC SHRINKDATABASE 命令對資料庫進行壓縮,DBCC SHRINKFILE 命令對資料庫中指定的文件進行壓縮。

(1) DBCC SHRINKDATABASE
DBCC SHRINKDATABASE 命令語法如下:
DBCC SHRINKDATABASE (database_name [, target_percent]
[, {NOTRUNCATE | TRUNCATEONLY}] )
各參數說明如下:

target_percent 指定將資料庫壓縮後,未使用的空間占資料庫大小的百分之幾。如果指定的百分比過大,超過了壓縮前未使用空間所佔的比例,則資料庫不會被壓縮。並且壓縮後的資料庫不能比資料庫初始設定的容量小。
NOTRUECATE
將資料庫縮減後剩餘的空間保留在資料庫,中不返還給操作系統。如果不選擇此選項,則剩餘的空間返還給操作系統。
TRUNCATEONLY
將資料庫縮減後剩餘的空間返還給操作系統。使用此命令時SQL Server 將文件縮減到最後一個文件分配,區域但不移動任何數據文件。選擇此項後,target_percent 選項就無效了。
壓縮資料庫mytest 的未使用空間為資料庫大小的20%。
dbcc shrinkdatabase (mytest, 20)
運行結果如下:
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

(2) DBCC SHRINKFILE
DBCC SHRINKFILE 命令壓縮當前資料庫中的文件。其語法如下:
DBCC SHRINKFILE ( {file_name | file_id }
{ [, target_size] |
[, {EMPTYFILE | NOTRUNCATE | TRUNCATEONLY}] } )
各參數說明如下:

file_id
指定要壓縮的文件的鑒別號(Identification number, 即ID)。文件的ID 號可以通過 FILE_ID()函數或如本章前面所講述的Sp_helpdb 系統存儲過程來得到。
target_size
指定文件壓縮後的大小。以MB 為單位。如果不指定此選項,SQL Server 就會盡最大可能地縮減文件。
EMPTYFILE
指明此文件不再使用,將移動所有在此文件中的數據到同一文件組中的其它文件中去。執行帶此參數的命令後,此文件就可以用ALTER DATABASE 命令來刪除了。
其餘參數NOTRUNCATE 和TRUNCATEONLY 與DBCC SHRINKDATABASE 命令中的含義相同。
例6-15: 壓縮資料庫mydb 中的資料庫文件mydb_data2 的大小到1MB。 use mydb dbcc shrinkfile (mydb_data2, 1)

㈢ SQL資料庫太大怎麼辦

我有個大的 SQL 文件要回放,需要馬上做,但又怕壓死業務,怎麼辦?

先來建一個測試庫:

可以看到 CPU 已經非常冷靜,並且緩慢的處理數據。

💡小貼士:pv 工具既可以用於顯示文件流的進度,也可以用於文件流的限速。在本實驗中,我們用 PV 來限制 SQL 文件發到 MySQL client 的速度,從而限制 SQL 的回放速度,達到不影響其他業務的效果。

㈣ SQL資料庫文件太大怎麼處理

如果是MSSQL在任務里選資料庫收縮,可以縮小很多。
不然只能把數據導出來減小資料庫了。

㈤ 請教資料庫太大,如何處理

將資料庫中的數據放於多個磁碟上的數據文件中,有助於提高資料庫IO性能.
負載均衡技術是指將資料庫的讀寫操作分離開來.比如主體資料庫用於寫操作,從資料庫用於讀操作.
負載均衡也就是所謂的讀寫分離技術.

㈥ 導入資料庫文件太大怎麼辦max

解決方法如下:
(1)修改php.ini適用自己有伺服器的人
大多數都修改php.ini中的upload_max_filesize,但修改了這個以後,還是提示這個問題;
那麼更改如下幾處:
修改
PHP.ini
file_uploads
on
是否允許通過HTTP上傳文件的開關。默認為ON即是開
upload_tmp_dir
文件上傳至伺服器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾
upload_max_filesize
20m

望文生意,即允許上傳文件大小的最大值。默認為2M
post_max_size
30m

指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M
說明
一般地,設置好上述四個參數後,在網路正常的情況下,上傳<=8M的文件是不成問題
但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通。除非你的網路真有100M/S的上傳高速,否則你還得繼續設置下面的參數。
max_execution_time
300
每個PHP頁面運行的最大時間值(秒),默認30秒
max_input_time
300
每個PHP頁面接收數據所需的最大時間,默認60秒
memory_limit
128m
每個PHP頁面所吃掉的最大內存,默認8M
設定
POST
數據所允許的最大大小。此設定也影響到文件上傳。要上傳大文件,該值必須大於
upload_max_filesize。
如果配置腳本中激活了內存限制,memory_limit
也會影響文件上傳。通常說,memory_limit
應該比
post_max_size
要大。
(2)這個方法很簡單,不需要修改php.ini參數,
適用把站放在虛擬主機的人。
打開phpMyAdmin目錄下的配置文件:config.inc.php
請注意其中的這兩個參數:
$cfg['UploadDir']
=
『A『;
$cfg['SaveDir']
=
『B『;
在phpMyAdmin目錄下自行建立文件夾A和B來對應UploadDir(導入目錄)和SaveDir(導出目錄)。
導出操作:
1、登陸phpMyAdmin
2、在左側選中你需要備份導出的資料庫
3、在右側窗口中找到「導出」
4、在右側窗口底部選擇「保存於伺服器的
B/
目錄」
5、選擇壓縮模式,提交「執行」即可在B文件夾中找到該資料庫的導出數據。
導入操作:
1、上傳准備導入的數據文件到A目錄
2、登陸phpMyAdmin
3、在左側選中你需要備份導出的資料庫
4、在右側窗口中找到「Import」(導出)
5、在右側窗口「網站伺服器上載目錄」中選擇需要導入的數據文件,提交「執行」完成導入

㈦ 我的sql 資料庫太大了,能把ldf文件刪除嗎

直接刪除是不行的,將他「重置」就可以了。解決方法如下:

1、首先,打開SQL查詢窗口,輸入刪除關鍵字Drop。

㈧ SQL Server資料庫太大怎麼辦

如果單位內部業務數據太多,那麼資料庫文件快速增大就是正常的,這種情況下,只能採取其它措施縮減其大小,比如說建立專門的歸檔資料庫,用以存放歷史數據,從而控制主數據文件的增長速度。

㈨ 資料庫過大該怎麼處理

問題分析:這種問題是由於伺服器的資料庫文件或者日誌太大造成的,那麼我們清理下日誌或者收縮數據
庫就可以了。解決方法:一
第一種解決方案,不限制資料庫文件大小,當然,這是在您的伺服器空間足夠的情況下

第二種解決方案,直接清理資料庫日誌文件
我們打開資料庫,然後選擇分離資料庫,找到日誌文件並刪除,然後附加,會自動產生
一個初始的很小的日誌文件

第三種收縮資料庫日誌文件,設置資料庫文件或者日誌文件收縮到一定大小就可以。
以上各種解決方案,可以根據不同情況選擇不同方案,為防止對資料庫操作不熟悉,操
作失誤,修改前請先備份好資料庫。

㈩ 資料庫太大,sqlserver report builder刷不出數據

具體如下:
凡是數據量太大問題,都能用分批處理的思想去處理。限用sql的話,那就用存儲過程,運行時實時創建目標表,將分批處理後的結果集插入其中。
至於怎麼分批,規則太多,可以簡單limit,也可根據數據某種類型或者其他某種潛在規則,當然數據是你的,你比我清楚。

熱點內容
萬魔斬腳本 發布:2024-10-06 08:23:18 瀏覽:876
華強北耳機連安卓手機下什麼軟體 發布:2024-10-06 08:21:53 瀏覽:251
兒科發現傳染病的應急演練腳本 發布:2024-10-06 08:21:48 瀏覽:598
玩王者榮耀的時候要買哪個配置 發布:2024-10-06 08:19:41 瀏覽:620
imovie怎麼清理緩存 發布:2024-10-06 08:14:30 瀏覽:17
python字典list 發布:2024-10-06 08:14:26 瀏覽:578
amhip訪問 發布:2024-10-06 08:03:54 瀏覽:437
joy加密 發布:2024-10-06 07:53:27 瀏覽:201
結構是由哪種腳本語言填寫的 發布:2024-10-06 07:24:27 瀏覽:744
客戶端反編譯教學 發布:2024-10-06 07:10:42 瀏覽:783