К основному контенту

Сообщения

Сообщения за ноябрь, 2018

ORA-01439: column to be modified must be empty to change datatype

Я столкнулся с этим сообщением об ошибке, когда я пытался запустить инструкцию ALTER TABLE MODIFY Версия базы данных Oracle   11.2.0.1, я пытался запустить команду   ALTER TABLE MODIFY   и получил эту ошибку. Попробую показать причину этой ошибки и шаги решения ее. 1. Создадим таблицу cities : CREATE TABLE cities ( city_id number ( 10 ) , city_name varchar2 ( 150 ) ) ; 2.  Добавим в нее данные : INSERT into cities ( city_id , city_name ) values ( 34 , 'ISTANBUL' ) ; 3. Изменим поле в таблице : ALTER TABLE cities MODIFY city_id varchar2 ( 15 ) ; Получаем ошибку : ORA-01439: column to be modified must be empty to change datatype You can only modify the datatype of a column whose values are all NULL. Вы можете поменять тип колонки если она пустая NULL . Решение: UPDATE cities SET city_id = NULL ; или DELETE FROM cities или Truncate table cities Теперь вы можете сменить тип поля.

[FATAL] PRVF-0002 : Could not retrieve local nodename

Во время установки базы данных Oracle 12 c   на Oracle Enterprise Linux появилась следующая ошибка: [oracle@pandora database]$ ./runInstaller -silent -responseFile /home/oracle/database/response/kdb.rsp Starting Oracle Universal Installer... Checking Temp space: must be greater than 500 MB.    Actual 45136 MB     Passed Checking swap space: must be greater than 150 MB.    Actual 4031 MB     Passed Preparing to launch Oracle Universal Installer from /tmp/OraInstall2013-06-27_12-11-01AM. Please wait ... [oracle@pandora database]$ [FATAL] PRVF-0002 : Could not retrieve local nodename A log of this session is currently saved as: [..] Но когда я проверил имя хоста, все, кажется, все в порядке, я даже получил полное доменное имя: [oracle@pandora database]$ hostname pandora.krenger.local Так в чем проблема? Oracle Universal Installer ( OUI ) выполняет некоторые тщательные проверки, включая обратный поиск имени хоста. В моем случае у меня не было надлежащ

Как настроить RMAN для ежедневного копирования

RMAN может резервировать почти все во время выполнения, включая в себя данные, архивные журналы, даже control file и spfile .            Для сохранения текущей конфигурации RMAN для повторного создания конфигурации в той же или другой базе данных в будущем. Здесь я представляю подход, который сочетает в себе скрипты, crontab и RMAN CLI для достижения цели. A . Создайте исполняемый файл для выполнения RMAN . [oracle@test ~]$ vi save_rman_config.sh #!/bin/bash . ~/.bash_profile rman target / << EOF | grep ^CONFIGURE > ~/rman_config_`date +"%Y%m%d"`.rman   show all;   exit; EOF Обратите внимание, что я сохраняю только строки, начинающиеся с CONFIGURE , чтобы сделать весь вывод исполняемым для RMAN CLI и войти в ежедневный файл. B. Добавление прав на выполнение [oracle@test ~]$ chmod u+x save_rman_config.sh C . Добавление ежедневного запуска в crontab [oracle@test ~]$ crontab -e * 4 * * * /home/oracle/save_rman_config.sh [orac