精品专区-精品自拍9-精品自拍三级乱伦-精品自拍视频-精品自拍视频曝光-精品自拍小视频

網站建設資訊

NEWS

網站建設資訊

sqlserver分發,sqlserver分發缺少索引

怎樣同步兩個SQLSERVER的數據

同步兩個SQLServer數據庫 如何同步兩個sqlserver數據庫的內容?程序代碼可以有版本管理cvs進行同步管理,可是數據庫同步就非常麻煩,只能自己改了一個后再去改另一個,如果忘記了更改另一個經常造成兩個數據庫的結構或內容上不一致.各位有什么好的方法嗎? 一、分發與復制 用強制訂閱實現數據庫同步操作. 大量和批量的數據可以用數據庫的同步機制處理: // 說明: 為方便操作,所有操作均在發布服務器(分發服務器)上操作,并使用推模式 在客戶機器使用強制訂閱方式。 二、測試通過 1:環境 服務器環境: 機器名稱: zehuadb 操作系統:windows 2000 server 數據庫版本:sql 2000 server 個人版 客戶端 機器名稱:zlp 操作系統:windows 2000 server 數據庫版本:sql 2000 server 個人版 2:建用戶帳號 在服務器端建立域用戶帳號 我的電腦管理-本地用戶和組-用戶-建立 username:zlp userpwd:zlp 3:重新啟動服務器mssqlserver 我的電腦-控制面版-管理工具-服務-mssqlserver 服務 (更改為:域用戶帳號,我們新建的zlp用戶 .\zlp,密碼:zlp) 4:安裝分發服務器 a:配置分發服務器 工具-復制-配置發布、訂閱服務器和分發-下一步-下一步(所有的均采用默認配置) b:配置發布服務器 工具-復制-創建和管理發布-選擇要發布的數據庫(sz)-下一步-快照發布-下一步-選擇要發布的內容-下一步-下一步-下一步-完成 c:強制配置訂閱服務器(推模式,拉模式與此雷同) 工具-復制-配置發布、訂閱服務器和分發-訂閱服務器-新建-sql server數據庫-輸入客戶端服務器名稱(zlp)-使用sql server 身份驗證(sa,空密碼)-確定-應用-確定 d:初始化訂閱 復制監視器-發布服務器(zehuadb)-雙擊訂閱-強制新建-下一步-選擇啟用的訂閱服務器-zlp-下一步-下一步-下一步-下一步-完成 5:測試配置是否成功 復制監視器-發布衿?zehuadb)-雙擊sz:sz-點狀態-點立即運行代理程序 查看: 復制監視器-發布服務器(zehuadb)-sz:sz-選擇zlp:sz(類型強制)-鼠標右鍵-啟動同步處理 如果沒有錯誤標志(紅色叉),恭喜您配置成功 6:測試數據 在服務器執行: 選擇一個表,執行如下sql: insert into wq_newsgroup_s select '測試成功',5 復制監視器-發布服務器(zehuadb)-sz:sz-快照-啟動代理程序 -zlp:sz(強制)-啟動同步處理 去查看同步的 wq_newsgroup_s 是否插入了一條新的記錄 測試完畢,通過。 7:修改數據庫的同步時間,一般選擇夜晚執行數據庫同步處理 (具體操作略) :d /* 注意說明: 服務器一端不能以(local)進行數據的發布與分發,需要先刪除注冊,然后新建注冊本地計算機名稱 卸載方式:工具-復制-禁止發布-是在"zehuadb"上靜止發布,卸載所有的數據庫同步配置服務器 注意:發布服務器、分發服務器中的sqlserveragent服務必須啟動 采用推模式: "d:\microsoft sql server\mssql\repldata\unc" 目錄文件可以不設置共享 拉模式:則需要共享~! */ 少量數據庫同步可以采用觸發器實現,同步單表即可。 三、配置過程中可能出現的問題 在sql server 2000里設置和使用數據庫復制之前,應先檢查相關的幾臺sql server服務器下面幾點是否滿足: 1、mssqlserver和sqlserveragent服務是否是以域用戶身份啟動并運行的(.\administrator用戶也是可以的) 如果登錄用的是本地系統帳戶local,將不具備網絡功能,會產生以下錯誤: 進程未能連接到distributor '@server name' (如果您的服務器已經用了sql server全文檢索服務, 請不要修改mssqlserver和sqlserveragent服務的local啟動。 會照成全文檢索服務不能用。請換另外一臺機器來做sql server 2000里復制中的分發服務器。) 修改服務啟動的登錄用戶,需要重新啟動mssqlserver和sqlserveragent服務才能生效 2、檢查相關的幾臺sql server服務器是否改過名稱(需要srvid=0的本地機器上srvname和datasource一樣) 在查詢分析器里執行: use master select srvid,srvname,datasource from sysservers 如果沒有srvid=0或者srvid=0(也就是本機器)但srvname和datasource不一樣, 需要按如下方法修改: use master go -- 設置兩個變量 declare @serverproperty_servername varchar(100), @servername varchar(100) -- 取得windows nt 服務器和與指定的 sql server 實例關聯的實例信息 select @serverproperty_servername = convert(varchar(100), serverproperty('servername')) -- 返回運行 microsoft sql server 的本地服務器名稱 select @servername = convert(varchar(100), @@servername) -- 顯示獲取的這兩個參數 select @serverproperty_servername,@servername --如果@serverproperty_servername和@servername不同(因為你改過計算機名字),再運行下面的 --刪除錯誤的服務器名 exec sp_dropserver @server=@servername --添加正確的服務器名 exec sp_addserver @server=@serverproperty_servername, @local='local' 修改這項參數,需要重新啟動mssqlserver和sqlserveragent服務才能生效。 這樣一來就不會在創建復制的過程中出現18482、18483錯誤了。 3、檢查sql server企業管理器里面相關的幾臺sql server注冊名是否和上面第二點里介紹的srvname一樣 不能用ip地址的注冊名。 (我們可以刪掉ip地址的注冊,新建以sql server管理員級別的用戶注冊的服務器名) 這樣一來就不會在創建復制的過程中出現14010、20084、18456、18482、18483錯誤了。 4、檢查相關的幾臺sql server服務器網絡是否能夠正常訪問 如果ping主機ip地址可以,但ping主機名不通的時候,需要在 winnt\system32\drivers\etc\hosts (win2000) windows\system32\drivers\etc\hosts (win2003) 文件里寫入數據庫服務器ip地址和主機名的對應關系。 例如: 127.0.0.1 localhost 192.168.0.35 oracledb oracledb 192.168.0.65 fengyu02 fengyu02 202.84.10.193 bj_db bj_db 或者在sql server客戶端網絡實用工具里建立別名,例如: 5、系統需要的擴展存儲過程是否存在(如果不存在,需要恢復): sp_addextendedproc 'xp_regenumvalues',@dllname ='xpstar.dll' go sp_addextendedproc 'xp_regdeletevalue',@dllname ='xpstar.dll' go sp_addextendedproc 'xp_regdeletekey',@dllname ='xpstar.dll' go sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll' 接下來就可以用sql server企業管理器里[復制]- 右鍵選擇 -[配置發布、訂閱服務器和分發]的圖形界面來配置數據庫復制了。 下面是按順序列出配置復制的步驟: 1、建立發布和分發服務器 [歡迎使用配置發布和分發向導]-[選擇分發服務器]-[使"@servername"成為它自己的分發服務器,sql server將創建分發數據庫和日志] -[制定快照文件夾]- [自定義配置] - [否,使用下列的默認配置] - [完成] 上述步驟完成后, 會在當前"@servername" sql server數據庫里建立了一個distribion庫和 一個distributor_admin管理員級別的用戶(我們可以任意修改密碼)。 服務器上新增加了四個作業: [ 代理程序歷史記錄清除: distribution ] [ 分發清除: distribution ] [ 復制代理程序檢查 ] [ 重新初始化存在數據驗證失敗的訂閱 ] sql server企業管理器里多了一個復制監視器, 當前的這臺機器就可以發布、分發、訂閱了。 我們再次在sql server企業管理器里[復制]- 右鍵選擇 -[配置發布、訂閱服務器和分發] 我們可以在 [發布服務器和分發服務器的屬性] 窗口- [發布服務器] - [新增] - [確定] - [發布數據庫] - [事務]/[合并] - [確定] - [訂閱服務器] - [新增] - [確定] 把網絡上的其它sql server服務器添加成為發布或者訂閱服務器. 新增一臺發布服務器的選項: 我這里新建立的jin001發布服務器是用管理員級別的數據庫用戶test連接的, 到發布服務器的管理鏈接要輸入密碼的可選框, 默認的是選中的, 在新建的jin001發布服務器上建立和分發服務器fengyu/fengyu的鏈接的時需要輸入distributor_admin用戶的密碼。到發布服務器的管理鏈接要輸入密碼的可選框,也可以不選,也就是不需要密碼來建立發布到分發服務器的鏈接(這當然欠缺安全,在測試環境下可以使用)。 2、新建立的網絡上另一臺發布服務器(例如jin001)選擇分發服務器 [歡迎使用配置發布和分發向導]-[選擇分發服務器] - 使用下列服務器(選定的服務器必須已配置為分發服務器) - [選定服務器](例如fengyu/fengyu) - [下一步] - [輸入分發服務器(例如fengyu/fengyu)的distributor_admin用戶的密碼兩次] - [下一步] - [自定義配置] - [否,使用下列的默認配置] - [下一步] - [完成] - [確定] 建立一個數據庫復制發布的過程: [復制] - [發布內容] - 右鍵選擇 - [新建發布] - [下一步] - [選擇發布數據庫] - [選中一個待發布的數據庫] - [下一步] - [選擇發布類型] - [事務發布]/[合并發布] - [下一步] - [指定訂閱服務器的類型] - [運行sql server 2000的服務器] - [下一步] - [指定項目] - [在事務發布中只可以發布帶主鍵的表] - [選中一個有主鍵的待發布的表] -[在合并發布中會給表增加唯一性索引和 rowguidcol 屬性的唯一標識符字段[rowguid],默認值是newid()] (添加新列將: 導致不帶列列表的 insert 語句失敗,增加表的大小,增加生成第一個快照所要求的時間) -[選中一個待發布的表] - [下一步] - [選擇發布名稱和描述] - - [下一步] - [自定義發布的屬性] - [否,根據指定方式創建發布] - [下一步] - [完成] - [關閉] 發布屬性里有很多有用的選項:設定訂閱到期(例如24小時) 設定發布表的項目屬性: 常規窗口可以指定發布目的表的名稱,可以跟原來的表名稱不一樣。 下圖是命令和快照窗口的欄目 ( sql server 數據庫復制技術實際上是用insert,update,delete操作在訂閱服務器上重做發布服務器上的事務操作 看文檔資料需要把發布數據庫設成完全恢復模式,事務才不會丟失 但我自己在測試中發現發布數據庫是簡單恢復模式下,每10秒生成一些大事務,10分鐘后再收縮數據庫日志, 這期間發布和訂閱服務器上的作業都暫停,暫停恢復后并沒有丟失任何事務更改 ) 發布表可以做數據篩選,例如只選擇表里面的部分列: 例如只選擇表里某些符合條件的記錄, 我們可以手工編寫篩選的sql語句: 發布表的訂閱選項,并可以建立強制訂閱: 成功建立了發布以后,發布服務器上新增加了一個作業: [ 失效訂閱清除 ] 分發服務器上新增加了兩個作業: [ jin001-dack-dack-5 ] 類型[ repl快照 ] [ jin001-dack-3 ] 類型[ repl日志讀取器 ] 上面藍色字的名稱會根據發布服務器名,發布名及第幾次發布而使用不同的編號 repl快照作業是sql server復制的前提條件,它會先把發布的表結構,數據,索引,約束等生成到發布服務器的os目錄下文件 (當有訂閱的時候才會生成, 當訂閱請求初始化或者按照某個時間表調度生成) repl日志讀取器在事務復制的時候是一直處于運行狀態。(在合并復制的時候可以根據調度的時間表來運行) 建立一個數據庫復制訂閱的過程: [復制] - [訂閱] - 右鍵選擇 - [新建請求訂閱] - [下一步] - [查找發布] - [查看已注冊服務器所做的發布] - [下一步] - [選擇發布] - [選中已經建立發布服務器上的數據庫發布名] - [下一步] - [指定同步代理程序登錄] - [當代理程序連接到代理服務器時:使用sql server身份驗證] (輸入發布服務器上distributor_admin用戶名和密碼) - [下一步] - [選擇目的數據庫] - [選擇在其中創建訂閱的數據庫名]/[也可以新建一個庫名] - [下一步] - [允許匿名訂閱] - [是,生成匿名訂閱] - [下一步] - [初始化訂閱] - [是,初始化架構和數據] - [下一步] - [快照傳送] - [使用該發布的默認快照文件夾中的快照文件] (訂閱服務器要能訪問發布服務器的repldata文件夾,如果有問題,可以手工設置網絡共享及共享權限) - [下一步] - [快照傳送] - [使用該發布的默認快照文件夾中的快照文件] - [下一步] - [設置分發代理程序調度] - [使用下列調度] - [更改] - [例如每五分鐘調度一次] - [下一步] - [啟動要求的服務] - [該訂閱要求在發布服務器上運行sqlserveragent服務] - [下一步] - [完成] - [確定] 成功建立了訂閱后,訂閱服務器上新增加了一個類別是[repl-分發]作業(合并復制的時候類別是[repl-合并]) 它會按照我們給的時間調度表運行數據庫同步復制的作業。 3、sql server復制配置好后, 可能出現異常情況的實驗日志: 1.發布服務器斷網,sql server服務關閉,重啟動,關機的時候,對已經設置好的復制沒有多大影響 中斷期間,分發和訂閱都接收到沒有復制的事務信息 2.分發服務器斷網,sql server服務關閉,重啟動,關機的時候,對已經設置好的復制有一些影響 中斷期間,發布服務器的事務排隊堆積起來 (如果設置了較長時間才刪除過期訂閱的選項, 繁忙發布數據庫的事務日志可能會較快速膨脹), 訂閱服務器會因為訪問不到發布服務器,反復重試 我們可以設置重試次數和重試的時間間隔(最大的重試次數是9999, 如果每分鐘重試一次,可以支持約6.9天不出錯) 分發服務器sql server服務啟動,網絡接通以后,發布服務器上的堆積作業將按時間順序作用到訂閱機器上: 會需要一個比較長的時間(實際上是生成所有事務的insert,update,delete語句,在訂閱服務器上去執行) 我們在普通的pc機上實驗的58個事務100228個命令執行花了7分28秒. 3.訂閱服務器斷網,sql server服務關閉,重啟動,關機的時候,對已經設置好的復制影響比較大,可能需要重新初試化 我們實驗環境(訂閱服務器)從18:46分意外停機以, 第二天8:40分重啟動后, 已經設好的復制在8:40分以后又開始正常運行了, 發布服務器上的堆積作業將按時間順序作用到訂閱機器上, 但復制管理器里出現快照的錯誤提示, 快照可能需要重新初試化,復制可能需要重新啟動.(我們實驗環境的機器并沒有進行快照初試化,復制仍然是成功運行的) 4、刪除已經建好的發布和定閱可以直接用delete刪除按鈕 我們最好總是按先刪定閱,再刪發布,最后禁用發布的順序來操作。 如果要徹底刪去sql server上面的復制設置, 可以這樣操作: [復制] - 右鍵選擇 [禁用發布] - [歡迎使用禁用發布和分發向導] - [下一步] - [禁用發布] - [要在"@servername"上禁用發布] - [下一步] - [完成禁用發布和分發向導] - [完成] 我們也可以用t-sql命令來完成復制中發布及訂閱的創建和刪除, 選中已經設好的發布和訂閱, 按屬標右鍵可以[生成sql腳本]。(這里就不詳細講了, 后面推薦的網站內有比較詳細的內容) 當你試圖刪除或者變更一個table時,出現以下錯誤 server: msg 3724, level 16, state 2, line 1 cannot drop the table 'object_name' because it is being used for replication. 比較典型的情況是該table曾經用于復制,但是后來又刪除了復制。 處理辦法: select * from sysobjects where replinfo '0' sp_configure 'allow updates', 1 go reconfigure with override go begin transaction update sysobjects set replinfo = '0' where replinfo '0' commit transaction go rollback transaction go sp_configure 'allow updates', 0 go reconfigure with override go

