Начиная с версии
SAP_BASIS 6.40 и базы данных Oracle 9i, рекомендуется в качестве табличного пространства по-умолчанию (Default Temporary Tablespace) использовать специальное табличное пространство
PSAPTEMP. В предыдущих версиях SAP/Oracle использовалось табличное пространство
SYSTEM.
В свое время данное решение было продиктовано соображениями безопасности. Иначе, на уровне базы данных мог быть создан пользователь, у которого временным табличным пространством было бы установлено SYSTEM, и которое при использовании в данном качестве, увеличивалось бы в размерах, оставаясь таким и после окончания использования.
Утилита BRTools, начиная с версии 6.40, проверяет какое табличное пространство установлено в качестве Default Temporary Tablespace. Если это SYSTEM, то выдается сообщение об ошибке. Например, в отчете CheckDB в транзакции DB13 (рис. 1).
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9e3eHWU94HFjVkIjcWyUPuji8-Meg3NysAGArZ4HhgCBl23EGhQWGgZdb_hEhAWdCaXOUa7F3QLNA3OQOZtkpTF-BCWsU1UpIwMehFAZ5ecoysQ4Ct2askmOGhA0iKkOUh9r1BRhMvlWv/s640/41.png) |
Рис. 1. Ошибка в отчете CheckDB. |
На уровне SQLPlus проверить значение Default Temporary Tablespace можно следующим SQL-запросом (рис. 2 и 3).
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMnB69A6rFz0IyACRFbCS0UFgOddFnANYb5RKOV4G-Xa6cnBbVWzSFTWthyphenhyphenUuqxRufGOFbMairpg_raLGmANDHSaumw7f1L3whWtnkw-fu5fJ-kKw1pyn-97ZjZrJsJw7lDF_dfZXV7aIn/s1600/42.png) |
Рис. 2. Табличное пространство PSAPTEMP в качестве Default Temporary Tablespace. |
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhR7V4sXwY_cdKjFdviZJnaPS33sJMJ4E1SN73OZnE6BypM-9S3jJg3BI6g0d0IAySQg-5c5ZNknYZEpHgRHPuN6FI08rvX42T9A9r7Aq-GWDA_-Xx9jCizin7rgo4ZTBObxznIYaLXi2lX/s1600/43.png) |
Рис. 3. Табличное пространство SYSTEM в качестве Default Temporary Tablespace. |
Если система выдает ошибку (рис. 1) и проверка на уровне SQLPlus показывает, что это так и есть (рис. 3), то необходимо переназначить значение Default Temporary Tablespace согласно рекомендациям SAP следующей SQL-командой (рис. 4).
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBhF1VjtcAJ_RwYdGeD6xAwiHAoYGRM4r0408zCJg2SFDGRv0BUqMHv7c2GVXdwq3ZeBQVhoAJVABa6k8k9s1j0ISprWHHS-tAVx4vaQBiX-ddFVW3LaGJD8gutG4nbaEjoqiLmqP_Vfh0/s1600/44.png) |
Рис. 4. Изменение значения Default Temporary Tablespace на PSAPTEMP. |
После этого можно проверить, что данное табличное пространство установлено для всех пользователей базы данных (рис. 5).
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3PAQ0CqXOo9X29DwnxD442K-FID0z4dUzlEea3JdBx3g9SqZ1DbHkwcpy3b-jPEIpdaq5R_jlxWJphSOMh7wpeHNTJfnqxFwpJPBinCEaNP7iBcufUj3WQYyw6enofzjLwsbsksTc0_yj/s1600/45.png) |
Рис. 5. Проверка, что для всех пользователей базы данных установлена PSAPTEMP. |
Вячеслав, а может знаете, у меня почему-то в dbacockpit PSAPTEMP всегда пуст. Будто его никто не использует. А так же при копировании манданта с большими таблицами возникает проблема - система не может их скопировать, т.к. нет места в "пустом" PSAPTEMP.
ОтветитьУдалитьИгорь, добрый вечер.
УдалитьТо что PSAPTEMP у вас пуст, не должно вас пугать или удивлять. Временные объекты, которые там создаются, не учитываются, как таблицы или индексы, и довольно быстро удаляются после использования. А по поводу копирования манданта посмотрите ноты на данную тему. Начните, например, вот с этой - SAP note # 489690 - CC INFO: Copying large production clients.
Спасибо, Вячеслав!
ОтветитьУдалить