понедельник, 24 декабря 2012 г.

Как переименовать или удалить файлы с данными и файлы журналов

Как переименовать или удалить файлы с данными и файлы журналов
Для памяти я сделал перевод из этого материала: How to Rename or Move Datafiles and Logfiles [ID 115424.1]
ПРИМЕЧАНИЕ:  Чтобы переименовать или удалить файлы в табличном пространстве SYSTEM вы должны базу остановить, потому что вы не можете перевести табличное пространство SYSTEM в оффлайн.

I. ПЕРЕИМЕНОВАНИЕ ИЛИ УДАЛЕНИЕ ФАЙЛОВ ДАННЫХ ПРИ ОТКРЫТОЙ БАЗЕ ДАННЫХ

1. Определить как много файлов с данными связаны с табличном пространством.
     > SELECT FILE_NAME, STATUS FROM DBA_DATA_FILES
               WHERE TABLESPACE_NAME = 'Имя';
2. Убедитесь в том, что все файлы с данными возвращают статус AVAILABLE.
3. Сделайте табличное пространство только для чтения.
     > ALTER TABLESPACE  имя READ ONLY;
4. Убедитесь в том, что табличное пространство определено со статусом только для чтения в словаре данных.
     > SELECT TABLESPACE_NAME, STATUS FROM DBA_TABLESPACES
               WHERE TABLESPACE_NAME = 'имя';

     TABLESPACE_NAME                STATUS
    -
             ИМЯ                                   READ ONLY

5. Скопируйте файл(ы) на новое место, используя команду операционной системы copy.  После копирования сравните файлы по размеру. Убедитесь, что файлы одинакового размера.
6. После копирования файлов измените статус табличного постранства на оффлайн.
    > ALTER TABLESPACE имя OFFLINE;
 * С этого момента табличное пространство не доступно пользователям.
7. Так как табличное пространство в оффлайне, вы можете переименовать файлы. Это внесет изменения в controlfile.
     > ALTER DATABASE RENAME FILE
               '/FULL_PATH_OF_OLD_LOCATION/AND_DATAFILE_NAME.DBF'
               TO
               '/FULL_PATH_OF_NEW_LOCATION/AND_DATAFILE_NAME.DBF';
 * Вы должны будете сделать это для всех файлов данных, связанных с этим табличным пространством. Вы можете использовать такую же конструкцию ALTER TABLESPACE ... RENAME DATAFILE.
8. Если предложение alter database обработано для файлов, вы можете перевести табличное пространство в онлайн.
     > ALTER TABLESPACE имя ONLINE;
9. После этого переведите табличное пространство в статус чтение/запись.
     > ALTER TABLESPACE имя READ WRITE;
10. Проверьте статус табличного пространства. Вы можете так же проверить как обновился controlfile:
      > ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
  Эта команда выведет содержание controlfile в текстовый файл в директорию с именем  user_dump_dest.
  Конечно, можно посмотреть V$DATAFILE.
11. Удалите старые файлы командами O/S.

II. Переименование и/или удаление файлов с данными при остановленной базе

1. Если база работает, остановите ее.
2. Скопируйте файлы с данными на новое место или с новым именем на уровне операционной системы.
3. Смонтируйте базу.
      > STARTUP MOUNT                                                         
 Эта команда прочтет файл control, но не монтирует файлы с данными.   
4. Переименуйте файл внутри Oracle.
     > ALTER DATABASE RENAME FILE
               '/FULL_PATH_OF_OLD_LOCATION/AND_DATAFILE_NAME.DBF'
               TO
               '/FULL_PATH_OF_NEW_LOCATION/AND_DATAFILE_NAME.DBF';
 Выполните эту команду для всех тех файлов, которые вы меняли на уровне операционной системы.
5. Откройте базу данных.
      > ALTER DATABASE OPEN;
6. Запросите v$dbfile что бы удостовериться в правильности изменений.
      > SELECT * FROM V$DBFILE;
7. Удалите старые файлы на уровне операционной системы.

III. Переименование и/или удаление журнальных файлов(LOGFILE)

1. Остановите базу данных.
2. Скопируйте logfile на новое место или с новым именем на уровне операционной системы.
3. Смонтируйте базу данных.
      > STARTUP MOUNT
4. Переименовываем файл.
     > ALTER DATABASE RENAME FILE
               '/FULL_PATH_OF_OLD_LOCATION/AND_REDO_LOG_NAME.LOG'
               TO
               '/FULL_PATH_OF_NEW_LOCATION/AND_REDO_LOG_NAME.LOG';
5. Открываем базу данных.
      > ALTER DATABASE OPEN;
6. Удаляем старые журнальные файлы на системном уровне.

четверг, 22 ноября 2012 г.

