SQL Server 通常有兩種備份資料庫的操作方法:
通過備份命令進行
備份的命令是
Backup DataBase XXXX To Disk="c:XXX.Bak"
(其中XXXX是待備份的資料庫名稱)
這種備份的好處是可以將命令集成到所開發軟體的內部,允許用戶通過點擊按鈕或菜單的形式來進行,並且隔離用戶和資料庫本身,提高安全性。
相對應的,恢復資料庫的命令是Restore database XXXXfrom disk='c:xx.bak'
2.通過SQL Server Managment Studio執行
這個是通過資料庫管理器來操作,需要有資料庫管理許可權和Windows操作許可權。
步驟如下:
選中需要備份的資料庫,右鍵點擊滑鼠,選擇「任務」菜單下的"備份「子菜單
備份完成後會有對話框提示備份完成,關閉對話框即可。
② 如何備份sql server資料庫文件
1. 下載2014-02-10 07:16的全量備份文件並解壓出要恢復的資料庫備份文件。
2. 以NORECOVERY的方式還原2014-02-10 07:16的全量備份,操作SQL語句如下:
還原成功後,資料庫處於Restoring狀態。
3. 繼續以NORECOVERY的方式還原2014-02-12
06:51的增量備份,操作SQL語句如下:
還原成功後,資料庫繼續處於Restoring狀態。
4. 日誌備份文件的下載
RDS 控制台 - 備份恢復 - 數據備份,選擇需要下載的備份集,點擊「下載」。
點擊「復制內網地址」 或 「復制外網地址」 來獲取備份的 內網 或 外網 下載地址。
日誌備份的地址在 RDS 控制台 - 備份恢復 - 日誌備份
獲取:
5. 解壓備份文件
解壓備份文件前,要先下載好解壓工具 rds_backup_extract
解壓備份文件:
bash rds_backup_extract -f /home/mysql/backup/hins575175_xtra_20150429091224.tar.gz -C /home/mysql/data
6. 以RECOVERY(默認方式)的方式還原日誌
日誌還原成功後,資料庫處於正常狀態,這時資料庫中的數據就還原到了要恢復的時間點。③ 請問用SQL語句實現對指定的資料庫進行備份和還原的語句是怎麼樣的呢
請問,是對sqlserver庫的么???
備份:
BACKUP
DATABASE
"mydb"
TO
DISK
='C:\mybak.db'
with
init
還原
use
master
RESTORE
DATABASE
"mydb"
FROM
DISK='C:\mybak.db';
use
mydb
[補充]
這兩個命令都得指定一個文件名字啊..
你看我的例子都是'C:\mybak.db'
你指定了一個目錄肯定不行的啊,還得要指定一個文件名字才成!!
這兩個是sqlserver的自定義的存儲過程,其實也能手工在sqlserver的企業管理器中看到,,
選中庫,右鍵--所有任務--備份還原資料庫那.
還不行就
給我信息吧...
這里補充我一般看不見的...④ 如何備份整個mysql資料庫
1、首先打開mysql資料庫軟體進入軟體主界面。
⑤ sql資料庫備份
sp_admpdevice只是添加了一個備份設備,備份設備信息存放在資料庫中,只有在執行backup database操作的時候向設備中寫入備份數據後文件才會被創建。
一般備份資料庫可以指定備份到設備或備份到文件,因此不一定要備份到創建的備份設備中。⑥ 如何實現sql server實時備份資料庫
可以利用資料庫復制技術來實現數據同步更新 。SQL復制的基本元素包括出版伺服器、訂閱伺服器、分發伺服器、出版物和文章。 SQL SERVER 主要採用出版物、訂閱的方式來處理復制。源數據所在的伺服器是出版伺服器,負責發表數據。出版伺服器把要發表的數據的所有改變情況的拷貝復制到分發伺服器,分發伺服器包含有一個分發資料庫,可接收數據的所有改變,並保存這些改變,再把這些改變分發給訂閱伺服器 。
主要有以下幾個步驟:
1、配置出版伺服器 :
(1)選中指定[伺服器]節點 ;
(2)從[工具]下拉菜單的[復制]子菜單中選擇[發布、訂閱伺服器和分發]命令 ;
(3)系統彈出一個對話框點[下一步]然後看著提示一直操作到完成;
(4)當完成了出版伺服器的設置以後系統會為該伺服器的樹形結構中添加一個復制監視器。同時也生成一個分發資料庫(distribution) 。
2、創建出版物 :
(1)選中指定的伺服器;
(2)從[工具]菜單的[復制]子菜單中選擇[創建和管理發布]命令;
(3)在彈出的對話框中選擇要創建出版物的資料庫,單擊[創建發布] ;
(4)在[創建發布向導]的提示對話框中單擊[下一步]系統就會彈出一個對話框,選擇合適的復制類型;
(5)單擊[下一步]系統要求指定可以訂閱該發布的資料庫伺服器類型,SQLSERVER允許在不同的資料庫如 ORACLE或ACCESS之間進行數據復制;
(6)單擊[下一步]系統就彈出一個定義文章的對話框也就是選擇要出版的表 ;
(7)點擊[下一步]直到操作完成。
3、設計訂閱 :
(1)選中指定的訂閱伺服器;
(2)從[工具]下拉菜單中選擇[復制]子菜單的[請求訂閱] ;
(3)按照單擊[下一步]操作直到系統會提示檢查SQL SERVER代理服務的運行狀態,執行復制操作的前提條件是SQL SERVER代理服務必須已經啟動;
(4)單擊[完成],即可實現實時備份資料庫。⑦ SQL資料庫備份
備份資料庫
1、打開sql企業管理器,在控制台根目錄中依次點開microsoft
sql
server
2、sql
server組-->雙擊打開你的伺服器-->雙擊打開資料庫目錄
3、選擇你的資料庫名稱(如財務資料庫cwdata)-->然後點上面菜單中的工具-->選擇備份資料庫
4、備份選項選擇完全備份,目的中的備份到如果原來有路徑和名稱則選中名稱點刪除,然後點添加,如果原來沒有路徑和名稱則直接選擇添加,接著指定路徑和文件名,指定後點確定返回備份窗口,接著點確定進行備份。⑧ 資料庫SQL 如何完全備份
1、點擊開始菜單,打開sql企業管理器。
2、依次展開sqlserver根目錄,並打開資料庫。
3、選擇要備份的資料庫名,滑鼠右鍵所有任務→備份資料庫。
4、這里需要注意,如果之前有備份的話,一定要先刪除之前的備份記錄,不用擔心只是刪除記錄而不是刪除備份文件。
5、刪除記錄再點添加。
6、選擇備份目的,就是要讓你選擇備份地點和備份文件命名。前面是路徑後面是文件名,這個文件名是自定義的,可以根據時間或者其它來命名,如果想另存的話也可以點擊另存為,然後確定。
7、添加保存路徑後繼續確定,然後會有備份進度提示,直到完成ok。
8、根據路徑來檢查是否有備份文件。⑨ 備份MYSQL資料庫SQL語句怎麼寫
mysqlmp備份還原和mysqlmp導入導出語句大全詳解
mysqlmp備份:
mysqlmp -u用戶名 -p密碼 -h主機資料庫 a -w "sql條件" --lock-all-tables >路徑
案例:
mysqlmp -uroot -p1234 -hlocalhost db1 a -w "id in (select id from b)" --lock-all-tables > c:\aa.txt
mysqlmp還原:
mysqlmp -u用戶名 -p密碼 -h主機資料庫<路徑
案例:
mysql -uroot -p1234 db1 < c:\aa.txt
mysqlmp按條件導出:
mysqlmp -u用戶名 -p密碼 -h主機資料庫 a --where "條件語句" --no-建表>路徑
mysqlmp -uroot -p1234 dbname a --where "tag='88'" --no-create-info> c:\a.sql
mysqlmp按導入:
mysqlmp -u用戶名 -p密碼 -h主機資料庫<路徑
案例:
mysql -uroot -p1234 db1 < c:\a.txt
mysqlmp導出表:
mysqlmp -u用戶名 -p密碼 -h主機資料庫表
案例:
mysqlmp -uroot -p sqlhk9 a --no-data
講一下 mysqlmp 的一些主要參數
--compatible=name
它告訴 mysqlmp,導出的數據將和哪種資料庫或哪個舊版本的 MySQL 伺服器相兼容。值可以為 ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options 等,要使用幾個值,用逗號將它們隔開。當然了,它並不保證能完全兼容,而是盡量兼容。
--complete-insert,-c
導出的數據採用包含欄位名的完整 INSERT 方式,也就是把所有的值都寫在一行。這么做能提高插入效率,但是可能會受到 max_allowed_packet 參數的影響而導致插入失敗。因此,需要謹慎使用該參數,至少我不推薦。
--default-character-set=charset
指定導出數據時採用何種字元集,如果數據表不是採用默認的 latin1 字元集的話,那麼導出時必須指定該選項,否則再次導入數據後將產生亂碼問題。
--disable-keys
告訴 mysqlmp 在 INSERT 語句的開頭和結尾增加 /*!40000 ALTER TABLE table DISABLE KEYS */; 和 /*!40000 ALTER TABLE table ENABLE KEYS */; 語句,這能大大提高插入語句的速度,因為它是在插入完所有數據後才重建索引的。該選項只適合 MyISAM 表。
--extended-insert = true|false
默認情況下,mysqlmp 開啟 --complete-insert 模式,因此不想用它的的話,就使用本選項,設定它的值為 false 即可。
--hex-blob
使用十六進制格式導出二進制字元串欄位。如果有二進制數據就必須使用本選項。影響到的欄位類型有 BINARY、VARBINARY、BLOB。
--lock-all-tables,-x
在開始導出之前,提交請求鎖定所有資料庫中的所有表,以保證數據的一致性。這是一個全局讀鎖,並且自動關閉 --single-transaction 和 --lock-tables 選項。
--lock-tables
它和 --lock-all-tables 類似,不過是鎖定當前導出的數據表,而不是一下子鎖定全部庫下的表。本選項只適用於 MyISAM 表,如果是 Innodb 表可以用 --single-transaction 選項。
--no-create-info,-t
只導出數據,而不添加 CREATE TABLE 語句。
--no-data,-d
不導出任何數據,只導出資料庫表結構。
--opt
這只是一個快捷選項,等同於同時添加 --add-drop-tables --add-locking --create-option --disable-keys --extended-insert --lock-tables --quick --set-charset 選項。本選項能讓 mysqlmp 很快的導出數據,並且導出的數據能很快導回。該選項默認開啟,但可以用 --skip-opt 禁用。注意,如果運行 mysqlmp 沒有指定 --quick 或 --opt 選項,則會將整個結果集放在內存中。如果導出大資料庫的話可能會出現問題。
--quick,-q
該選項在導出大表時很有用,它強制 mysqlmp 從伺服器查詢取得記錄直接輸出而不是取得所有記錄後將它們緩存到內存中。
--routines,-R
導出存儲過程以及自定義函數。
--single-transaction
該選項在導出數據之前提交一個 BEGIN SQL語句,BEGIN 不會阻塞任何應用程序且能保證導出時資料庫的一致性狀態。它只適用於事務表,例如 InnoDB 和 BDB。
本選項和 --lock-tables 選項是互斥的,因為 LOCK TABLES 會使任何掛起的事務隱含提交。
要想導出大表的話,應結合使用 --quick 選項。
--triggers
同時導出觸發器。該選項默認啟用,用 --skip-triggers 禁用它。
其他參數詳情請參考手冊,我通常使用以下 SQL 來備份 MyISAM 表:
/usr/local/mysql/bin/mysqlmp -uyejr -pyejr "
--default-character-set=utf8 --opt --extended-insert=false "
--triggers -R --hex-blob -x db_name > db_name.sql
使用以下 SQL 來備份 Innodb 表:
/usr/local/mysql/bin/mysqlmp -uyejr -pyejr "
--default-character-set=utf8 --opt --extended-insert=false "
--triggers -R --hex-blob --single-transaction db_name > db_name.sql
另外,如果想要實現在線備份,還可以使用 --master-data 參數來實現,如下:
/usr/local/mysql/bin/mysqlmp -uyejr -pyejr "
--default-character-set=utf8 --opt --master-data=1 "
--single-transaction --flush-logs db_name > db_name.sql
它只是在一開始的瞬間請求鎖表,然後就刷新binlog了,而後在導出的文件中加入CHANGE MASTER 語句來指定當前備份的binlog位置,如果要把這個文件恢復到slave里去,就可以採用這種方法來做。
1.2 還原
用 mysqlmp 備份出來的文件是一個可以直接倒入的 SQL 腳本,有兩種方法可以將數據導入。
直接用 mysql 客戶端
例如:
/usr/local/mysql/bin/mysql -uyejr -pyejr db_name < db_name.sql
用 SOURCE 語法(實驗不成功!!!)
其實這不是標準的 SQL 語法,而是 mysql 客戶端提供的功能,例如:
SOURCE /tmp/db_name.sql;
這里需要指定文件的絕對路徑,並且必須是 mysqld 運行用戶(例如 nobody)有許可權讀取的文件。⑩ 如何備份sql資料庫
用SQL Server Management Studio連接伺服器後 選擇你要備份的資料庫 然後 TASK -》 BACK UP -》然後按說明操作來