1.
你要看下你遷移資料庫的時候是不是需要停機的?停機的話直接備份個全備,再還原就可以了。
2.
如不停機需要先設置日誌
增量備份
在備份一個全備
再把全備還原
還原全備之後再一個個根據時間點去還原全備之後的
日誌文件
。
⑵ SQL資料庫的遷移方法有多少
本文介紹五種遷移SQL資料庫的方法,包括DTS設計器導入導出、利用備份和恢復、直接拷貝數據文件、在應用程序中定製和SQL Server的復制功能。
DTS設計器導入導出
DTS的設計器功能強大,支持多任務,也是可視化界面,容易操作,但知道的人一般不多,如果只是進行SQL Server資料庫中部分表的移動,用這種方法最好,當然,也可以進行全部表的移動。在SQL Server Enterprise Manager中,展開伺服器左邊的+,選擇資料庫,右擊,選擇All tasks/Import Data...(或All tasks/Export Data...),進入向導模式,按提示一步一步走就行了,裡面分得很細,可以靈活的在不同數據源之間復制數據,很方便的。而且可以另存成DTS包,如果以後還有相同的復制任務,直接運行DTS包就行,省時省力。也可以直接打開DTS設計器,方法是展開伺服器名稱下面的Data Transformation Services,選Local Packages,在右邊的窗口中右擊,選New Package,就打開了DTS設計器。
值得注意的是:如果源資料庫要拷貝的表有外鍵,注意移動的順序,有時要分批移動,否則外鍵主鍵,索引可能丟失,移動的時候選項旁邊的提示說的很明白,或者一次性的復制到目標資料庫中,再重新建立外鍵,主鍵,索引。
利用備份和恢復
先對源資料庫進行完全備份,備份到一個設備(device)上,然後把備份文件復制到目的伺服器上(恢復的速度快),進行資料庫的恢復操作,在恢復的資料庫名中填上源資料庫的名字(名字必須相同),選擇強制型恢復(可以覆蓋以前資料庫的選項),再選擇從設備中進行恢復,瀏覽時選中備份的文件就行了。這種方法可以完全恢復資料庫,包括外鍵,主鍵,索引。
直接拷貝數據文件
把資料庫的數據文件(*.mdf)和日誌文件(*.ldf)都拷貝到目的伺服器,在SQL Server Query Analyzer中用語句進行恢復:
EXEC sp_attach_db @dbname = ';test';,
@filename1 = ';d:mssql7datatest_data.mdf';,
@filename2 = ';d:mssql7datatest_log.ldf';
這樣就把test資料庫附加到SQL Server中,可以照常使用。如果不想用原來的日誌文件,可以用如下的命令:
EXEC sp_detach_db @dbname = ';test';
EXEC sp_attach_single_file_db @dbname = ';test';,
@physname = ';d:mssql7datatest_data.mdf';
這個語句的作用是僅僅載入數據文件,日誌文件可以由SQL Server資料庫自動添加,但是原來的日誌文件中記錄的數據就丟失了。
在應用程序中定製
可以在應用程序(PB、VB)中執行自己編寫的程序,也可以在Query Analyzer中執行,這種方法比較靈活,其實是利用一個平台連接到資料庫,在平台中用的主要是SQL語句,這種方法對資料庫的影響小,但是如果用到遠程鏈接伺服器,要求網路之間的傳輸性能好,一般有兩種語句:
1> select ... into new_tablename where ...
2> insert (into) old_tablename select ... from ... where ...
區別是前者把數據插入一個新表(先建立表,再插入數據),後者是把數據插入已經存在的一個表中,我個人喜歡後者,因為在編程的結構上,應用的范圍上,第二條語句強於前者。
SQL Server的復制功能
SQL Server提供了強大的數據復制功能,也是最不易掌握的,具體應用請參考相關資料,值得注意的是要想成功進行數據的復制工作,有些條件是必不可少的:
1)SQL Server Agent必須啟動,MSDTC必須啟動。
2)所有要復制的表必須有主鍵。
3)如果表中有text或image數據類型,必須使用with log選項,不能使用with no_log選項。
另外max text repl size選項控制可以復制的文本和圖像數據的最大規模,超過這個限制的操作將失敗。
4)在要進行復制的計算機上,應該至少是隱含共享,即共享名是a1、b1…。
5)為SQL Server代理使用的Windows Server賬號不能是一個本地的系統賬號,因為本地的系統賬號不允許網路存取。
⑶ sql數據遷移的時候怎麼把時分秒也遷進來
select convert(varchar,GETDATE(),108),right(CONVERT(varchar,getdate(),120),8)
裡面有兩種方法都可以
⑷ 怎樣寫SQL語句,把datatime數據的後面的時分秒去掉
可以使用SQL函數 Convert(),例如將當前伺服器的時間轉換為日期:
Select Convert(char(10),getdate(),126)
這樣會得到形如:yyyy-mm-dd 格式的字元串日期。
⑸ sql sever資料庫怎麼把資料庫遷移到另一個伺服器
先在源伺服器導出資料庫,再到新伺服器安裝SQL SERVER,再導入資料庫。
如果確實不會,你可以找護衛神幫你操作。
⑹ 如何遷移SQL Server系統資料庫
遷移SQL
Server系統資料庫步驟:
使用微軟SQL
Server管理工具移動資料庫
1、單擊開始菜單,選擇SQL
Server管理工具,然後在快速查找欄輸入SQL
Server。
2、打開SQL
Server管理工具
3、目的資料庫選擇
將會出現恢復資料庫窗口,在恢復到資料庫框中輸入我們想要恢復的資料庫名稱。
4、源資料庫
選擇來源資料庫單選按鈕選擇你的備份文件存放的位置。
5、選擇備份文件
要恢復的文件將會出現在已經選擇的要恢復文件框中,選中多選按鈕繼續下一步操作。
6、新路徑
現在處於恢復的關鍵時刻,你需要從選擇頁中選擇選項,如上圖所示。在這里要為你的資料庫文件指定新的路徑。這和後面將要介紹的移動選項類似,只要在資料庫和日誌文件後面鍵入一個新的路徑即可。例如,當前的路徑結構如下:
C:Program
FilesMicrosoftSQL
ServerMSSQL.1MSSQLDATADatabase_Name_Here.mdf
C:Program
FilesMicrosoftSQL
ServerMSSQL.1MSSQLDATADatabase_Name_Here_1.ldf
7、移動到新路徑
我們希望將這些資料庫文件移動到一個新路徑,鍵入新路徑就可以。本文我們移動到下面的路徑:
D:
SQLDATADatabase_Name_Here.mdf
D:SQLLogsDatabase_Name_Here_1.ldf
8.成功恢復
⑺ 在SQL 資料庫中我如何能把日期的時分秒去掉(我寫的是sql腳本)
日期用格式 date 而不是datetime
⑻ 如何用代碼把SQL資料庫中表的數據轉移到另一張表中,轉出後原來的就沒有了。
假設A表是原來的表,B表是要轉的表
如果你想轉出後的數據完全是A表的數據,且B表結構和A表一樣
你可以這樣
select * from A
into B
go
drop Table A
go
這個就順利的把A表刪除,並且數據全部到B表
如果只是轉出一部分可以,並在A表中刪除者部分數據
select * from A
into B
where 你的條件
go
delete from A
where 條件要和上面的一樣就可以了
go
3。如果你的B表是本來存在的,且裡面已經有數據了
你只能
insert into B(Field1,Field2,...)
select Field1,Field2,....
from A
where 條件(如果是全部A表數據可沒有條件)
go
delete from A
where 條件(如果是全部A表數據可沒有條件)
go
不知道樓主到底是什麼意思,我的回答是否能給樓主點啟發
⑼ sql server 2008 資料庫的遷移有哪些方法
方法一:
將\Microsoft SQL Server\MSSQL\DATA文件夾中的syntt_data.mdf和syntt_log.ldf文件復制到安裝有資料庫伺服器的機器的文件夾中(可以是本機的\Microsoft SQL Server\MSSQL\DATA\文件夾),然後進入企業管理器。右鍵點擊「資料庫」,在浮動菜單中選擇「所有任務」中的「附加資料庫」。
在隨後的提示頁面中選擇剛才復制過來的.MDF文件,如果想指定資料庫的所有者,在「指定資料庫所有者」選擇框中選擇你認為合適的用戶。如果想修改資料庫的名字,可在「附加為」框中輸入新的資料庫名字(對本資料庫,不建議這么做,因為這樣的話,整個程序中所有涉及資料庫連接的代碼都要隨之修改,那將是不必要的勞動)。
在進行完上述的工作之後,直接點擊「確定」就可進行數據的SQL Server 數據轉移轉移。
方法二:
(方法一)是針對資料庫中沒有本資料庫的伺服器,如果資料庫中已經建有與該資料庫名稱相同的資料庫,則直接按照備份資料庫的恢復操作就可完成數據的SQL Server 數據轉移轉移。
方法如下所述:
這種方法首先要在本機上建立一個備份文件,具體操作介紹如下:
1、 在企業管理器中打開伺服器組以及指定的伺服器。然後右鍵點擊需要備份的資料庫在這里是syntt,在浮動菜單中選擇「所有任務」菜單下的「備份資料庫」,打開數據備份對話框。
2、 選擇「常規」選項卡,在名稱對話框中輸入本分集合名稱,在「描述」文本框中輸入備份集描述文本信息。在「備份」組下選擇備份操作類型,共有以下幾種:
資料庫—完全:完整備份資料庫。
資料庫—差異:增量備份資料庫。
事務日誌:事務日誌備份。
文件和文件組:資料庫文件和文件組備份。
在「目的」組中指定備份設備或者備份文件名稱,選擇「添加」按鈕添加備份設備或者文件;「刪除」按鈕用來刪除備份設備和備份文件;選擇「內容」按鈕,則可查看已經存儲在備份設備或文件中的備份信息。
在「重寫」組中有兩種選項:
追加到媒體:選擇該選項,表示需要保存備份設備或文件中以前的備份數據。
重寫現有媒體:要求本次被分數據覆蓋以前的備份數據,從而節省存儲空間。
在「調度」組中,安排數據備份的時間。用來指定資料庫備份在將來的某個時間執行
3、 「選項」選項卡,設置資料庫備份操作選項。其中的內容主要有以下幾項:
完成後驗證備份:要求在備份結束時對備份數據進行校驗。
備份後彈出磁帶:只對磁帶備份設備有效,他要求在備份結束時自動卸帶。
刪除事務日誌中不活動的條目:要求在事務日誌備份結束時刪除事務日誌中的已經完成的事務日誌條目。
檢查媒體集名稱和備份集到期時間:要求在備份前檢查介質集名稱和原備份集中備份SQL Server 數據轉移的有效期,以防止意外重寫破壞原來的備份數據。
備份集到期時間:設置備份集的有效期。
初始化並標識媒體:只對磁帶設備有效。選擇該選項後,SQL Server在備份時將Microsoft定義的磁帶格式信息寫入介質的開始部分。此時,可以在「媒體集名稱」和「媒體集描述」文本框中定義介質集名稱和介質描述信息。
4、 在進行完上述的操作之後,剩下的任務就是點擊「確定」,使系統開始進行資料庫的備份操作。
到目前為止,我們已經有了一個資料庫的備份文件,剩下的任務就是怎麼將這個文件還原至另外的資料庫伺服器中了。
1、因為使用企業管理器進行資料庫的恢復只能是在本機進行,所以在進行數據還原之前,必須將剛才所作的備份文件復制到本機,然後在本機選擇「syntt」資料庫,右鍵點擊它,在顯示出來的浮動菜單中選擇「所有任務」下的「還原資料庫」。
2、在還原資料庫對話框中,在「常規」選項卡中的選擇「從設備」的數據恢復方法,通過「選擇設備」按鈕選擇剛才復制過來的文件。
「常規」選項卡與「選項」選項卡中的具體內容如下所示:
「常規」選項卡:
資料庫恢復方法:包括「資料庫」、「文件組或文件」、「從設備」三種恢復方式。
「資料庫」方式:選擇該項時,從「顯示資料庫備份」列表中選擇需要顯示的指定資料庫備份集合,從「要還原的第一個備份」列表框中選擇首先使用哪一個備份集恢復資料庫;「文件組或文件」:選擇它時,資料庫恢復部件列出指定資料庫備份集合中備份的資料庫文件或文件組,管理員可從這些備份文件中選擇恢復那個資料庫文件或文件組;「從設備」:選擇它時,管理員選擇恢復資料庫或其日誌所使用的備份設備,之後再從該備份設備中選擇使用哪一次備份中的數據恢復資料庫或其日誌。
3、點擊「確定」,完成恢復操作。
非原創
⑽ 如何遷移完整SQL資料庫到另外一台伺服器
如何遷移完整SQL資料庫到另外一台伺服器
首先,打開伺服器上已經安裝好的SQL Server 2005 伺服器,並且用本地Windows身份登錄。
2
打開SQL Server伺服器以後,點擊資料庫--選擇附加
3
打開附加資料庫界面後,點擊右小角的添加
4
打開電腦上,之前備份好的完成資料庫文件,然後點擊確認。
5
資料庫文件和其資料庫日誌文件,就一並載入過來了,點擊確認就可以了。
6
展開資料庫,就可以了看到我
們剛剛附加過來的完整資料庫了,現在就可以