2015-07-02 34 views
-1

我在那有一些CRM軟件在遠程的Windows XP服務器上運行一個使用SQLAnywhere的9分貝存儲其數據的公司工作;我可以使用管理員帳戶訪問此遠程服務器。如何將在遠程服務器上運行的SQLAnywhere 9數據庫遷移到我的計算機上的mysql服務器上?

我想提取分貝爲.SQL文件,這樣就可以在本地我的機器在不影響服務器運行分貝(因爲它是爲公司的日常鍵運行分貝操作)。

我需要這個的原因是我們要測試一些商業智能軟件,我們需要這個數據庫中的數據來測試它,但是我們不知道數據庫的結構,因爲CRM軟件的開發人員並沒有這樣做,不要給我們任何文件。因此,我們需要有本地數據庫,這樣,在不影響運行的CRM,我們可以:

  1. 通過查看DDL
  2. 進行查詢,以它來獲取樣本數據瞭解結構

我研究了一下,我的問題最常見的解決方案是使用dbunload的遠程服務器到DB 卸載到一個reload.sql文件包含我需要的東西。但大多數教程上的主題提到,我必須停止數據庫第一這將是災難性的)。如果這是唯一的選擇,那麼我想我會在週末不使用CRM的時候這樣做,但我想知道是否還有其他解決方案。

如果沒有其他的解決方案,你能指點我到哪裏我可以找到適當和更安全的方式來做到這一點?

我已經研究了很多,但在這之前我從未聽說過SQLAnywhere,所以我真的需要所有我能得到的幫助。我主要關心的是做一些對CRM軟件產生消極影響的事情。

謝謝。

+0

爲什麼downvote?我認爲這是一個合法的問題,因爲在線文檔並不多,並且可以幫助未來的開發人員與使用SQLAnywhere的遺留系統一起工作。 –

+0

我不明白MySQL在哪裏,但如果你只是想要一個測試環境,然後關閉SQLAnywhere服務器,請將.db和.log文件複製到測試機器上,然後在那裏運行dbsrv9.exe或dbeng9.exe。 – beater

+0

我可以在不關閉服務器的情況下做到這一點嗎?我無法關閉它,因爲它是由公司運營的關鍵應用程序使用的。 –

回答

0

您可以通過網絡運行dbunload,您只需告訴它執行「外部」卸載。缺省情況是執行內部卸載,這隻能從數據庫服務器運行的機器上運行。

我現在沒有SQL Anywhere 9文檔來查找確切的開關,但dbunload - ?應該向你展示所有可能的開關。

編輯:
-an將創建一個新的數據庫,並從另一個數據加載數據和架構
-xi開關會做外部卸載和內部重裝。
-c參數連接到您的遠程數據庫

+0

有沒有辦法在db運行時執行它? –

+0

是的,如果你想通過網絡完成這個工作,數據庫必須運行。我建議創建一個dsn到遠程數據庫,然後你可以將dbunload指向dsn。讓我知道你是否還在使用命令行開關。 – data64

相關問題