...
- Не выбирать шаблон с данными, выбрать Custom Database
- Имя экземпляра и SID оставить одинаковыми (стандартно для локальной установки берут ORCL, либо другое короткое запоминающееся имя)
- Выключить Enterprise Manager и Automatic Maintenance
- Указать пароли для системных пользователей SYSTEM и SYS (стандартный пароль - manager)
- Выключить Flash Recovery
- Снять все опции на Database Components и "Standard Database Components". Можно оставить только Oracle JVM - с ней идет много полезных по функциональности пакетов, которые могут пригодится в разработке. Некоторые опции можно и оставить, но они существенно замедлят создание базы, Oracle XML DB занимает распространенные сетевые порты компьютера (8080) и может конфликтовать с другими приложениями.
- Уменьшить объем доступной Oracle оперативной памяти до минимума. Если вы оставили Oracle JVM, то рекомендуется оставить больше памяти (например, 1Gb), иначе возможны ошибки во время создания экземпляра, например,
ORA-00604: ошибка на рекурсивном SQL-уровне 1 ORA-04031: невозможно выделить 4096 байт разделяемой памяти ("java pool","unknown object","JOXLE^ebb55619",":SGAClass")
- Указать кодировку для cтрокового типа AL32UTF8 вместо системной по-умолчанию WIN1251. Это позволит хранить символы всех алфавитов в типе VARCHAR2
- Процесс создания экземпляра достаточно долгий и может занимать от 10 минут до нескольких часов, в зависимости от мощности машины и выбранных опций
7. Поменять параметр реестра через regedit, чтобы окончательно отучить утилиты командной строки Oracle (sqlplus) говорить по-русски с неправильной кодировкой. Целевое значение для ключа NLS_LANG
: AMERICAN_AMERICA.CL8MSWIN1251
8. После создания экземпляра Oracle необходимо сделать несколько проверок:
- Панель управления → Администрирование → Службы: Должны появиться 2 ключевых сервиса: OracleOraDB11g_home1TnsListener и OracleServiceORCL. Эти службы должны быть запущены, но, если вы не пользуетесь Oracle постоянно, для экономии памяти их можно поставить в режим "Manual" и включать при необходимости. Названия служб может меняться в зависимости от того, как вы назвали Listener и экземпляр.
- В командной строке ввести
sqlplus system/manager@ORCL
где manager - ваш пароль для аккаунта SYSTEM, указанный при создании экземпляра.
Если после этого вы получили ошибку ORA-12514: TNS:listener does not currently know of service requested in connect
, попробуйте выполнить следующие шаги:
Проверить D:\app\...\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora и tnsnames.ora существуют и содержат примерно следующее (HH2 - это имя вашей машины, либо ее IP адрес)
Блок кода title listener.ora linenumbers true collapse true # listener.ora Network Configuration File: D:\app\Eugene\product\11.2.0\dbhome_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME = D:\app\Eugene\product\11.2.0\dbhome_1) (PROGRAM = extproc) (ENVS = "EXTPROC_DLLS=ONLY:D:\app\Eugene\product\11.2.0\dbhome_1\bin\oraclr11.dll") ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = HH2)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) ) ADR_BASE_LISTENER = D:\app\Eugene
Блок кода title tnsnames.ora linenumbers true collapse true # tnsnames.ora Network Configuration File: D:\app\Eugene\product\11.2.0\dbhome_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. ORACLR_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) (CONNECT_DATA = (SID = CLRExtProc) (PRESENTATION = RO) ) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = HH2)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCL) ) )
после изменения listener.ora требуется перезапустить сервис Listener
Зайти в базу данных локально как sysdba, выполнить команду alter system register, которая зарегистрирует инстанс в listener-e форсированно и повторить попытку соединиться через Listener как описано выше.
Блок кода >sqlplus /nolog SQL*Plus: Release 11.2.0.1.0 Production on Sat Sep 30 01:35:46 2017 Copyright (c) 1982, 2010, Oracle. All rights reserved. SQL> connect / as sysdba Connected. SQL> alter system register; System altered. SQL> exit
9. Создать своего пользователя, под которым уже создавать свои таблицы и другие объекты.
Блок кода |
---|
>sqlplus.exe system/manager@ORCL
SQL*Plus: Release 11.2.0.1.0 Production on Sat Sep 30 01:37:56 2017
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning and OLAP options
SQL> create user eugene identified by mysecretpassword;
User created.
SQL> grant connect, resource to eugene;
Grant succeeded.
SQL> connect eugene/mysecretpassword@ORCL
Connected.
SQL> |