none
利用VPN異地合併複寫問題 RRS feed

  • 問題

  • 請問
    目前有甲乙二地.利用VPN連線完成
    二地只使用工作群組沒有AD及網域
    所以在 A B C 三部SERVER的TCP/IP 中
    WHOSTS都加入另二部的IP
    讓A B C的SQL 註冊能用電腦名稱註冊並進入
    甲地有AB二部SQL SERVER 2000
    乙地有C一部SQL SERVER 2000

    我在A Server 上建立發行及散發
    並且在 A Server 的發行集屬性->訂閱->發送新增
    新增 B 及 C Server
    但目前可以同步的只有 AB二部 C的同步一直不行

    C的發送狀態都是停用.啟動同步化還是一樣
    看A的排程作業歷程 錯誤是
    作業失敗。  這個作業由 使用者 sa 叫用。要執行的最後一個步驟是步驟 3 (偵測非記錄式代理程式的結束。)。



    不知上述問題要如何處理
    謝謝~~~
    2009年8月2日 上午 06:23

解答

  • 您好
    剛才試著在 VPN的那一端重新安裝了一部 D SERVER 和 C SERVER在同一個區網中
    然後由 A SERVER 發送新增
    同步沒有問題

    ABCD的差別只有 C的SA密碼和ABD不同
    我試著將可以同步的D Servr SA密碼改掉
    同步就失敗了
    再改回和AB一樣的密碼
    同步又可以了

    如此結論
    1>是否要同步的SERVER一定要設一樣的SA密碼呢?
    2>如果<1>成立不同分公司間使用不同的SA密碼時要如何才能同步處理?

    還請撥冗解答謝謝~~

    • 已標示為解答 gpjcor 2009年8月7日 上午 01:24
    2009年8月6日 下午 01:59