我們提供的服務有:成都做網站、網站制作、微信公眾號開發、網站優化、網站認證、潮陽ssl等。為上1000家企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的潮陽網站制作公司

sql server 2008分發服務器配置在哪

下面為您介紹的sqlserver分發服務器的設置方法可以將將分發服務器設置在和發布服務器不同的機器上,該方法供您參考學習,希望對您有所啟迪。

一般來說,是把發布服務器和分發服務器放在同一臺SERVER上,但是當發布服務器的壓力比較大的時候,就可以選擇將sqlserver分發服務器設置在和發布服務器不同的機器上。

具體配置如下:

首先要在分發服務器上的sqlserver中將本機配置為sqlserver分發服務器,在選擇發布服務器的時候,要添加上遠程的實際的發布服務器,這里又涉及到之前一篇文章里提過的服務器名稱上,如果要從分發服務器連接發布服務器,使用的服務器名稱不能是sqlserver要求的標準的server\instance的話,那就得在分發服務器上做這個標準的別名,然后設置上管理密碼。

然后在發布服務器上,配置sqlserver分發服務器的時候,選擇使用遠程服務器,然后連接到分發服務器(如果分發服務器沒有做之前做的配置的話,這里就會提示分發服務器管理員做設置什么的,總之就是過不去了),然后輸入之前在分發服務器中輸入的管理密碼。

