роль "APEX_ADMINISTRATOR_READ_ROLE" не существует - PullRequest
0 голосов
/ 23 декабря 2018

Работа с Oracle 11g и двумя разными компьютерами под управлением Windows 10 (чёрт)

Я пытался импортировать схему через network_link.

Я получаю некоторые ошибки, которые отсутствуют в некоторых грантах

Вот ошибка: (одна из них, другие ошибки похожи)

ORA-39083: Object type ROLE_GRANT failed to create with error:
ORA-01919: role 'APEX_ADMINISTRATOR_READ_ROLE' does not exist
Failing sql is:
 GRANT "APEX_ADMINISTRATOR_READ_ROLE" TO "GEO127" WITH ADMIN OPTION
ORA-39083: Object type ROLE_GRANT failed to create with error:
ORA-01919: role 'APEX_GRANTS_FOR_NEW_USERS_ROLE' does not exist
Failing sql is:
 GRANT "APEX_GRANTS_FOR_NEW_USERS_ROLE" TO "GEO127" WITH ADMIN OPTION

У меня вопрос ... Я знаю, что могу "создать роль", но как мне узнать, какие привилегии принадлежат этой роли?

Я пытался добавить роль, но ее нет в каталоге?

Error starting at line : 1 in command -
grant apex_administrator_read_role to geo127
Error report -
SQL Error: ORA-01919: role 'APEX_ADMINISTRATOR_READ_ROLE' does not exist
01919. 00000 -  "role '%s' does not exist"
*Cause:    Role by that name does not exist.
*Action:   Verify you are using the correct role name.

Кроме того, я посмотрел на исходную базу данных, и, думаю, APEX_ADMINISTRATOR_READ_ROLE действительно существует.Хотелось бы узнать, как продублировать это на «цели»


