⑴ 如何復制資料庫文件
一
配置發布伺服器
在發布伺服器上執行以下步驟:
(1)
從[工具]下拉菜單的[復制]子菜單中選擇[配置發布、訂閱伺服器和分發]出現配置發布和分發向導
(2)
[下一步]
選擇分發伺服器
可以選擇把發布伺服器自己作為分發伺服器或者其他sql的伺服器
(3)
[下一步]
設置快照文件夾
一般採用默認\\servername\d$\Program
Files\Microsoft
SQL
Server\MSSQL\ReplData
**(4)
[下一步]
自定義配置
可以選擇:
是,讓我設置分發資料庫屬性啟用發布伺服器或設置發布設置
否,使用下列默認設置
建議採用自定義設置
(5)
[下一步]
設置分發資料庫名稱和位置
採用默認值
(6)
[下一步]
啟用發布伺服器
選擇作為發布的伺服器
(7)
[下一步]
選擇需要發布的資料庫和發布類型
(8)
[下一步]
選擇注冊訂閱伺服器
(9)
[下一步]
完成配置
⑵ 資料庫怎麼復制
把你要復制的資料庫導出,然後還原,還原的時候取一個不一樣的名字,這樣你就有2個一樣數據不一樣名字的資料庫了。
⑶ 如何用sql,復制一個資料庫
自認為不是高手
--------------------------------
--在master中創建student表
use master
go
create table student
(
id int IDENTITY (1,1),
name varchar(20),
age int
)
--插入2條測試數據
insert into student
select '周傑倫','100'
union
select '蔡依林','1000'
--查詢數據
select * from student
--創建測試資料庫
create database test
--復制插入到新的資料庫test
--語句原型 select * into 資料庫.dbo.新表名 from 要復制的表
--fromstudent這個表不需要創建由into自動創建
select * into test.dbo.fromstudent from master.dbo.student
--查詢新表的數據
select * from test.dbo.fromstudent
--fromstudent和student的表結構數據都一樣
⑷ 如何復制資料庫文件()
一 配置發布伺服器
在發布伺服器上執行以下步驟:
(1) 從[工具]下拉菜單的[復制]子菜單中選擇[配置發布、訂閱伺服器和分發]出現配置發布和分發向導
(2) [下一步] 選擇分發伺服器 可以選擇把發布伺服器自己作為分發伺服器或者其他sql的伺服器
(3) [下一步] 設置快照文件夾
一般採用默認\\servername\d$\Program Files\Microsoft SQL Server\MSSQL\ReplData
**(4) [下一步] 自定義配置
可以選擇:
是,讓我設置分發資料庫屬性啟用發布伺服器或設置發布設置
否,使用下列默認設置
建議採用自定義設置
(5) [下一步] 設置分發資料庫名稱和位置 採用默認值
(6) [下一步] 啟用發布伺服器 選擇作為發布的伺服器
(7) [下一步] 選擇需要發布的資料庫和發布類型
(8) [下一步] 選擇注冊訂閱伺服器
(9) [下一步] 完成配置
⑸ 如何將資料庫復制到另一個資料庫
第一步:首先,打開並連接Sql Server,在源資料庫Source_db(源資料庫名稱)上右鍵,然後依次點擊「編寫表腳本為」→「CREATE到」→「新查詢編輯器窗口」。
第二步:在第1步產生的編輯器中按」crtl+a「組合鍵全選內容,然後右鍵「復制「(或按"crtl+c"鍵)。
第三步:新建查詢,然後右鍵」粘貼「(或ctrl+v);如圖所示,將代碼中Source_db(源資料庫名)改為target_db(目標資料庫名)。接著右鍵單擊」執行「執行代碼。
第四步:然後,在目標資料庫的表結構中就可以看到被復制過來的表了。
表的數據內容復制:
第一步:選中目標資料庫target_db,然後點擊」任務「→」導入數據「。
第二步:進入」SQL Server導入導出向導「,根據提示步驟操作。
第三步:選擇數據源(源資料庫)。
第四步:選擇目標(目標資料庫)、指定表復制或查詢。
第五步:選擇源表和源視圖:設置源表和目標表後,單擊「編輯映射」按鈕,在彈出窗口中選中「啟用標識插入」。(否則後面會出錯)
第六步:一直點擊「下一步」至最後完成操作。
⑹ 資料庫復制有哪些方式
在基於微軟IIS/PWS的網路平台上,通過伺服器端運行的ASP程序來訪問後台資料庫,是一種最常見的模式了。而對於小型的資料庫應用需求,微軟的Access資料庫,應該是與ASP程序配套使用的首選。由於Access資料庫的ODBC驅動程序支持的SQL指令全,執行效率高,所以Access後台資料庫+ASP伺服器端程序+客戶端IE瀏覽器,是一個精練實用高效的組合模式。
在這種使用模式中,ASP程序無疑是最重要的,是溝通客戶端和後台資料庫之間的橋梁。在ASP程序中,通過VB Script,建立對Access資料庫的連接,是客戶能夠訪問後台資料庫的前提。
一、建立Access資料庫連接的常用方法
在ASP中建立對Access資料庫連接的一般格式如下:
<%
DbPath=Server.MapPath(資料庫名)
Set Conn=Server.CreatObject(「ADODB.Connection」)
Conn.Open 「driver=;dbq=」& DbPath
Set rs=Server.CreatObject(「ADODB.Recordset」)
Rs.Open 數據表名或SQL指令,Connection對象,Recordset類型,鎖定類型
… …
%>
它的各步驟及參數意義如下:
第一行程序:利用Server對象的MapPath函數,取得要打開資料庫的完整的文件路徑,並存儲在變數DbPath中。這其中,資料庫名是我們需要指定的參數,應該用我們要打開的資料庫的實際名稱替代。如果資料庫名是直接作為常量出現,要用引號將其括起來,並且不能丟掉擴展名。例如資料庫是Test.mdb,則該行程序成為:DbPath=Server.MapPath(「Test.mdb」)。
第二行程序:建立一個ADO對象集中的Connection對象,也即連接對象。這是建立資料庫連接的初始步驟。執行這行程序後,Conn成為一個連接對象。
第三行程序:利用連接對象Conn的Open方法打開一個指定的資料庫。因為我們要打開的是Access資料庫,所以要指定ODBC驅動程序參數,表示要透過Access的ODBC驅動程序來訪問資料庫:driver=;。另一個參數dbq= & DbPath,運算後等效於dbq=Server.MapPath(資料庫名) ,是利用了第一行的Server.MapPath(資料庫名)函數,用來指定要打開的資料庫文件。到這里,就已經打開了資料庫名指定的資料庫。如果資料庫名是「test.mdb」,則打開Access資料庫Test.mdb。在這一行里指定的參數,要嚴格按照格式原樣寫出,不能省略或改動,也沒有可變參數。
第四行程序:建立一個ADO對象集中的Recordset對象,以便利用Recordset對象操作資料庫(當然,這只是對資料庫操作的多種方式之一)。執行這行後,rs就成為一個Recordset對象。
第五行程序:利用rs對象的Open方法打開資料庫中的數據表。這其中有四個參數,其意義如下:
數據表名或SQL指令串:在這個參數里指定要打開的資料庫內的數據表名稱,或者是用SQL的Select指令串確定的數據表的指定范圍數據,例如,資料庫Test.mdb中有數據表Number,則該參數成為「Number」,注意引號不能丟;若想打開數據表Number中xh欄位值小於90的數據記錄,則該參數可能成為如下的形式:
「Select * From Number Where xh < 90」。
Connection對象:指定已經打開的資料庫的Connection對象,在這里固定是Conn,注意無須引號的。
Recordset類型:表示打開數據表的方式,有四種選擇。數字0表示只讀方式,且當前記錄只能下移;數字1表示可讀寫方式,當前記錄可自由上下移動,但不能及時看到別的用戶建立的新記錄,除非重新啟動;數字2表示可讀寫方式,當前記錄可自由移動,而且可以及時看到別的用戶增加的新記錄;數字3表示只讀方式,但當前記錄可以自由移動。一般選擇2為好,除非為了禁止數據被修改。
鎖定類型:這個參數指定資料庫的鎖定功能。因為網路上的資料庫都是多用戶的,很可能同時有多個用戶在操作資料庫。為了避免錯誤,讓同一時間只可能有一個用戶修改數據,就要用鎖定功能。有四種選擇:數字1表示只讀方式鎖定,用戶不能更改數據;數字2表示悲觀鎖定,當一個用戶用rs對象開始修改數據時就鎖定資料庫,直到用戶用rs.Update更新記錄後,才解除鎖定;數字3表示樂觀鎖定,只有在數據寫入資料庫中時候才鎖定,不保險,慎用!數字4表示批次樂觀鎖定,只有在使用rs.UpdateBatch成批更新數據時候才鎖定數據記錄。屬於很少使用的。一般地,使用悲觀鎖定比較安全,但是效率要低些。
二、使用Recordset對象操作數據
用上面的方法打開資料庫,是利用了Recordset對象建立的資料庫連接,然後的對數據操作,也要使用該對象。
用rs.open 「數據表名」,Conn,2,2 方式打開數據表,就可以方便的對數據進行操作:
常見的操作對象:
rs.addnew :添加一個新記錄在數據表末尾。
rs.delete :刪除當前記錄。
rs.eof :判斷是否已過最後記錄。
rs.bof :判斷是否移過首記錄。
rs.update :數據修改生效。
rs(「欄位名」):當前記錄指定欄位的值。
從數據表中提取數據:用x=rs(「欄位名」)的格式,提取數據表中當前記錄指定欄位的值。
向數據表中填入或修改數據:用rs(「欄位名」)=數據值或變數的方式,修改當前記錄指定欄位的值。
三、使用SQL指令操作資料庫
在使用SQL指令對資料庫進行操作時,要用如下方式打開資料庫和操作:
<%
DbPath=Server.MapPath(資料庫名)
Set Conn=Server.CreatObject(「ADODB.Connection」)
Conn.Open 「driver=;dbq=」& DbPath
Sql=操作資料庫的指令串
Conn.Execute sql
… …
%>
四、使用DSN連接資料庫
在以上連接資料庫的方式中,都是在程序中指定資料庫,指定ODBC驅動程序。如果數據源有變化,就需要修改程序。如果在系統級別上,預先定義好數據源DSN,就可以避免這個麻煩。
在定義DSN的過程中,就已經指定好了數據源需要的ODBC驅動程序,也指定好了資料庫文件的實際路徑和名字,我們在程序中,只需要引用預先定義的數據源名DSN即可。
設定義好的DSN為test,則打開資料庫的方式為:
五、結束語
在ASP程序中,建立資料庫的連接和訪問資料庫,有很多方式和技術細節,在此難以一一詳述。實際上,對SQL Server資料庫,DBF資料庫,文本文件,電子表格文件等,也都可以很方便的打開和訪問,與對Access資料庫的訪問大同小異而已。如果說方便,Access應該是首選。如果考慮安全保密性,SQL資料庫更好些。使用系統數據源DSN的方式建立對資料庫的連接,具有更大的靈活性,也更簡便些。
⑺ 如何做到資料庫復制
不行啊,代碼如下,麻煩binbin幫我看看:Acad::ErrorStatus
es;AcDbDatabase
*
pDb;AcApDocument*
pDoc;pDoc=acDocManager->curDocument();es=acDocManager->lockDocument(pDoc);pDb=acdbHostApplicationServices()->workingDatabase();AcDbDatabase
*acDb;acDb=new
AcDbDatabase(true,true);acDb->readDwgFile("d:\\test.dwg",_SH_DENYNO,true);AcGeMatrix3d
mat;mat.setToIdentity();es=pDb->insert(mat,acDb);//在這里返回值是es為eWasOpenForReades=acDocManager->unlockDocument(pDoc);我想將外部的一個資料庫實體、層復制到當前文檔中。
⑻ 怎麼復制MySQL資料庫
項目上 MySQL還原 SQL 備份經常會碰到一個錯誤如下,且通常出現在導入視圖、函數、存儲過程、事件等對象時,其根本原因就是因為導入時所用賬號並不具有SUPER 許可權,所以無法創建其他賬號的所屬對象。ERROR 1227 (42000) : Access denied; you need (at least one of) the SUPER privilege(s) for this operation常見場景:1. 還原 RDS 時經常出現,因為 RDS 不提供 SUPER 許可權;2. 由開發庫還原到項目現場,賬號許可權等有所不同。
處理方式:
1. 在原庫中批量修改對象所有者為導入賬號或修改SQL SECURITY為Invoker;2. 使用 mysqlmp 導出備份,然後將 SQL 文件中的對象所有者替換為導入賬號。
二、問題原因我們先來看下為啥會出現這個報錯,那就得說下 MySQL 中一個很特別的許可權控制機制,像視圖、函數、存儲過程、觸發器等這些數據對象會存在一個DEFINER和一個SQL SECURITY的屬性,如下所示:
--視圖定義CREATEALGORITHM=UNDEFINEDDEFINER=`root`@`%`SQLSECURITYDEFINERVIEWv_test
--函數定義CREATEDEFINER=`root`@`%`FUNCTION`f_test()`RETURNSvarchar(100)SQLSECURITYDEFINER
--存儲過程定義CREATEDEFINER=`root`@`%`PROCEDURE`p_test`()SQLSECURITYDEFINER
--觸發器定義CREATE DEFINER=`root`@`%` trigger t_test
--事件定義CREATE DEFINER=`root`@`%` EVENT `e_test`
DEFINER:對象定義者,在創建對象時可以手動指定用戶,不指定的話默認為當前連接用戶;
SQL SECURITY:指明以誰的許可權來執行該對象,有兩個選項,一個為DEFINER,一個為INVOKER,默認情況下系統指定為 DEFINER;DEFINER:表示按定義者的許可權來執行;INVOKER:表示按調用者的許可權來執行。
如果導入賬號具有 SUPER 許可權,即使對象的所有者賬號不存在,也可以導入成功,但是在查詢對象時,如果對象的SQL SECURITY為DEFINER,則會報賬號不存在的報錯。ERROR 1449 (HY000): The user specified as a definer ('root'@'%') does not exist
改寫好處:1. 可以避免還原時遇到 DEFINER 報錯相關問題;2. 根據輸出信息知道備份是否正常進行,防止備份中遇到元數據鎖無法獲取然後一直卡住的情況。