最后要說的主要是這個快照代理的運行賬戶,這個賬戶可以設置為在sqlserver分發服務器上的windows賬戶同,分發服務器名\用戶名,此賬戶要對在分發服務器上的快照文件夾有寫權限,還要設置此用戶可以登錄分發服務器的sqlserver并屬于分發數據庫的db_owner角色,最后因為真正的發布數據庫在發布服務器上,如果連接到發布服務器使用通過模擬進程賬戶,則還需要在發布服務器上配置一個和分發服務器上運行快照代理相同的windows賬戶,并對使它屬于發布數據庫的db_owner角色。當然這可能只是配置的一種方案,根本問題還是在于配置的windows賬戶能對所需要訪問的資源擁有相應的權限。

sqlserver配置分發顯示5184錯誤

在sqlserver 2008 r2 上面做發布/訂閱的時候,服務器上發布時出現:”sqlserver 無法將xxx配置為分發服務器 “錯誤。由于查詢的兩個servername 不一樣、sqlserver 在配置分發服務器的時候不能明確知道是哪個服務,導致配置分發顯示錯誤。可以利用工具-復制-配置發布、訂閱服務器和分發-訂閱服務器-新建-SQL Server數據庫-輸入客戶端服務器名稱(javaTest2)-使用SQL Server 身份驗證(sa,sa)-確定-應用-確定進行改正