C:\Users\COMPUTER>impdp geo127/******** directory=data_pump_dir network_link=legacy remap_schema=geo:geo127

Import: Release 11.2.0.2.0

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
Starting "GEO127"."SYS_IMPORT_SCHEMA_01":  geo127/******** directory=data_pump_dir network_link=legacy remap_schema=geo:geo127
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 882.8 MB
Processing object type SCHEMA_EXPORT/USER
ORA-31684: Object type USER:"GEO127" already exists
Processing object type SCHEMA_EXPORT/SYSTEM_GRANT
Processing object type SCHEMA_EXPORT/ROLE_GRANT
ORA-39083: Object type ROLE_GRANT failed to create with error:
ORA-01919: role 'APEX_ADMINISTRATOR_READ_ROLE' does not exist
Failing sql is:
 GRANT "APEX_ADMINISTRATOR_READ_ROLE" TO "GEO127" WITH ADMIN OPTION
ORA-39083: Object type ROLE_GRANT failed to create with error:
ORA-01919: role 'APEX_GRANTS_FOR_NEW_USERS_ROLE' does not exist
Failing sql is:
 GRANT "APEX_GRANTS_FOR_NEW_USERS_ROLE" TO "GEO127" WITH ADMIN OPTION
Processing object type SCHEMA_EXPORT/DEFAULT_ROLE
ORA-39083: Object type DEFAULT_ROLE failed to create with error:
ORA-01919: role 'APEX_ADMINISTRATOR_READ_ROLE' does not exist
Failing sql is:
 ALTER USER "GEO127" DEFAULT ROLE "CONNECT", "RESOURCE", "DBA", "SELECT_CATALOG_ROLE", "EXECUTE_CATALOG_ROLE", "DELETE_CATALOG_ROLE", "EXP_FULL_DATABASE", "IMP_FULL_DATABASE", "LOGSTDBY_ADMINISTRATOR", "DBFS_ROLE", "AQ_ADMINISTRATOR_ROLE", "AQ_USER_ROLE", "DATAPUMP_EXP_FULL_DATABASE", "DATAPUMP_IMP_FULL_DATABASE", "ADM_PARALLEL_EXECUTE_TASK", "GATHER_SYSTEM_STATIST
Processing object type SCHEMA_EXPORT/TABLESPACE_QUOTA
Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/SEQUENCE/SEQUENCE
ORA-31684: Object type SEQUENCE:"GEO127"."HIER_SEQ" already exists
Processing object type SCHEMA_EXPORT/TABLE/TABLE
ORA-39083: Object type TABLE:"GEO127"."NOCOUNTRY" failed to create with error:
ORA-00959: tablespace 'GEOGRAPHIC' does not exist
Failing sql is:
CREATE TABLE "GEO127"."NOCOUNTRY" ("GEONAMEID" VARCHAR2(20 BYTE), "ASCIINAME" VARCHAR2(255 BYTE), "LATITUDE" VARCHAR2(20 BYTE), "LONGITUDE" VARCHAR2(20 BYTE), "FEATURE_CLASS" VARCHAR2(255 BYTE), "FEATURE_CODE" VARCHAR2(255 BYTE), "COUNTRY_CODE" VARCHAR2(255 BYTE), "CC2" VARCHAR2(255 BYTE), "ADMIN1_CODE" VARCHAR2(255 BYTE), "ADMIN2_CODE" VARCHAR2(255 BYTE), "ADMIN
ORA-39083: Object type TABLE:"GEO127"."HIERARCHY" failed to create with error:
ORA-00959: tablespace 'GEOGRAPHIC' does not exist
Failing sql is:
CREATE TABLE "GEO127"."HIERARCHY" ("PARENTID" VARCHAR2(20 BYTE), "CHILDID" VARCHAR2(20 BYTE), "TYPE" VARCHAR2(255 BYTE), "HID" NUMBER NOT NULL ENABLE) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEF
ORA-39083: Object type TABLE:"GEO127"."GEONAMES" failed to create with error:
ORA-00959: tablespace 'GEOGRAPHIC' does not exist
Failing sql is:
CREATE TABLE "GEO127"."GEONAMES" ("GEONAMEID" VARCHAR2(20 BYTE), "ASCIINAME" VARCHAR2(255 BYTE), "LATITUDE" VARCHAR2(20 BYTE), "LONGITUDE" VARCHAR2(20 BYTE), "FEATURE_CLASS" VARCHAR2(255 BYTE), "FEATURE_CODE" VARCHAR2(255 BYTE), "COUNTRY_CODE" VARCHAR2(255 BYTE), "CC2" VARCHAR2(255 BYTE), "ADMIN1_CODE" VARCHAR2(255 BYTE), "ADMIN2_CODE" VARCHAR2(255 BYTE), "ADMIN3_
ORA-39083: Object type TABLE:"GEO127"."EXPORT_JOB_SQLDEV_2712" failed to create with error:
ORA-00959: tablespace 'GEOGRAPHIC' does not exist
Failing sql is:
CREATE TABLE "GEO127"."EXPORT_JOB_SQLDEV_2712" ("PROCESS_ORDER" NUMBER, "DUPLICATE" NUMBER, "DUMP_FILEID" NUMBER, "DUMP_POSITION" NUMBER, "DUMP_LENGTH" NUMBER, "DUMP_ORIG_LENGTH" NUMBER, "DUMP_ALLOCATION" NUMBER, "COMPLETED_ROWS" NUMBER, "ERROR_COUNT" NUMBER, "ELAPSED_TIME" NUMBER, "OBJECT_TYPE_PATH" VARCHAR2(200 BYTE), "OBJECT_PATH_SEQNO" NUMBER, "O
Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type SCHEMA_EXPORT/TABLE/COMMENT
Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
Job "GEO127"."SYS_IMPORT_SCHEMA_01" completed with 9 error(s)


C:\Users\COMPUTER>

- попытался предоставить роль

Error starting at line : 1 in command -
grant apex_administrator_read_role to geo127
Error report -
SQL Error: ORA-01919: role 'APEX_ADMINISTRATOR_READ_ROLE' does not exist
01919. 00000 -  "role '%s' does not exist"
*Cause:    Role by that name does not exist.
*Action:   Verify you are using the correct role name.

1 Ответ

0 голосов
/ 23 декабря 2018

Речь идет об отчетах базы данных, связанных с Apex ( Application Express ) (https://docs.oracle.com/database/apex-18.2/HTMDB/about-utilizing-database-reporting.htm#HTMDB29893)

Если вам предоставлены APEX_ADMINISTRATOR_READ_ROLE или APEX_ADMINISTRATOR_ROLE, вы можете выполнить запрос по всему экземпляруВместо того, чтобы просто работать с рабочей областью, с которой связан пользователь схемы. Вы должны предоставить APEX_ADMINISTRATOR_READ_ROLE для мониторинга пользователей, а APEX_ADMINISTRATOR_ROLE следует использовать для администраторов экземпляров, которые управляют параметрами экземпляров, рабочими пространствами и т. д.

Похоже, что Apex установлен в исходной базе данных, хотя его нет в целевой базе данных, поэтому я бы сказал, что вы должны:

  • установить Apex в целевой базе данных
  • игнорируйте ошибку (но импортируемый вами пользователь не сможет выполнять запросы по всему экземпляру, что не имеет значения, так как в целевой базе данных в любом случае нет Apex)

[EDIT, после чтениякомментарий]

Я использую 11g XE на своем ноутбуке.с Apex 4, поэтому я проверил, существует ли там роль, которая вызывает проблемы.Видимо, это не так:

SQL> select * From all_users where username like 'APEX%';

USERNAME                          USER_ID CREATED
------------------------------ ---------- --------
APEX_040000                            47 29.05.14
APEX_PUBLIC_USER                       45 29.05.14

SQL> select * From dba_roles where role like 'APEX%';

ROLE                           PASSWORD AUTHENTICAT
------------------------------ -------- -----------
APEX_ADMINISTRATOR_ROLE        NO       NONE

SQL>

Видите?Нет APEX_ADMINISTRATOR_READ_ROLE в Apex 4.

Итак, я бы не стал делать это так драматично, как вы предлагали (переформатировать жесткий диск и начать заново) - было бы гораздо проще перейти на Apex 5.х вместо.

...