本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
連接到SAP資料庫 AWS Schema Conversion Tool
您可 AWS SCT 以使用從 SAP (Sybase) 調適性伺服器 Enterprise () 將結構描述、資料庫程式碼物件和應用程式程式碼轉換為下列目標:ASE
我RDS的 Amazon SQL
Amazon Aurora 我的SQL兼容版
Amazon RDS 的 MariaDB
Amazon RDS 的郵政 SQL
Amazon Aurora 郵政兼容SQL版
如需詳細資訊,請參閱下列章節:
主題
SAPASE作為來源資料庫的權限
若要使用SAPASE資料庫做為來源,請建立資料庫使用者並授與權限。要做到這一點,採取以下步驟。
建立和設定資料庫使用者
連接到來源資料庫。
使用下列命令建立資料庫使用者。為新使用者提供密碼。
USE master CREATE LOGIN min_privs WITH PASSWORD
<password>
sp_adduser min_privs grant select on dbo.spt_values to min_privs grant select on asehostname to min_privs對於要移轉的每個資料庫,授與下列權限。
USE
<database_name>
sp_adduser min_privs grant select on dbo.sysusers to min_privs grant select on dbo.sysobjects to min_privs grant select on dbo.sysindexes to min_privs grant select on dbo.syscolumns to min_privs grant select on dbo.sysreferences to min_privs grant select on dbo.syscomments to min_privs grant select on dbo.syspartitions to min_privs grant select on dbo.syspartitionkeys to min_privs grant select on dbo.sysconstraints to min_privs grant select on dbo.systypes to min_privs grant select on dbo.sysqueryplans to min_privs
連接到 SAPASE(系統庫)作為源
使用下列程序來使用連線到SAPASE來源資料庫 AWS Schema Conversion Tool。
若要連線至來SAPASE源資料庫
-
在中 AWS Schema Conversion Tool,選擇「新增來源」。
-
選擇 SAPASE,然後選擇「下一步」。
這時系統顯示「添加源」對話框。
-
在「連線名稱」中,輸入資料庫的名稱。 AWS SCT 在左側面板的樹狀結構中顯示此名稱。
-
使用資料庫認證來源 AWS Secrets Manager 或手動輸入:
-
若要使用來自 Secrets Manager 的資料庫認證,請遵循下列指示:
-
在「機AWS密」中,選擇密碼的名稱。
-
選擇填入來自 Secrets Manager 的資料庫連線對話方塊中自動填入所有值。
如需使用來自 Secrets Manager 之資料庫認證的資訊,請參閱AWS Secrets Manager 中的配置 AWS Schema Conversion Tool。
-
-
若要手動輸入SAPASE來源資料庫連線資訊,請遵循下列指示:
參數 動作 伺服器名稱 輸入來源資料庫伺服器的網域名稱系統 (DNS) 名稱或 IP 位址。
伺服器連接埠 輸入用於連接到來源資料庫伺服器的連接埠。
資料庫 輸入SAPASE資料庫的名稱。
使用者名稱和密碼 輸入要連線到來源資料庫伺服器的資料庫認證。
注意
AWS SCT 只有當您選擇連線至專案中的資料庫時,才會使用密碼來連線至來源資料庫。為了防止公開來源資料庫的密碼,預設 AWS SCT 不會儲存密碼。如果您關閉 AWS SCT 專案並重新開啟它,系統會提示您輸入密碼,以根據需要連線到來源資料庫。
使用 SSL 選擇此選項可使用安全通訊端層 (SSL) 連線到資料庫。在SSL標籤上提供下列其他資訊 (如適用):
-
驗證伺服器憑證:選取此選項可使用信任存放區驗證伺服器憑證。
-
信任存放區:包含憑證的信任存放區的位置。
儲存密碼 AWS SCT 創建一個安全的文件庫來存儲SSL證書和數據庫密碼。啟用此選項可讓您存放資料庫密碼,並快速連接到資料庫而無需輸入密碼。
SAPASE驅動路徑 輸入用於連接至來源資料庫的驅動程式路徑。如需詳細資訊,請參閱安裝JDBC驅動程式 AWS Schema Conversion Tool。
如果您在全域專案設定中存放驅動程式路徑,驅動程式路徑不會顯示在連線對話方塊中。如需詳細資訊,請參閱在全域設定中儲存驅動程式路徑。
-
-
-
選擇「測試連線」以確認是否 AWS SCT 可以連線到來源資料庫。
-
選擇「Connect」以連線到來源資料庫。
SQL作為目標資料庫的「我的」權限
「我的」SQL 作為目標所需的權限如下:
CREATE開啟 * 。 *
ALTER開啟 * 。 *
DROP開啟 * 。 *
INDEX開啟 * 。 *
REFERENCES開啟 * 。 *
SELECT開啟 * 。 *
CREATEVIEW開啟 * 。 *
SHOWVIEW開啟 * 。 *
TRIGGER開啟 * 。 *
CREATEROUTINE開啟 * 。 *
ALTERROUTINE開啟 * 。 *
EXECUTE開啟 * 。 *
INSERT,UPDATE上 AWS _ SAPASE _ EXT。 *
CREATETEMPORARYTABLES在 AWS SAPASE _ 上EXT。 *
您可以使用下列程式碼範例來建立資料庫使用者並授與權限。
CREATE USER '
user_name
' IDENTIFIED BY 'your_password
'; GRANT CREATE ON *.* TO 'user_name
'; GRANT ALTER ON *.* TO 'user_name
'; GRANT DROP ON *.* TO 'user_name
'; GRANT INDEX ON *.* TO 'user_name
'; GRANT REFERENCES ON *.* TO 'user_name
'; GRANT SELECT ON *.* TO 'user_name
'; GRANT CREATE VIEW ON *.* TO 'user_name
'; GRANT SHOW VIEW ON *.* TO 'user_name
'; GRANT TRIGGER ON *.* TO 'user_name
'; GRANT CREATE ROUTINE ON *.* TO 'user_name
'; GRANT ALTER ROUTINE ON *.* TO 'user_name
'; GRANT EXECUTE ON *.* TO 'user_name
'; GRANT INSERT, UPDATE ON AWS_SAPASE_EXT.* TO 'user_name
'; GRANT CREATE TEMPORARY TABLES ON AWS_SAPASE_EXT.* TO 'user_name
';
在上述範例中,取代 user_name
使用您的用戶的名稱。然後,更換 your_password
使用安全密碼。
若要將 Amazon 用RDS於我的SQL或 Aurora 我SQL的目標,請將lower_case_table_names
參數設定為1
。此值表示「我的SQL伺服器」會以不區分大小寫的方式處理資料表、索引、觸發程序和資料庫等物件名稱的識別碼。如果您已在目標執行個體中開啟二進位記錄功能,請將 log_bin_trust_function_creators
參數設定為 1
。在這種情況下,您不需要使用 DETERMINISTIC
、READS SQL DATA
或 NO SQL
特性來建立已儲存的函數。若要設定這些參數,請建立新的參數群組,或是修改現有的資料庫參數群組。
SAPASE轉換至我的SQL轉換設定
若SAPASE要編輯 [我的SQL轉換設定],請選擇 [設定],然後選擇 [轉換設定]。從上面的列表中選擇 SAPASE,然後選擇 SAPASE-我的SQL或 SAPASE-Amazon Aurora(我的SQL兼容)。 AWS SCT 顯示所有可用的設置SAPASE為波斯特格雷SQL轉換。
SAPASE到「我的SQL轉換設置」中 AWS SCT 包含以下選項:
-
用於限制轉換後代碼中行動項目的註釋數量。
針對所選嚴重性及更高之行動項目的已轉換程式碼中新增註解,請選擇行動項目的嚴重性。 AWS SCT 在已轉換的程式碼中加入所選嚴重性及更高嚴重性之行動項目的註解。
例如,若要將已轉換程式碼中的註解數量降到最低,請選擇僅限錯誤。若要在已轉換的程式碼中包含所有動作項目的註解,請選擇所有訊息。
-
在轉換後的代碼中使用源數據庫對象的確切名稱。
根據預設,會 AWS SCT 將資料庫物件、變數和參數的名稱轉換為小寫。若要保留這些名稱的原始大小寫,請選取「將來源資料庫物件名稱視為區分大小寫」。如果您在來源SAPASE資料庫伺服器中使用區分大小寫的物件名稱,請選擇此選項。
SQL作為目標資料庫的權限
要使用 Postgre SQL 作為目標, AWS SCT 需要相應的CREATE ON DATABASE
權限。請確定您已為每個目標 Postgre SQL 資料庫授與此權限。
若要使用轉換後的公用同義字,請將資料庫預設搜尋路徑變更為"$user", public_synonyms, public
。
您可以使用下列程式碼範例來建立資料庫使用者並授與權限。
CREATE ROLE
user_name
LOGIN PASSWORD 'your_password
'; GRANT CREATE ON DATABASEdb_name
TOuser_name
; ALTER DATABASEdb_name
SET SEARCH_PATH = "$user", public_synonyms, public;
在上述範例中,取代 user_name
使用您的用戶的名稱。然後,更換 db_name
使用您的目標數據庫的名稱。最後,更換 your_password
使用安全密碼。
在 Postgre 中SQL,只有結構描述擁有者或 a superuser
可以刪除結構描述。擁有者可以刪除結構描述和此結構描述包含的所有物件,即使結構描述的擁有者不擁有其某些物件也是如此。
當您使用不同的使用者將不同的結構描述轉換並套用至目標資料庫時,您可能會在無法卸除結構描述時 AWS SCT 收到錯誤訊息。若要避免此錯誤訊息,請使用 superuser
角色。
SAPASE至後置SQL轉換設定
若要編輯SAPASE後置SQL轉換設定,請選擇 [設定],然後選擇 [轉換設定]。從上面的列表中,選擇 SAPASE,然後選擇 SAPASE-Postgre SQL 或 SAPASE-Amazon Aurora(SQL兼容 Postgre)。 AWS SCT 顯示所有可用的設置SAPASE為波斯特格雷SQL轉換。
SAPASE以下內容 AWS SCT 包含選項中的後置SQL轉換設置:
-
用於限制轉換後代碼中行動項目的註釋數量。
針對所選嚴重性及更高之行動項目的已轉換程式碼中新增註解,請選擇行動項目的嚴重性。 AWS SCT 在已轉換的程式碼中加入所選嚴重性及更高嚴重性之行動項目的註解。
例如,若要將已轉換程式碼中的註解數量降到最低,請選擇僅限錯誤。若要在已轉換的程式碼中包含所有動作項目的註解,請選擇所有訊息。
-
要定義用於轉換後的代碼模式名稱的模板。在「結構描述名稱產生範本」中,選擇下列其中一個選項:
<source_db>— 使用SAPASE資料庫名稱作為 Postgre SQL 中的結構描述名稱。
<source_schema>— 使用SAPASE結構描述名稱作為 Postgre SQL 中的結構描述名稱。
_ <source_db><schema>— 使用SAPASE資料庫和結構描述名稱的組合做為 Postgre SQL 中的結構描述名稱。
-
在轉換後的代碼中使用源數據庫對象的確切名稱。
根據預設,會 AWS SCT 將資料庫物件、變數和參數的名稱轉換為小寫。若要保留這些名稱的原始大小寫,請選取「將來源資料庫物件名稱視為區分大小寫」。如果您在來源SAPASE資料庫伺服器中使用區分大小寫的物件名稱,請選擇此選項。
對於區分大小寫的操作, AWS SCT 可以避免將數據庫對象名稱轉換為小寫。若要這樣做,請針對區分大小寫的作業選取「避免轉換為小寫」。
-
允許在不同表中使用具有相同名稱的索引SAPASE。
在 Postgre 中SQL,您在結構描述中使用的所有索引名稱都必須是唯一的。若要確定為所有索引產 AWS SCT 生唯一的名稱,請選取「產生索引的唯一名稱」。