① 怎麼用SQL語句備份和恢復資料庫
1、使用SQL最簡單備份,還原資料庫。
② SQL 備份還原資料庫 命令方式
/*2.--備份資料庫--*/
/*--調用示例
--備份當前資料庫
exec p_backupdb @bkpath='c:\',@bkfname='db_\DATE\_db.bak'
--差異備份當前資料庫
exec p_backupdb @bkpath='c:\',@bkfname='db_\DATE\_df.bak',@bktype='DF'
--備份當前資料庫日誌
exec p_backupdb @bkpath='c:\',@bkfname='db_\DATE\_log.bak',@bktype='LOG'
--*/
/*3.--恢復資料庫--*/
/*--調用示例
--完整恢復資料庫
exec p_RestoreDb @bkfile='c:\db_20031015_db.bak',@dbname='db'
--差異備份恢復
exec p_RestoreDb @bkfile='c:\db_20031015_db.bak',@dbname='db',@retype='DBNOR'
exec p_backupdb @bkfile='c:\db_20031015_df.bak',@dbname='db',@retype='DF'
--日誌備份恢復
exec p_RestoreDb @bkfile='c:\db_20031015_db.bak',@dbname='db',@retype='DBNOR'
exec p_backupdb @bkfile='c:\db_20031015_log.bak',@dbname='db',@retype='LOG'
--*/
③ 如何備份sql資料庫
sqlSERVER的資料庫備份是通過backup進行備份的,如果有需要可以通過建立調度的方式實現連續備份,當然也可以2000以後的sql也可以使用資料庫維護計劃完成資料庫備份。就單單一次備份可以在企業管理器(2005以後叫SQL Server Management Studio)找到需要備份的資料庫,點擊右鍵 在所有任務中選擇「備份」,按照提示備份選擇就可以了
④ mysql中備份資料庫的命令是
使用mysqlmp工具進行備份:
1)備份所有資料庫:
$ mysqlmp -uroot -p --all-database > all.sql
(2)備份資料庫test
$ mysqlmp -uroot -p test > test.sql
(3)備份資料庫test下的表emp
$ mysqlmp -uroot -p test emp > emp.sql
(4)備份資料庫test下的表emp和dept
$ mysqlmp -uroot -p test emp dept > emp_dept.sql
⑤ 怎麼用SQL語句備份和恢復資料庫
用SQL語句備份與恢復資料庫的步驟:
備份: mysqlmp --quick --database ondemand1 --u root >bacqup.sql 這樣就能把資料庫中ondemand1的表全部備份出來。
其中參數的格式是:--,兩橫杠,不是我們常用的單橫杠。
quick是在數據比較多的時候,不用該參數的話,所有的數據都會先在內存緩存,接著才導出,這樣會導致伺服器運行減慢。
--u 必須要加一個用戶名,否則系統會提示你進不了ODBC資料庫的。
>backup.sql則是你備份資料庫的目標文件名。
恢復:m1ysql -u root -p database_name d:db.bak,在WIN下,路徑用path/filename.sql是不行的,那就用pathfilename.sql。
sql語句:
是對資料庫進行操作的一種語言。結構化查詢語言(Structured Query Language)簡稱SQL,結構化查詢語言是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。
⑥ 用SQL語句備份資料庫
用SQL2000還原bak文件
1.右擊SQL
Server
2000實例下的「資料庫」文件夾。就是master等資料庫上一級的那個圖標。選擇「所有任務」,「還原資料庫」
2.在「還原為資料庫」中填上你希望恢復的資料庫名字。這個名字應該與你的源碼中使用的資料庫名字一致。
3.在彈出的對話框中,選「從設備」
4.點擊「選擇設備」
5.點擊「添加」
6.點擊「文件名」文本框右側的「...」按鈕,選中你的「.BAK」文件,並點擊確定回到「選擇還原設備」對話框。
7.點擊確定回到「還原資料庫」對話框。
8.點擊「選項」選項卡
9.將所有「移至物理文件名」下面的路徑,改為你想還原後的將資料庫文件保存到的路徑。如果你不希望改變,可以直接點擊確定。這時便恢復成功了。
很不錯!我今天終於把.bak搞定了,這里有個要注意的地方就是選項中的「移至物理文件名」下面的路徑,這個路徑一定要修改哦,不然會出現錯誤
⑦ mysql備份命令是什麼
參考一下這個吧 還原或者導入資料庫命令:mysql -u root --password=root備份資料庫命令:mysqlmp -u root --password=root --database
helloworld >helloworld_backup.sql
其他用法:1.導出整個資料庫
mysqlmp -u 用戶名 -p 資料庫名 > 導出的文件名
mysqlmp -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.導出一個表
mysqlmp -u 用戶名 -p 資料庫名表名> 導出的文件名
mysqlmp -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.導出一個資料庫結構
mysqlmp -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql-d 沒有數據 --add-drop-table 在每個create語句之前增加一個drop table
4.導入資料庫
常用source 命令
進入mysql資料庫控制台,
如mysql -u root -pmysql>use 資料庫然後使用source命令,後面參數為腳本文件(如這里用到的.sql)
mysql>source d:\wcnc_db.sql 備份:
1. mysqlmp -h 61.139.112.56 -u root -p test >d:/test_db.2005-03-02.sql
2. mysqlmp -h 61.139.112.56 -u root -p test table1 table2 >d:/test12.sql
3. mysqlmp -h 61.139.112.56 -u root -p test |gzip>d:/testz.gz恢復
1. mysql testdb <d:/test_db.2005-03-02.sql
mysql>source test_db.2005-03-02.sql
⑧ sql 資料庫備份與還原命令時什麼怎麼用急!!!
1.備份資料庫
BAKUP DATABASE db_name
TO device
with
BLockSize=
Description='db_name資料庫備份'
Differential,
ExpireDate=
RetainDays=
Password=
Format|Noformat
MediaName=
MediaDescription=
MediaPassword=
Name=
Init|Noinit
Skip|NoSkip
Unload|NoUnload
NoRewind|Rewind
Restart
Stats=
2.備份數據事務日誌
BAKUP LOG db_name
TO device
with
BLockSize=
Description='db_name資料庫事務日誌備份'
ExpireDate=
RetainDays=
Password=
Format|Noformat
MediaName=
MediaDescription=
MediaPassword=
Name=
Init|Noinit
Skip|NoSkip
Unload|NoUnload
NoRewind|Rewind
NoRecovery|Standby=
Notruncate(清除事務日誌的非活動部分,但SQL Server記錄Bakuo Log命令)|NO_LOG(清除事務日誌的非活動部分,不記錄Bakup Log命令)|TruncatePOnly(備份事務日誌)
Restart
Stats=
3.恢復資料庫
Restore Database db_name
From device
With
Restricted_User
File=恢復具有多個備份子集的備份介質中的那個備份子集
Pssword=
MediaName=
MediaPassword=
Keep_Replication
Move file to file
Norecovery|Recovery|Standby=資料庫恢復操作的UNDO文件(恢復資料庫文件或文件組使用Norecovery選項)
Norewind|Rewind
Unload|NoUnload
Replace (若恢復的資料庫名稱與已存在的資料庫重名,則首先刪除原資料庫,然後重建)
Restart
Stats=
4.恢復事務日誌
Restore Log db_name
From device
With
Restricted_User
File=恢復具有多個備份子集的備份介質中的那個備份子集
Pssword=
MediaName=
MediaPassword=
Move file to file
Norecovery|Recovery|Standby=資料庫恢復操作的UNDO文件
Norewind|Rewind
Unload|NoUnload
Restart
Stats=
Stopat=(將資料庫恢復到該設定時間以前的狀態,只有在該時間以前的事物日誌才會被恢復)
Stopatmark='mark_name'[After datetime]
Stopbeforemark='mark_name'[After datetime]
DOB_ONLY:表示新恢復的資料庫的訪問許可權只授予資料庫所有者
Norecovery:表示恢復操作不回滾任何未提交的事務。若恢復某一資料庫備份後又恢復多個事務日誌,或在恢復過程中執行多個Restore命令,則要求除最後一條Restore命令外其他的必須使用該選項
Recovery:表示回滾所有未提交事務
5.部分恢復資料庫---進行部分資料庫恢復操作事要使用資料庫文件組,而且總是要恢復主要的文件和文件組,此外就是恢復所指定的文件和文件組
Restore Database db_name
<file or filegroup>
From device <備份設備名>
With
Partial
Restricted_User
File=恢復具有多個備份子集的備份介質中的那個備份子集
Pssword=
MediaName=
MediaPassword=
Keep_Replication
Move file to file
Norecovery|Recovery|Standby=資料庫恢復操作的UNDO文件(恢復資料庫文件或文件組使用Norecovery選項)
Norewind|Rewind
Unload|NoUnload
Restart
Stats=
⑨ 如何將SQL資料庫備份到網路共享
定期備份SQL資料庫是必須的。我們已經覆蓋的方式就可以輕松備份您的所有SQL Server資料庫到本地硬碟中,但這並不能防止驅動器和/或系統故障。作為針對此類災難的額外保護層,您可以在網路共享上復制或直接創建備份。
在本地備份,然後復制到網路共享
完成此任務的首選和最直接的方法是簡單地創建資料庫的本地備份,然後將相應的備份文件復制到網路共享。您可以通過創建如下所示的批處理腳本來完成此操作:
SET LocalFolder = C:Program Files Microsoft SQL ServerMSSQL.1MSSQLBackup
SqlCmd -E -Q「備份資料庫MyDB到磁碟=%LocalFolder%MyDB.bak」
XCopy「%LocalFolder%MyDB.bak」「 192.168.16.55BackupDatabases」/ Z / V
DEL「%LocalFolder%MyDB.bak」
此腳本執行以下操作(逐行):
將變數設置為本地SQL備份目錄。
創建MyDB的SQL備份(使用Windows身份驗證)到本地SQL備份目錄。
將本地備份文件復制到網路共享。
刪除本地備份文件。
同樣,這是首選方法,因為它的工作原理和備份失敗的可能性是最小的,因為備份是在本地磁碟上創建。但是,如果沒有足夠的磁碟空間來存儲備份文件的本地副本,則此操作將失敗。在這種情況下,您需要添加額外的磁碟空間或直接備份到網路共享。
直接備份到網路共享
通常,當您嘗試使用以下命令直接創建備份到網路共享時:
SqlCmd -E -Q「備份資料庫MyDB到磁碟= 192.168.16.55BackupDatabasesMyDB.bak」
你很可能會得到一個錯誤的行:
消息3201,級別16,狀態1,伺服器JF,行1
無法打開備份設備 192.168.16.55BackupDatabasesMyDB.bak。操作系統錯誤5(訪問被拒絕。)。
消息3013,級別16,狀態1,伺服器JF,第1行
BACKUP DATABASE異常終止。
盡管使用Windows身份驗證(-E開關)和Windows帳戶作為通過Windows資源管理器訪問和復制文件到共享的能力運行SQL備份命令,仍會出現此錯誤。
此操作失敗的原因是SQL命令在SQL Server服務運行的帳戶的邊界內執行。當您在計算機上查看服務列表時,很可能您將看到運行為(登錄為)列的SQL Server服務本地系統或網路服務,它們是沒有網路訪問許可權的系統帳戶。
在我們的系統上,網路共享命令的備份失敗,因為我們有SQL Server服務作為本地系統運行,再也無法獲得任何網路資源。
為了允許SQL直接備份到網路共享,我們必須將SQL Server服務作為可訪問網路資源的本地帳戶運行。
編輯SQL Server服務的屬性,並在「登錄」選項卡上將服務配置為作為具有網路訪問許可權的備用帳戶運行。
單擊「確定」後,您將收到一條提示,指示在重新啟動服務之後,設置才會生效。
重新啟動服務。
服務列表現在應顯示SQL Server服務正在作為您配置的帳戶運行。
現在當您運行命令直接備份到網路共享:
SqlCmd -E -Q「備份資料庫MyDB到磁碟= 192.168.16.55BackupDatabasesMyDB.bak」
您應該會看到一個成功消息:
處理資料庫MyDB的152頁,文件1上的文件MyDB。
為資料庫MyDB處理2頁,文件1上的文件MyDB_log。
BACKUP DATABASE在0.503秒(2.493 MB /秒)中成功處理了154頁。
使用備份文件現在在網路共享目錄:
網路共享注意事項請務必注意,備份命令希望能夠直接連接到網路共享,而不會提示您輸入憑據。您配置要運行的SQL Server服務的帳戶必須與網路共享具有可信連接,其中相應的憑據允許訪問,否則可能會發生以下錯誤:
消息3201,級別16,狀態1,伺服器JF,行1
無法打開備份設備 192.168.16.55BackupDatabasesMyDB.bak。操作系統錯誤1326(登錄失敗:未知用戶名或密碼錯誤。)。
消息3013,級別16,狀態1,伺服器JF,第1行
BACKUP DATABASE異常終止。
此錯誤表示網路共享不接受帳戶的用戶名和密碼,並且命令失敗。
另一個要記住的問題是備份直接執行到網路資源,因此網路連接中的任何打嗝可能會導致您的備份失敗。因此,您只應該備份到穩定的網路位置(即可能不是VPN)。
安全隱患
如前所述,使用在本地備份然後復制到網路共享的方法是首選,因為它允許您將SQL服務作為僅具有本地系統訪問許可權的帳戶運行。
通過將服務作為備用帳戶運行,您打開了潛在的安全問題的大門。例如,惡意SQL腳本可以在備用帳戶下執行並攻擊網路資源。此外,對相應帳戶(密碼更改/到期或帳戶的刪除/禁用)的任何更改將導致SQL Server服務無法啟動。