如何在SQLServer2000中配置發布、分發和訂閱服務

5.0 文檔說明

除可用的新功能之外,本節還包含運行 SP3 時可能發生的問題。這些問題可能發生在從 SQL Server 2000、SQL Server 2000 SP1 或 SQL Server 2000 SP2 運行 Service Pack 進行升級的情況下。本節未描述 SP3 中提供的所有修補程序。要查看這些修補程序的完整列表,請參見 Microsoft 知識庫文章 306908。

本節中的 Analysis Services 和 Meta Data Services 部分不適用于僅 Desktop Engine 安裝。

本自述文件中未能及時提供的 SQL Server 2000 Service Pack 3 相關信息,將在 Microsoft 知識庫文章 330022 中提供。該文章可以在 Microsoft 產品技術支持服務知識庫中找到。

5.1 數據庫引擎和 Desktop Engine 增強功能

下列增強功能適用于安裝 Database Components SP3 的 SQL Server 2000 實例。也適用于安裝 Desktop Engine SP3 的 Desktop Engine 實例。

5.1.1 在 Database Components SP3 中使用中文、日語或朝鮮語字符

在 SP1 中引入

如果在運行 Windows NT 4.0 的服務器或 Windows 98 上安裝了 Database Components SP3 之后再升級到 Windows 2000,Windows 2000 升級過程將替換某些系統文件。在對中文、日語或朝鮮語字符排序時,需要使用這些系統文件。如果在 SQL Server 數據庫中使用中文、日語或朝鮮語字符,在升級到 Windows 2000 后,需重新運行 SP3 附帶的 Sqlredis.exe。有關運行 Sqlredis.exe 的更多信息,請參見 4.2 再發布 SP3 數據訪問組件。