Jython и кириллица

На свете много есть языков ... программирования.

Мне нравятся Python и его клоны. Главное это отступы! Это меня поражает. Только так нужно учиться излагать свои мысли. Программа это записанный разговор с компьютером. Надоело говорить одно и то же, напиши функцию. Не хочешь повторять то, что сделали другие, возьми библиотеку. Но главное - не бормотать.

Вот анекдот. Язык Jython, версия 2.7а2. Читаем информацию из Oracle, естественно по JDBC. Информация поступает в Юникоде. При попытке напечатать строку выдается ошибка. При попытке перекодировать ничего не помогает! А помогло вот что: строку с юникодом обрабатываем функцией str() и ВСЕ!

 

вторник, 30 октября 2012 г.

Где ты tnsnames.ora?

У администратора на машине как правило устанавливается несколько клиентов Oracle. В каждом из них надо прописать tnsnames.ora. Если происходят какие-то изменения, например поменяли порт базы), то надо менять tnsnames.ora во всех клиентах Но если вы запишете в переменной среды переменную TNS_ADMIN и дадите ей путь (например, С:\oracle), и там разместите ваш tnsnames.ora, то все продукты будут брать только его.

суббота, 13 октября 2012 г.

Копируем файл с одной машины на другую-2

Имеем два сервера: 2003 и 2008 R2.
На 2003 работает MS SQL 2005. Ежедневно выполняется BACK UP MS SQL. Файл бэкапа вырос до 100 гигабайт.
Два раза в неделю файл с бэкапом копировался на другой сервер по сети. Этот сервер работает под Windows 2008 R2. Так вот файл размером в 100 гиг не копируется: в сообщении говорится, что не хватает памяти на сервере. Что интересно, с сервера под управлением Windows 2008 R2 копирование проходит, а с Windows 2003 нет.
Просто кошмар! А в Интернете стон по поводу копирования больших файлов на Windows. Интересно, а зачем сервера, если у вас маленькие файлы?    

История битвы:
1.
Поставил в реестре сервера, на который копирую вот это значение:

Поставил на Windows 2008 R2 сервис пак SP1 - не помогло.

HKEY_LOCAL_MACHINE
 \SYSTEM
  \CurrentControlSet
   \Services
    \LanmanServer
     \Parameters
IRPStackSize DWORD 0x000000014 (20)

УВЫ.
2. На уме выполнять копию MSSQL на два файла. Тогда будет два файла по 50 гиг, ну а 50 гиг Windows копирует. 

Стихи

Мне нравится Блок - Когда ты загнан и забит

среда, 10 октября 2012 г.

Ораклоид будь бдительным!

При установке клиента 11G ставиться новая ссылка на dll библиотеки 11 версии. А 11 версия не работает с 8i.
Будьте бдительны: Oracle говорит о совместимости версий через одну. Например, 11 версия совместима с 10 и 9, 10 совместима с 9 и 8.
На компьютере могут быть несколько клиентов. Каждый ставиться в свой Oracle Home. Программное обеспечение должно уметь настраиваться на них. Плохо с OLEDB, под него в реестре есть синоним, и в нем ссылка на нужную dll. Замените путь и программа будет работать с OLEDB другого клиента. Копаться в реестре не сахар, но на не боевом компьютере можно.  
Ораклоид бди!
Жила-была база, на Oracle 8.1.7. Потом пришло светлое будущее и все переехало на 10.2. На старой базе остались "старые договора", они "долгоиграющие". Все хорошо, старая база есть не просит, но аудит в ней НЕ отключили. Настал день, табличное пространство закончилось(кстати в восьмерке только 2Гб на файл) и база сказала стоп, прежде увеличьте табличное пространство под аудит. И даже через sqlplus не пускает.

Пришлось из операционки валить базу утилитой. В init.ora ставить параметр аудита в false. Тогда база пустила администратора и он уж порубил аудит в ноль.
Ораклоид бди!
В Oracle есть два системных пользователя SYS и SYSTEM. Об этом знает каждый! Преклонение перед ими затмевает тот факт, что SYS главнее чем SYSTEM. И вот создали роль под SYS, а при создании пользователя под SYSTEM, грантовать ему эту роль не получилось - прав не хватило.
!
 

воскресенье, 7 октября 2012 г.

Как продать автомобиль?

Как сейчас продать автомобиль?
Просто.
Снимаете авто с учета для продажи. Вам выдают временный номер.
Составляете договор, примерно вот такой (Бланк) в двух экземплярах.
Подписываете его с покупателем и все. Не лишне в тех паспорте расписаться на месте старого владельца.
Передаете авто и документы покупателю и все.

X-Plane 11, 12 - любитель, Фото любитель со стажем

Постоянные читатели

Архив блога