DBMS_CLOUD_ADMIN 套裝軟體
本節涵蓋 Autonomous Database 隨附的 DBMS_CLOUD_ADMIN
子程式。
子程式 | 描述 |
---|---|
此程序會在您資料庫的目錄中附加檔案系統。 |
|
此程序會建立目標資料庫的資料庫連結。您可以選擇建立連到另一個 Autonomous Database 執行處理的資料庫連結、不是 Autonomous Database 的 Oracle Database,或使用 Oracle 管理的異質連線建立連到非 Oracle Database 的資料庫連結。 |
|
此程序會從資料庫的目錄切離檔案系統。 |
|
此程序會停用 Autonomous Database 執行處理的外部認證。 |
|
此程序會刪除資料庫連結。 |
|
此程序可讓使用者使用指定的外部認證配置登入 Autonomous Database 。 |
ATTACH_FILE_SYSTEM 程序
此程序會連附資料庫中的檔案系統。
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
程序會在您的資料庫中附加檔案系統,並將檔案系統的相關資訊儲存在 DBA_CLOUD_FILE_SYSTEMS
檢視中。
語法
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
(
file_system_name IN VARCHAR2,
file_system_location IN VARCHAR2,
directory_name IN VARCHAR2,
description IN VARCHAR2 DEFAULT NULL,
params IN CLOB DEFAULT NULL
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定檔案系統的名稱。 此為必要參數。 |
|
指定檔案系統的位置。 您提供給 舉例而言:
此為必要參數。 |
|
指定連接檔案系統的目錄名稱。該目錄必須存在。 此為必要參數。 |
|
(選擇性) 提供任務的描述。 |
|
提供檔案系統額外參數的 JSON 字串。
|
範例:
附加至 NFSv3 檔案系統:
BEGIN
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
(
file_system_name => 'FSS',
file_system_location => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
directory_name => 'FSS_DIR',
description => 'Source NFS for sales data'
);
END;
/
附加至 NFSv4 檔案系統:
BEGIN
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
(
file_system_name => 'FSS',
file_system_location => 'myhost.sub000445.myvcn.oraclevcn.com:/results',
directory_name => 'FSS_DIR',
description => 'Source NFS for sales data',
params => JSON_OBJECT('nfs_version' value 4)
);
END;
/
使用注意事項
-
若要執行此程序,您必須以 ADMIN 使用者身分登入,或具備
DBMS_CLOUD_ADMIN
的EXECUTE
權限。 -
您必須具有資料庫中目錄物件的
WRITE
權限,才能使用DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
附加檔案系統。 -
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
程序只能在已啟用「專用端點」的資料庫中附加專用檔案儲存服務。請參閱 OCI File Storage Service 和設定開發系統以存取資料庫以瞭解詳細資訊。
-
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
程序會在客戶的虛擬雲端網路 (VCN) 上查詢網路檔案系統主機名稱。如果找不到位置中指定的主機名稱,就會傳回錯誤"ORA-20000: Mounting NFS fails"
。 -
Oracle Cloud Infrastructure File Storage 使用 NFSv3 進行共用
-
如果您連附至非 Oracle Cloud Infrastructure File Storage 系統,此程序支援 NFSv3 和 NFSv4
-
如果您所附的 NFS 伺服器使用 NFSv3,且 NFS 版本已更新為 NFS 伺服器中的 NFSv4,則必須執行
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
,然後執行DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
(使用params
參數,將nfs_version
設為 4)。這會連附具有相符協定的 NFS,讓 Autonomous Database 可以存取 NFSv4 伺服器。若未先取消連附後再重新連附,將無法存取 NFS 伺服器,而且可能會看到如下的錯誤:"Protocol not supported"
。
CREATE_DATABASE_LINK 程序
超載表單支援下列項目:
-
當您使用
gateway_params
參數時,這可讓您建立含有 Oracle 管理的異質連線的資料庫連結,其中連結是支援的非 Oracle 資料庫。 -
使用
rac_hostnames
參數時,這可讓您從專用端點的 Autonomous Database 建立資料庫連結到目標 Oracle RAC 資料庫。在此情況下,您可以使用rac_hostnames
參數來指定目標 Oracle RAC 資料庫中一或多個個別節點的主機名稱。
語法
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
(
db_link_name IN VARCHAR2,
hostname IN VARCHAR2,
port IN NUMBER,
service_name IN VARCHAR2,
ssl_server_cert_dn IN VARCHAR2 DEFAULT,
credential_name IN VARCHAR2 DEFAULT,
directory_name IN VARCHAR2 DEFAULT,
gateway_link IN BOOLEAN DEFAULT,
public_link IN BOOLEAN DEFAULT,
private_target IN BOOLEAN DEFAULT
gateway_params IN CLOB DEFAULT);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
(
db_link_name IN VARCHAR2,
rac_hostnames IN CLOB,
port IN NUMBER,
service_name IN VARCHAR2,
ssl_server_cert_dn IN VARCHAR2 DEFAULT,
credential_name IN VARCHAR2 DEFAULT,
directory_name IN VARCHAR2 DEFAULT,
gateway_link IN BOOLEAN DEFAULT,
public_link IN BOOLEAN DEFAULT,
private_target IN BOOLEAN DEFAULT);
參數
Parameter - 參數 | 描述 |
---|---|
|
要建立之資料庫連結的名稱。 |
|
目標資料庫的主機名稱。 不允許為 當您透過提供
使用此參數或
|
|
指定目標 Oracle RAC 資料庫的主機名稱。此值是一個 JSON 陣列,可為目標 Oracle RAC 資料庫的節點指定一或多個個別的主機名稱。JSON 中可以傳送多個主機名稱,並以 "
當目標為 Oracle RAC 資料庫時,請使用 當您在 使用此參數或 不允許為 |
port |
指定目標資料庫連線的連接埠。 當您使用
|
|
要連結之資料庫的
當您使用 |
ssl_server_cert_dn |
在伺服器憑證中發現的 DN 值. Oracle 管理的異質連線會預先設定一個包含大多數共同信任根憑證和中繼 SSL 憑證的公事包。當您提供 未使用公事包之 Autonomous Database 目標的公用端點連結: 在沒有公事包 (TLS) 的情況下連線至公用端點上的 Autonomous Database 目標:
沒有公事包的專用端點連結: 在沒有公事包的專用端點上連線至 Oracle Database:
|
credential_name |
使用 |
directory_name |
Oracle 管理的異質連線會預先設定一個包含大多數共同信任根憑證和中繼 SSL 憑證的公事包。提供 未使用公事包之 Autonomous Database 目標的公用端點連結: 在沒有公事包 (TLS) 的情況下連線至公用端點上的 Autonomous Database :
此外,若要使用 TCP 連線至 Autonomous Database , 沒有公事包的專用端點連結: 連線至專用端點上沒有公事包的目標 Oracle Database:
|
gateway_link |
指示是否將資料庫連結建立到其他 Oracle Database 或 Oracle Database Gateway。 如果 如果 當 此參數的預設值為 |
public_link |
指示是否將資料庫連結建立為公用資料庫連結。 若要在此參數設為 此參數的預設值為 |
private_target |
當資料庫連結存取需要在 VCN DNS 伺服器中解析的主機名稱時,請指定值為
此參數的預設值為 |
|
使用 舉例而言:
當 當 |
使用注意事項
-
當您指定
gateway_params
參數時,部分db_type
值支援額外的gateway_params
參數:db_type
其他 gateway_params
值google_analytics
當
db_type
為google_analytics
時,您指定的證明資料必須是 Google OAuth 證明資料 (gcp_oauth2)
請參閱 CREATE_CREDENTIAL 程序瞭解詳細資訊。google_bigquery
當
db_type
為google_bigquery
時,您指定的證明資料必須是 Google OAuth 證明資料 (gcp_oauth2)
請參閱 CREATE_CREDENTIAL 程序瞭解詳細資訊。當
db_type
為google_bigquery
時,參數project
有效。此參數指定google_bigquery
的專案名稱,而且是必要的。使用
SELECT
與 Google BigQuery 時所指定的表格名稱必須以引號括住。舉例而言:SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK
hive
當
db_type
為hive
時,參數http_path
有效。如果需要,此參數會指定 HttpPath 值來連線至 Hive 執行處理。salesforce
當
db_type
為salesforce
時,參數security_token
有效。安全性權杖是區分大小寫的英數字元代碼。必須提供security_token
值才能存取 Salesforce。舉例而言:gateway_params => JSON_OBJECT( 'db_type' value 'salesforce', 'security_token' value 'security_token_value' )
請參閱重設您的安全記號瞭解詳細資訊。
servicenow
若要連線至 ServiceNow 並取得資料,您必須提供閘道參數
directory_name
和file_name
。這些參數指定將 JSON 回應對應至關聯式模型的模型檔案 (REST 組態檔)。模型檔案指定用於處理 JSON 回應的端點、表格對應以及 HTTP 回應代碼。如需詳細資訊,請參閱模型檔案語法和範例模型檔案。將
gateway_params
參數與db_type
servicenow
搭配使用時,有兩種支援的選項:-
基本認證:您必須提供值為
'servicenow'
的gateway_params
參數db_type
,並提供directory_name
和file_name
參數以及使用者名稱 / 密碼類型證明資料。 -
OAuth 2.0 認證:您必須提供
gateway_params
參數db_type
與值'servicenow'
,以及directory_name
、file_name
和token_uri
參數,以及 OAuth 類型證明資料。
directory_name
參數指定具有 ServiceNow REST 組態檔的目錄。您可以使用下列方式建立此目錄:create or replace directory servicenow_dir as 'SERVICENOW_DIR';
取得 ServiceNow REST 組態檔並將其下載至指定的目錄。舉例而言:
exec DBMS_CLOUD.get_object('servicenow_dir_cred', 'https://objectstorage.<...>/servicenow.rest','SERVICENOW_DIR');
將
file_name
值設為您下載的 REST 組態檔 "servicenow.rest
" 名稱。接著,您可以使用具有基本認證或 OAuth2。0 的 ServiceNow REST 組態檔。
snowflake
當
db_type
為SNOWFLAKE
時,選擇性參數:role
、schema
和warehouse
有效。這些值指定不同於預設值的綱要、角色或倉儲值。舉例而言:gateway_params => JSON_OBJECT( 'db_type' value 'snowflake', 'role' value 'ADMIN', 'schema' value 'PUBLIC', 'warehouse' value 'TEST' )
-
-
使用
private_target
參數時,請注意,資料庫會從 Autonomous Database 連結至專用端點上的資料庫服務,僅支援商業區域和美國政府區域。所有商業區域預設都會啟用此功能。
美國政府區域預設會對新佈建的資料庫啟用此功能。
針對專用端點上的現有美國政府資料庫,如果您想要建立從 Autonomous Database 到美國政府區域目標的資料庫連結,請至 Oracle Cloud 支援提出服務要求,並要求在政府區域資料庫連結功能中啟用專用端點。
美國政府區域包括:
- 連線至非 Oracle 資料庫時,只有透過公用 IP 或公用主機名稱存取目標資料庫時,才支援資料庫連結。
-
若要以 ADMIN 以外的使用者執行
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
,您必須將EXECUTE
和CREATE DATABASE LINK
權限授與該使用者。例如,以 ADMIN 身分執行下列命令,將權限授與atpc_user
:GRANT EXECUTE ON DBMS_CLOUD_ADMIN TO atpc_user; GRANT CREATE DATABASE LINK TO atpc_user;
此外,當您在 ADMIN 綱要以外的綱要中建立「資料庫連結」(例如在名為
atpc_user
的綱要中) 時,atpc_user
綱要必須擁有您與DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
搭配使用的證明資料。 -
使用
directory_name
參數指定的每個目錄只能有一個有效的公事包檔案。您一次只能將一個cwallet.sso
上傳至您為公事包檔案選擇的目錄。這表示在目錄中有cwallet.sso
,您只能建立資料庫連結到該目錄中公事包有效的資料庫。若要使用多個含有資料庫連結的cwallet.sso
檔案,您必須建立其他目錄,並將每個cwallet.sso
放在不同的目錄中。請參閱在 Autonomous Database 中建立目錄,瞭解建立目錄的相關資訊。
-
若要建立連到 Autonomous Database 的資料庫連結,請將來源資料庫上的
GLOBAL_NAMES
設為FALSE
(非 Autonomous Database)。SQL> ALTER SYSTEM SET GLOBAL_NAMES = FALSE; System altered. SQL> SHOW PARAMETER GLOBAL_NAMES NAME TYPE VALUE ---------------------- ----------- ----------- global_names boolean FALSE
-
當
private_target
參數為TRUE
時,hostname
參數會指定 VCN 內部的專用主機。
範例
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL
(
credential_name => 'DB_LINK_CRED',
username => 'adb_user',
password => 'password');
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
(
db_link_name => 'SALESLINK',
hostname => 'adb.eu-frankfurt-1.oraclecloud.com',
port => '1522',
service_name => 'example_medium.atpc.example.oraclecloud.com',
ssl_server_cert_dn => 'CN=atpc.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
credential_name => 'DB_LINK_CRED');
END;
/
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL
(
credential_name => 'AWS_REDSHIFT_LINK_CRED',
username => 'NICK',
password => 'password'
);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
(
db_link_name => 'AWSREDSHIFT_LINK',
hostname => 'example.com',
port => '5439',
service_name => 'example_service_name',
ssl_server_cert_dn => NULL,
credential_name => 'AWS_REDSHIFT_LINK_CRED',
gateway_params => JSON_OBJECT('db_type' value 'awsredshift'));
END;
/
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL
(
credential_name => 'PRIVATE_ENDPOINT_CRED',
username => 'db_user',
password => 'password'
);
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
(
db_link_name => 'PRIVATE_ENDPOINT_DB_LINK',
hostname => 'exampleHostname',
port => '1521',
service_name => 'exampleServiceName',
credential_name => 'PRIVATE_ENDPOINT_CRED',
ssl_server_cert_dn => NULL,
directory_name => NULL,
private_target => TRUE);
END;
/
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL
(
credential_name => 'GOOGLE_BIGQUERY_CRED',
params => JSON_OBJECT( 'gcp_oauth2' value JSON_OBJECT(
'client_id' value 'client_id',
'client_secret' value 'client_secret',
'refresh_token' value 'refresh_token' )));
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
(
db_link_name => 'GOOGLE_BIGQUERY_LINK',
hostname => 'example.com',
port => '443',
service_name => 'example_service_name',
credential_name => 'GOOGLE_BIGQUERY_CRED',
gateway_params => JSON_OBJECT(
'db_type' value 'google_bigquery',
'project' value 'project_name1' ));
END;
/
您在搭配 Google BigQuery 或 Google Analytics 使用 SELECT
時所指定的表格名稱必須以引號括住。舉例而言:
SELECT * FROM "sales"@GOOGLE_BIGQUERY_LINK
使用 rac_hostnames
參數搭配專用端點上的目標 Oracle RAC 資料庫。
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL
(
credential_name => 'DB_LINK_CRED1',
username => 'adb_user',
password => 'password');
DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK
(
db_link_name => 'SALESLINK',
rac_hostnames => '["sales1-svr1.example.adb.us-ashburn-1.oraclecloud.com",
"sales1-svr2.example.adb.us-ashburn-1.oraclecloud.com",
"sales1-svr3.example.adb.us-ashburn-1.oraclecloud.com"]',
port => '1522',
service_name => 'example_high.adb.oraclecloud.com',
ssl_server_cert_dn => 'CN=adb.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
credential_name => 'DB_LINK_CRED1',
directory_name => 'EXAMPLE_WALLET_DIR',
private_target => TRUE);
END;
/
DETACH_FILE_SYSTEM 程序
此程序會從資料庫切離檔案系統。
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
程序會從您的資料庫分離檔案系統。此外,DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
程序也會將檔案系統的相關資訊從 DBA_CLOUD_FILE_SYSTEMS
檢視中移除。
語法
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
(
file_system_name IN VARCHAR2
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定檔案系統的名稱。 此為必要參數。 |
範例:
BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
(
file_system_name => 'FSS'
);
END;
/
使用注意事項
-
若要執行此程序,您必須以 ADMIN 使用者身分登入,或具備
DBMS_CLOUD_ADMIN
的EXECUTE
權限。 -
您必須具有資料庫中目錄物件的
WRITE
權限,才能使用DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
程序從目錄分離檔案系統。 -
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
程序只能在已啟用「專用端點」的資料庫中取消連附專用檔案儲存服務。請參閱 OCI File Storage Service 和設定開發系統以存取資料庫以瞭解詳細資訊。
-
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
程序會在客戶的虛擬雲端網路 (VCN) 上查詢網路檔案系統主機名稱。如果找不到位置中指定的主機名稱,就會傳回錯誤"ORA-20000: Mounting NFS fails"
。
DISABLE_EXTERNAL_AUTHENTICATION 程序
停用對資料庫使用外部認證配置的使用者認證。
語法
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION
;
異常狀況
例外 | 發生錯誤 | 描述 |
---|---|---|
invalid_ext_auth |
ORA-20004 |
如需詳細說明,請參閱隨附的訊息。 |
範例
BEGIN
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION
;
END;
/
PL/SQL procedure successfully completed.
DROP_DATABASE_LINK 程序
此程序會刪除資料庫連結。
語法
DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK
(
db_link_name IN VARCHAR2,
public_link IN BOOLEAN DEFAULT);
參數
Parameter - 參數 | 描述 |
---|---|
|
要刪除之資料庫連結的名稱。 |
|
若要將 此參數的預設值為 |
範例
BEGIN
DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK
(
db_link_name => 'SALESLINK' );
END;
/
使用注意事項
完成使用資料庫連結並執行 DBMS_CLOUD_ADMIN.DROP_DATABASE_LINK
之後,為了確保 Oracle 資料庫的安全性會移除所有儲存的公事包檔案。舉例而言:
-
移除物件存放區中的公事包檔案。
-
使用
DBMS_CLOUD.DELETE_FILE
從data_pump_dir
目錄或從上傳公事包檔案的使用者定義目錄中移除公事包檔案。
ENABLE_EXTERNAL_AUTHENTICATION 程序
讓使用者能夠使用外部認證配置登入資料庫。
語法
DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE,
params IN CLOB DEFAULT NULL
);
Parameter - 參數
Parameter - 參數 | 描述 |
---|---|
|
指定外部認證類型。有效值:或 。
|
|
(選擇性) 覆寫目前啟用的外部認證配置。有效值為 預設值是 |
params |
提供外部認證額外參數的 JSON 字串。
|
異常狀況
例外 | 發生錯誤 | 描述 |
---|---|---|
invalid_ext_auth |
ORA-20004 |
如需詳細說明,請參閱隨附的訊息。 |
使用注意事項
-
使用
type
OCI_IAM
時,如果 Autonomous Database 執行處理上未啟用資源主體,此常式會啟用具有DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL
的資源主體。 -
此程序會將系統參數
IDENTITY_PROVIDER_TYPE
和IDENTITY_PROVIDER_CONFIG
設為要求使用者以 Oracle Cloud Infrastructure Identity and Access Management 認證和授權存取執行處理。
範例
啟用 OCI_IAM
認證
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type => 'OCI_IAM',
force=> TRUE );
END;
/
PL/SQL procedure successfully completed.
啟用 Microsoft Active Directory 的 CMU
認證
您可以透過 params
JSON 引數傳入包含 CMU 組態檔的目錄名稱。
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type => 'CMU',
force => TRUE,
params => JSON_OBJECT('directory_name' value 'CMU_DIR'); // CMU_DIR directory object already exists
END;
/
PL/SQL procedure successfully completed.
您可透過 params
JSON 引數傳入位置 URI,指向包含 CMU 組態檔的物件儲存位置。
BEGIN
DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type => 'CMU',
params => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
'credential_name' value 'my_credential_name')
);
END;
/
PL/SQL procedure successfully completed.
啟用 Azure AD 認證
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type => 'AZURE_AD',
force => TRUE,
params => JSON_OBJECT( 'tenant_id' VALUE '....',
'application_id' VALUE '...',
'application_id_uri' VALUE '.....' ));
END;
/
PL/SQL procedure successfully completed.
啟用 Kerberos 認證
您透過 params
JSON 引數傳入包含 Kerberos 組態檔的目錄名稱。
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type => 'KERBEROS',
force => TRUE,
params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR'); // KERBEROS_DIR directory object already exists
END;
/
PL/SQL procedure successfully completed.
您透過 params
JSON 引數傳入指向包含 Kerberos 組態檔之物件儲存位置的 URI 位置:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type => 'KERBEROS',
force => TRUE,
params => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
'credential_name' value 'my_credential_name');
END;
/
您在 params
JSON 引數中以 kerberos_service_name
傳入服務名稱:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION
(
type => 'KERBEROS',
force => TRUE,
params => JSON_OBJECT('directory_name' value 'KERBEROS_DIR', // KERBEROS_DIR directory object already exists
'kerberos_service_name' value 'oracle' ));
END;
/
在您的 Autonomous Database 執行處理上啟用 Kerberos 之後,請使用下列查詢來檢視 Kerberos 服務名稱:
SELECT SYS_CONTEXT('USERENV','KERBEROS_SERVICE_NAME') FROM DUAL;
DBMS_CLOUD_ADMIN 例外
下表說明 DBMS_CLOUD_ADMIN
的例外。
例外 | 程式碼 | 描述 |
---|---|---|
invalid_service |
20001 | 指定的服務無效。 |
service_not_exist |
20002 | 指定的服務不存在。 |
default_service |
20003 | 無法修改指定的服務。 |
invalid_char_set |
20029 | 遺漏先決條件或無效 (國家) 字元集。 |
invalid_enc_key_attr |
20030 | 遺漏金鑰管理的引數或引數無效。 |
Already Using Oracle Managed Key |
000000 |
此資料庫已經使用 Oracle 管理的金鑰。您嘗試在已經使用 Oracle 管理的金鑰時呼叫程序。 |
Argument Provided for the procedure |
ORA-0000 |
程序會提供引數。預期的錯誤訊息:此程序不需要任何引數。 |