說明 如果客戶機或服務器上沒有含中文、日語或朝鮮語字符的數據庫,則無需重新應用 Sqlredis.exe。

5.1.2 散列組已刪除

在 SP1 中引入

散列組 (hash teams) 已刪除。由于 SQL Server 2000 中的改進,使用散列組已不能獲得它們在 SQL Server 7.0 中所提供的性能好處。而且,刪除散列組使得 SQL Server 2000 更加穩定。

因此,查詢優化器不再用散列組生成查詢計劃。

在極個別的情況下,刪除散列組可能會使查詢的處理速度減慢。請分析這類查詢并確定創建更適合的索引是否能使查詢性能恢復到以前的水平。

5.1.3 添加的 Affinity Mask 開關

在 SP1 中引入

此 Service Pack 添加了兩個 Affinity Mask 開關。

Affinity Mask I/O 開關

使用此 Service Pack,可以指定使用哪些 CPU 來運行用于磁盤 I/O 操作的線程。這一開關必須與 Affinity Mask 選項結合起來使用。有關更多信息,請參見 Microsoft 產品技術支持服務知識庫中的文章 298402。有關搜索知識庫的指導,請參見 1.3 關于 SP3 的其他信息。

Affinity Mask 連接開關

使用此 Service Pack,可以將支持虛擬接口體系結構 (VIA) 的系統配置為將 SQL Server 連接從某些網卡綁定到一個處理器或一組處理器。這一開關必須與 Affinity Mask 選項結合起來使用。有關更多信息,請參見 Microsoft 產品技術支持服務知識庫中的文章 299641。

詳細內容參見

;forum_id=39


新聞名稱:sqlserver分發,sqlserver分發缺少索引
網頁地址:http://m.jcarcd.cn/article/hddjej.html
主站蜘蛛池模板: 福利导航视频 | 日本韩国三级 | 精品午夜在线观看 | 日本欧美大码 | 欧美日韩不卡在线 | 日韩欧美第一区 | 九七电影院 | 中文字幕有 | 午夜91福利 | 成人深夜视频 | 成人深夜影院 | 国产人成在线观看 | 无码精品亚 | 人人九九精品 | 午夜欧美日韩精品 | 精品欧美在 | 日本不卡中文字幕 | 国产在在线免 | 国产农村妇女特 | www色www | 欧美一级大片 | 日韩一区二区在 | 国产农村妇女特 | 国产高清免费在线 | 国产视频精 | 日本在线a∨视频网 | 国产精品一级二级 | 国产日韩3在线观看 | 九一深夜免费福利 | 国产高清视频在线 | 国产自产一二三区 | 国产免费202| 成人午夜电影 | 欧美日韩午夜大片 | 中文字幕欧美第一页 | 日本成人一a级黄 | 97久视| 人人色在线视频播放 | 精品国产色 | 精品国产天堂 | 日韩精品夜 |