所有回覆

  • Did you start sql service with same account/password on all servers? Any message in agent details?
    2009年8月3日 上午 12:51
  • 您好
    AB二部的sa密碼是一樣的
    但是C的sa密碼是不同的
    SQL服務啟動都是用本機帳戶
    A的代理程式是使用 administrator


    代理程式只有失敗沒有其它訊息
    但是作業歷程錯誤是
    作業失敗。  這個作業由 使用者 sa 叫用。要執行的最後一個步驟是步驟 3 (偵測非記錄式代理程式的結束。)。

    2009年8月3日 上午 02:20
  • Create a local windows account on all servers with same id and password, then use it to sql service.
    2009年8月3日 下午 02:33
  • 您好

    我在 ABC三部SERVER 都建了一個SQLRPL帳號,密碼也都一樣
    並且將 MSSQLSERVER 及SQLSERVERAGENT 登入帳號改為 SQLRPL
    但是 MSSQLSERVER 可以啟動
    但 SQLSERVERAGENT 却無法啟動
    會出現
    在本機電腦的SQLSERVERAGENT服務已啟動又停止‧有些服務如果無法執行操作的話會自動停止‧例如
    效能記錄及警示服務

    已確認過驗證方式為 SQL And Windows
    ABC Server 都是 Windows Server 2003 SP2 + SQL Server Sp4
    沒有使用網域
    2009年8月3日 下午 07:08
  • That account should be member of sysadmin role.
    2009年8月3日 下午 11:51
  • 您好
    我在 ABC SERVER 上
    安全性->伺服器角色->System Administrators
    的屬性中確認已將 WINDOWS帳號SQLRPL 加入了
    但還是無法啟動SQLSERVERAGENT
    2009年8月4日 下午 04:32
  • Not windows local admin, has to be in sql sysadmin server role.
    2009年8月5日 上午 12:12
  • 您好
    我是在ABC 三部SERVER 上
    的SQL SERVER Enterprise Manager中
    安全性->伺服器角色->System Administrators(sysadmin)
    的屬性中確認已將 WINDOWS帳號SQLRPL 加入了
    但還是無法啟動SQLSERVERAGENT

    2009年8月5日 上午 01:12
  • 您好
    經過反覆測試
    目前在ABC三部SERVER上建立使用者SQLRPL
    並將SQLRPL只加入 Administrators 群組並移除原有的USERS群組
    然後將 MSSQLSERVER 及SQLSERVERAGENT 登入帳號改為 SQLRPL
    已經都可以正常啟動

    但是問題又回到最初一樣
    C SQL SERVER 同步一樣有問題

    2009年8月5日 上午 05:26
  • Do you have detailed error? Anything in replication agent details? 
    2009年8月5日 下午 01:33
  • 查詢
    複寫監視器>代理程式>合併代理程式>合併代理程式歷程記錄>工作階段詳細資料
    =======================
    正在初始化
    正在連線到發行者 A
    正在連線到訂閱者 C
    合併處理無法初始化訂閱
    =======================


    合併處理無法初始化訂閱詳細錯誤資料
    =========================
    合併處理無法初始化訂閱。
    (來源: 合併複寫提供者 (代理程式); 錯誤號碼: -2147201011)
    ---------------------------------------------------------------------------------------------------------------
    You do not have the required permissions to complete the operation.
    (來源: C-SERVER (資料來源); 錯誤號碼: 14126)
    ---------------------------------------------------------------------------------------------------------------
    =========================


    以上是A Server 中回饋的訊息
    2009年8月5日 下午 03:06
  • Sounds permission issue. Did you logon as sa?

    2009年8月5日 下午 11:56

  • 不太了解您所說的
    logon as sa
    是指那一部機器

    我在A Server 執行 enterprise manager
    註冊 B 及 C Server
    B是用 SQL 帳號sa 連線
    C是用 SQL 帳號 mana(SQL帳號 有加入伺服器角色system administrators 並開啟所有資料庫存取的Public及db_owner)

    然後在 A Server
    建立發行集
    並在發行集屬性中>訂閱>發送新增
    將 B 及 C 都加入

    由於 AB是在同一個區網下所以上述動作二部機器同步沒有問題
    而 AC則是由VPN連起來的
    所以C一直無法同步

    2009年8月6日 上午 09:04
  • 您好
    剛才試著在 VPN的那一端重新安裝了一部 D SERVER 和 C SERVER在同一個區網中
    然後由 A SERVER 發送新增
    同步沒有問題

    ABCD的差別只有 C的SA密碼和ABD不同
    我試著將可以同步的D Servr SA密碼改掉
    同步就失敗了
    再改回和AB一樣的密碼
    同步又可以了

    如此結論
    1>是否要同步的SERVER一定要設一樣的SA密碼呢?
    2>如果<1>成立不同分公司間使用不同的SA密碼時要如何才能同步處理?

    還請撥冗解答謝謝~~

    • 已標示為解答 gpjcor 2009年8月7日 上午 01:24
    2009年8月6日 下午 01:59
  • Yes, should have same password for sql service account and sa on all servers since they are not in same domain.
    2009年8月6日 下午 03:49
  • 您好
    那不同分公司間有各自的SA密碼時
    不就不能利用SQL本身的複寫同步處理了
    因為各分點有不同的管理人員
    目前為了統一資料問題才利用SQL複寫功能
    並且統一由其中一個點處理
    但各點的SQL Server還是由各點管理
    如果SA密碼一樣則不是任何稍具觀念的人
    就可以在各點抓資料了嗎??
    何況是各點的管理者
    2009年8月6日 下午 04:13
  • Database is replicated, what's the difference? And all servers are in same company, right? Why can't have a dba team at company level?
    2009年8月7日 上午 12:14
  • 因為各點事實上是不同的公司負責人
    除了某些決策者是相同的外其餘都不相同
    各點間只有某些資料表是需完全一致
    例 設計資料 客服資料 產品資料....等等
    其餘資料都是各點的獨立資料
    不與其它點分享或是開放
    而各點也有自己的管理人員所以SA密碼都不相同
    之前也只是各點建立一個SQL帳號並置權限
    讓其它點可以抓取某些資料而已
    並不開放整個SERVER中的資料
    2009年8月7日 上午 12:25