⑼ 怎麼將資料庫的數據復制到另一個資料庫
第一步:首先,打開並連接Sql
Server,在源資料庫Source_db(源資料庫名稱)上右鍵,然後依次點擊「編寫表腳本為」→「CREATE到」→「新查詢編輯器窗口」。
第二步:在第1步產生的編輯器中按」crtl+a「組合鍵全選內容,然後右鍵「復制「(或按"crtl+c"鍵)。
第三步:新建查詢,然後右鍵」粘貼「(或ctrl+v);如圖所示,將代碼中Source_db(源資料庫名)改為target_db(目標資料庫名)。接著右鍵單擊」執行「執行代碼。
第四步:然後,在目標資料庫的表結構中就可以看到被復制過來的表了。
表的數據內容復制:
第一步:選中目標資料庫target_db,然後點擊」任務「→」導入數據「。
第二步:進入」SQL
Server導入導出向導「,根據提示步驟操作。
第三步:選擇數據源(源資料庫)。
第四步:選擇目標(目標資料庫)、指定表復制或查詢。
第五步:選擇源表和源視圖:設置源表和目標表後,單擊「編輯映射」按鈕,在彈出窗口中選中「啟用標識插入」。(否則後面會出錯)
第六步:一直點擊「下一步」至最後完成操作。
⑽ 資料庫復制技術的市場需求
隨著應用系統的不斷發展,系統對於資料庫的依賴與日俱增,目前無論金融、政府、石化、電力、教育、醫療還是企業ERP系統,無一例外的出現了資料庫的身影,特別是大型資料庫的身影,主要集中在ORACLE、SQL SERVER和DB2,目前應用系統都需要通過資料庫來保證交易的完整性以及交易完成的效率。
但是對於很多中小企業,不可能使用資料庫大集中的方式,只能通過數據同步復制技術,利用廉價VPN技術,讓簡單寬頻技術構建起各分公司的集中交易模式,而資料庫復制技術對於中小企業的總/分部數據一致提供了技術可能