Компиляция часто используемых рабочих команд в базе данных Oracle.

 

Компиляция часто используемых рабочих команд при входе в базу данных Oracle.

 

 

1. su – oracle не требуется и подходит для использования при отсутствии пароля администратора базы данных.В интерфейс sqlplus можно войти без пароля.

2. sqlplus /nolog или sqlplus system/manager или ./sqlplus system/manager@ora9i ;

3、SQL>подключиться/как sysdba;(как sysoper)或

подключить внутренний/оракул AS SYSDBA ;(Скотт/тигр)

conn sys/change_on_install как sysdba;

4. SQL>запуск; Запустите экземпляр базы данных.

5. Просмотрите все текущие базы данных: выберите * from v$database;

выбрать имя из базы данных v$;

desc v$databases; Просмотр полей структуры базы данных

7. Как проверить, какие пользователи имеют разрешения SYSDBA и SYSOPER:

SQL>выбрать * из V_$PWFILE_USERS;

Показать пользователя; просмотреть текущего пользователя подключения к базе данных

8. Введите тестовую базу данных: тест базы данных;

9. Просмотрите все экземпляры базы данных: выберите * from v$instance;

Например: ora9i

10. Просмотрите все таблицы данных текущей библиотеки:

SQL> выберите TABLE_NAME из всех_таблиц;

выбрать * из всех_таблиц;

SQL> выберите имя_таблицы из всех_таблиц, где имя_таблицы, например '%u%';

ТАБЛИЦА_ИМЯ

------------------------------

_default_auditing_options_

11. Просмотрите структуру таблицы: desc all_tables;

12. Отобразить все структуры полей CQI.T_BBS_XUSER:

описание CQI.T_BBS_XUSER;

13. Получите записи в таблице CQI.T_BBS_XUSER:

выберите * из CQI.T_BBS_XUSER;

14. Добавьте пользователя базы данных: (test11/test)

создать пользователя test11, идентифицированного пользователями тестового табличного пространства по умолчанию. Temporary TABLESPACE Temp;

15. Авторизация пользователя:

предоставить подключение, ресурс, dba для test11;

предоставить sysdba для test11;

совершить;

16. Измените пароль пользователя базы данных: (Измените пароли sys и system для проверки.)

изменить пользовательскую систему, идентифицированную тестом;

изменить пользовательскую систему, идентифицированную тестом;

 

Решение проблемы, связанной с невозможностью входа в консоль управления Oracle

Управление базой данных
Oracle 10G EM DB Control

Oracle 10G EM DB Control.
1. удалить файлы конфигурации и запустить репозиторий:
emca -deconfig dbcontrol db -repos drop

oracle 10g重建em db control

Oracle 10G重建EM DB Control.
1. удалить файлы конфигурации и репозиторий, запустить:
emca -deconfig dbcontrol db -repos drop

2. Войти в SQLPLUS как пользователь SYS или SYSTEM и удалить учетную запись sysman и объекты управления:
a. удалить каскад пользователя sysman;
б. удалить роль MGMT_USER;
в. удалить пользовательский каскад MGMT_VIEW;
д. удалить общедоступный синоним MGMT_TARGET_BLACKOUTS;
е. удалить общедоступный синоним SETEMVIEWUSERCONTEXT;

3. Создайте файлы конфигурации и репозиторий, запустите
emca -config dbcontrol db -repos create

При создании EM запрашиваемый номер порта должен быть номером отключения экземпляра, например 1521, а не номером порта EM (например, 1158).
номер порта EM находится здесь В файле можно найти 10.2.0/db_1/sysman/config/emca.properties.Затем

, после выполнения em, интерфейс вышел, но была выдана ошибка:
java.lang.Exception: Exception при отправке Request::null.Невозможно
использовать многие функции.Используйте, предложите войти еще раз.Я нашел решение на форуме Oracle:
http :
//forums.oracle .com /forums/ … p;messageID=1374397
Найдите следующий файл
10.2.0/db_1/ZYKNET_ORC2/sysman/config/emd По умолчанию в файле .properties
используется агентTZRegion по Гринвичу, просто измените его на свой часовой пояс, например:
AgentTZRegion=Asia/Chungking
Список часовых поясов см. в разделе: 10.2.0/db_1/sysman/admin/supportedtzs.lst
Затем перезапустите OracleDBConsole< SID>.

3. Создайте файлы конфигурации и репозиторий, запустите
emca -config dbcontrol db -repos create

При создании EM запрашиваемый номер порта должен быть номером отключения экземпляра, например 1521, а не номером порта EM (например, 1158).
номер порта EM находится здесь В файле можно найти 10.2.0/db_1/sysman/config/emca.properties.Затем

, после выполнения em, интерфейс вышел, но была выдана ошибка:
java.lang.Exception: Exception при отправке Request::null.Невозможно
использовать многие функции.Используйте, предложите войти еще раз.Я нашел решение на форуме Oracle:
http :
//forums.oracle .com /forums/ … p;messageID=1374397
Найдите следующий файл
10.2.0/db_1/ZYKNET_ORC2/sysman/config/emd По умолчанию в файле .properties
используется агентTZRegion по Гринвичу, просто измените его на свой часовой пояс, например:
AgentTZRegion=Asia/Chungking
Список часовых поясов см. в разделе: 10.2.0/db_1/sysman/admin/supportedtzs.lst
Затем перезапустите OracleDBConsole< SID>.

 

Конфигурация сети Oracle.
Все три файла конфигурации Listener.ora, sqlnet.ora и tnsnames.ora расположены в каталоге $ORACLE_HOME/network/admin.
 
1. sqlnet.ora -----Функция аналогична файлу nsswitch.conf в Linux или других Unix. Этот файл используется для определения того, как найти строку подключения, которая появляется в соединении.
Например, если наш клиент вводит
sqlplus sys/oracle@orcl,
и мой sqlnet.ora выглядит так
: SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)
, тогда клиент сначала введет tnsnames.ora файл Найдите запись orcl. Если соответствующей записи нет, попробуйте рассматривать orcl как имя хоста, разрешить его IP-адрес через сеть, а затем подключиться к экземпляру GLOBAL_DBNAME=orcl на этом IP. Конечно, orcl здесь не является хостом. Имя.
Если я буду выглядеть так
NAMES.DIRECTORY_PATH= (TNSNAMES)
, то клиент будет искать только записи orcl из tnsnames.ora. В скобках есть и другие параметры, такие как LDAP, которые обычно не используются.
2. Tnsnames.ora ------ Этот файл похож на файл хостов unix. Он обеспечивает соответствие между tnsname и именем хоста или IP. Он аналогичен только при использовании sqlnet.ora
NAMES.DIRECTORY_PATH= (TNSNAMES) Таким образом, клиент попытается использовать этот файл, только если TNSNAMES включен в порядок, в котором клиент анализирует строку подключения.
ПРОТОКОЛ: Протокол связи между клиентом и сервером, обычно TCP. Обычно это содержимое не требует изменения.
ХОСТ: имя или IP-адрес компьютера, на котором находится прослушиватель базы данных. Прослушиватель базы данных обычно находится на том же компьютере, что и сама база данных, поэтому, когда я говорю о машине, на которой расположен прослушиватель базы данных, обычно имеется в виду машина где находится база данных. В UNIX или WINDOWS вы можете получить имя компьютера, используя команду hostname в командной строке компьютера, на котором прослушивается база данных, или получить IP-адрес, используя команду ipconfig (для WINDOWS) или ifconfig (для UNIX). Следует отметить, что независимо от имени машины или IP-адреса клиент должен использовать команду ping для проверки связи с именем машины, на которой прослушивается база данных. В противном случае необходимо указать имя машины, на которой прослушивает база данных. быть добавлен в файл hosts.parse.
ПОРТ: порт, который прослушивает прослушиватель базы данных.Вы можете проверить файл Listener.ora на стороне сервера или запустить команду lnsrctl status [имя прослушивателя] в командной строке компьютера, на котором находится прослушиватель базы данных. Значение порта здесь должно совпадать с портом, который прослушивает база данных.
SERVICE_NAME: на стороне сервера после входа в систему как системный пользователь используйте команду sqlplus> showparameter service_name, чтобы просмотреть его.
ORCL соответствует локальному компьютеру, а SALES соответствует другому IP-адресу. Он также определяет, использовать ли режим основного сервера или общего сервера для подключения. Когда вы
 
хотите подключиться, введите TNSNAME
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =)
#Ниже приведены хост, порт и протокол, соответствующие этому TNSNAME
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) )
(
CONNECT_DATA =
#Использование режима выделенного сервера для подключения необходимо соответствовать режиму сервера, если нет, то он будет автоматически настроен в соответствии с режимом сервера
(SERVER = DEDICATED)
#соответствует имя_службы, SQLPLUS>;показать параметр имя_службы; для просмотра
(ИМЯ_СЕРВИСА = orcl)
)
)
#Следующее аналогично
ПРОДАЖИ =
(ОПИСАНИЕ =
(АДРЕС_СПИСОК =
(АДРЕС = (ПРОТОКОЛ = TCP)(ХОСТ = 192.168.188.219)(ПОРТ = 1521)) )
(
CONNECT_DATA =
(СЕРВЕР = ВЫДЕЛЕННЫЙ)
(ИМЯ_СЕРВИСА = продажи)
) )
Примечание
. Если база данных сервер использует MTS, клиентская программа должна использовать ссылку на базу данных. Лучше четко указать, что клиент использует выделенный метод прямого подключения, иначе вы столкнетесь со многими ОШИБКАМИ ORACLE, связанными с распределенной средой. В обычных обстоятельствах лучше использовать прямые подключения к серверу базы данных, если только количество подключений к базе данных в реальном времени не приближается к 1000.
   
3. Listener.ora ------Конфигурационный файл процесса-слушателя.О
процессе-слушателе сказать особо нечего.Он принимает приложения удаленного доступа к базе данных и передает их серверному процессу Oracle. Следовательно, если удаленное соединение не используется, процесс прослушивателя не требуется.Аналогично, закрытие процесса прослушивателя не повлияет на существующее соединение с базой данных.
Пример файла Listener.ora
#listener.ora Файл конфигурации сети: #E:/oracle/product/10.1.0/Db_2/NETWORK/ADMIN/listener.ora
# Создан инструментами настройки Oracle.
#Следующее определяет, какой экземпляр LISTENER Процесс: Предоставляемая здесь служба - ORCL, и она соответствует ORACLE_HOME и GLOBAL_DBNAME, где GLOBAL_DBNAME не требуется, если
# не использовать HOSTNAME для подключения к базе данных
 
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = boway)
(ORACLE_HOME = E:/oracle/product) /10.1.0/Db_2)
(SID_NAME = ORCL)
)
)
#Имя прослушивателя, база данных может иметь более одного прослушивателя
#Далее указывается протокол, IP-адрес, порт и т. д., которые отслеживает прослушиватель. Порт tcp1521 здесь используется, а #Used — это имя хоста
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = boway)(PORT = 1521))
)
Приведенный выше пример является самым простым, но также и наиболее распространенным. Процесс-прослушиватель предоставляет услуги для экземпляра (SID).
Операционная команда прослушивателя —
$ORACLE_HOME/bin/lsnrctl start, другие, такие как остановка, статус и т. д. Пожалуйста, обратитесь к справке после ввода lsnrctl.

Три файла, упомянутые выше, можно настроить с помощью графического инструмента конфигурации
$ORACLE_HOME/netca мастера формы
$ORACLE_HOME/netmgr.Я
больше привык к netmgr.Конфигурация
профиля — sqlnet.ora, который представляет собой
конфигурацию имени службы метода разрешения имен.Он — это
прослушиватели файла tnsnames.ora, настроенные с помощью файла Listener.ora, то есть процесса прослушивателя.
Вы можете попробовать конкретную конфигурацию, а затем просмотреть файл конфигурации.

Таким образом, создается общая структура, которая возникает
при вводе sqlplus sys/oracle@orcl
1. Запросите sqlnet.ora, чтобы узнать, как разрешается имя, и обнаружите, что это TNSNAME
2. Затем запросите файл tnsnames.ora, найдите в нем запись orcl и найдите имя хоста, порт и имя_службы.
3.Если с процессом прослушивателя проблем нет, установите соединение с процессом прослушивателя.
4. В зависимости от режима сервера, например режима выделенного сервера или режима общего сервера, прослушиватель выполняет следующее действие. По умолчанию используется режим выделенного сервера. Если проблем нет, клиент подключится к серверному процессу базы данных.
5. На данный момент сетевое соединение установлено и историческая миссия процесса-прослушивателя завершена.

#---------------
Несколько форм команд, используемых для подключения
1.sqlplus / as sysdba Это типичная аутентификация операционной системы, не требующая процесса прослушивания
2.sqlplus sys/oracle, например метод соединения может подключаться только к локальной базе данных и не требует процесса прослушивателя
3.sqlplus sys/oracle@orcl Этот метод требует, чтобы процесс прослушивателя был доступен. Чаще всего подключается через Интернет.
Вышеуказанный метод подключения не требует доступности базы данных при использовании пользователя sys или других пользователей, аутентифицированных с помощью файлов паролей. Аутентификация операционной системы не требует доступности базы данных. Обычным пользователям требуется аутентификация базы данных, поэтому база данных должна находиться в открытое состояние.
Remote_Login_Passwordfile в init.ora имеет
    три дополнительных значения, влияющих на аутентификацию:
    NONE: значение по умолчанию, указывающее, что система Oracle не использует файл паролей, а привилегированные пользователи, прошедшие аутентификацию через операционную систему, имеют разрешения SYSORA и SYSOPER
    EXCLUSIVE:
    1 Указывает, что только экземпляр базы данных может использовать файл паролей.
    2. Позволяет назначать разрешения SYSORA и SYSOPER другим пользователям, кроме SYS.
    SHARED:
    1. Указывает, что несколько экземпляров базы данных могут использовать файл паролей.
    2. Не разрешено назначать разрешения SYSORA и SYSOPER другим пользователям, кроме SYS.
    Поэтому, если вы хотите войти в систему как операционная система, Remote_Login_Passwordfile должен быть установите значение NONE
    , если пользователь для входа не является членом группы ORA_DBA и группы ORA_OPER, вам необходимо создать то же имя пользователя, что и текущий пользователь операционной системы в Oracle, чтобы войти в базу данных. является пользователем домена, имя: имя домена/ваше имя. Если это пользователь локального компьютера, имя: имя компьютера. /ваше имя. Метод создания: создайте «имя домена/ваше имя», идентифицированное
    извне
    . В
    операционной системе измените HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE. /HOME0 и добавьте AUTH_PREFIX_DOMAIN, установите значение FALSE, вы можете игнорировать имя домена при создании пользователя Oracle.Таким
    образом, инициализируйте.В ora есть параметр, который будет влиять на то, как база данных соответствует пользователю Windows и пользователю Oracle. os_authent_prefix = ""По
    умолчанию пусто. До Oracle8i такого параметра не было, и в качестве префикса имени пользователя использовался OPS$. (Максимальная длина имени пользователя Oracle ограничена 30 символами)
 
 О доменном имени (имени хоста) ) разрешение    
           /etc/hosts (UNIX)
           Или клиенту Windows/hosts (WIN98) winnt/system32/drivers/etc/hosts (WIN2000)
           необходимо записать соответствующую связь между IP-адресом сервера базы данных и именем хоста.
         
           127.0.0.1 localhost
           192.168.0.35 oracledb oracledb
           192.168.0.45 tomcat tomcat
           202.84.10.193 bj_db bj_db  
         
           Иногда после настройки первого шага псевдоним сервера базы данных tnsping работает успешно,
           но sqlplus имя пользователя/пароль@имя службы не работает, тонкая ссылка jdbc все равно не работает,       
           не забудьте выполнить этот шаг на клиенте. Причина может быть в том, что на DNS-сервере не установлена ​​соответствующая связь между IP-адресом сервера и именем хоста.
           Если в Интернете есть как частный IP-адрес, так и общедоступный IP-адрес, частный IP-адрес записывается спереди, а общедоступный IP-адрес — сзади.
           Перед редактированием лучше всего сохранить резервную копию. Также лучше использовать копирование и вставку при добавлении строки, чтобы избежать ошибок в виде пробелов или символов табуляции при редактировании хостов.
         
 В среде с несколькими базами данных ORACLE под UNIX клиенту ОС необходимо настроить следующие две переменные среды
           ORACLE_SID=appdb; экспортировать ORACLE_SID
           TWO_TASK=appdb;экспортируйте TWO_TASK
      , чтобы указать целевую базу данных по умолчанию 
 
#-------------
Может использоваться для ежедневного устранения неполадок
1. lsnrctl status Просмотр состояния процесса прослушивания на стороне сервера
LSNRCTL>;help
Доступны следующие операции
Звездочка (*) обозначает модификатор или расширенную команду:
start stop status
Services версия перезагрузить
save_config трассировка изменить_пароль
quit выйти set*
show*
LSNRCTL> ;статус
: em11:
2.tnsping проверяет правильность конфигурации файлов sqlnet.ora и tnsname.ora клиента, а также состояние процесса прослушивания соответствующего сервера.
C:/>tnsping orcl
Утилита TNS Ping для 32-разрядной версии Windows: версия 10.1.0.2.0 — выпуск 16 августа
2005 г., 09:36:08
Авторские права (c) Oracle, 1997, 2003. Все права защищены.
Используемые файлы параметров:
E:/oracle/product/10.1.0/Db_2/network/admin/sqlnet.ora

Используемый адаптер TNSNAMES для разрешения псевдонима
Попытка связаться (ОПИСАНИЕ = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP))
(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_
NAME = orcl)))
ОК (20 мс)
3.
SQL>;show sga Проверьте, запущен ли экземпляр
SQL>; выберите open_mode из v$database; Проверьте, открыта или смонтирована база данных.
OPEN_MODE
----------
READ WRITE

 
Пример использования имени хоста для доступа к базе данных вместо tnsname
Использование tnsname для доступа к базе данных является методом по умолчанию, но он также приносит некоторые проблемы, то есть клиенту необходимо настроить файл tnsnames.ora. Если адрес вашего сервера базы данных изменится, вам необходимо повторно отредактировать файл клиента. Доступ к базе данных через имя хоста устраняет эту проблему.
Необходимо изменить файл конфигурации
Listener.ora #Listener на стороне сервера Listener.ora

#使用host naming则不再需要tnsname.ora文件做本地解析
# Listener.ora Файл конфигурации сети: d:/oracle/product/10.1.0/db_1/NETWORK/ADMIN/listener.ora
# Создан инструментами настройки Oracle.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
# (SID_NAME = PLSExtProc)
(SID_NAME = orcl)
(GLOBAL_DBNAME = boway)
(ORACLE_HOME = d:/oracle/product/10.1.0/db_1)
# (PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = boway)(PORT = 1521)) )
)

Клиент sqlnet.ora Если вы подтвердите, что не будете использовать TNSNAME для доступа, вы можете удалить TNSNAMES
# sqlnet.ora Файл конфигурации сети: d:/oracle/product/10.1.0/db_1/NETWORK/ADMIN/sqlnet.ora
# Создано средствами конфигурации Oracle
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (HOSTNAME)
Файл Tnsnames.ora не требует настройки, и не имеет значения, удален ли он.
Ниже описана проблема с настройкой сети и операционной системы. Как мне разрешить имя моего хоста?
Вы можете подключиться к
sqlplus sys/oracle@boway
следующим образом. В этом случае сервер boway будет подключен, и прослушиватель определит, что вы хотите.Общие
решения по устранению неполадок :
TNS-12154 (ORA-12154): TNS: не удалось разрешить имя службы.Эта
ошибка указывает на то, что имя сетевой службы, используемое для подключения, не существует в tnsnames. ora, например приведенный выше tnsnames.ora Имя сетевой службы — только тестовое. Если при подключении пользователь использует sqlplus system/manager@test1, будет выдана ошибка TNS-12154.
Следует отметить, что иногда, даже если в файле tnsnames.ora есть соответствующее имя сетевой службы, при подключении с использованием имени сетевой службы возникает ошибка.Типичная конфигурация для этой ситуации следующая (на клиентской машине):
Файл sqlnet.ora:
NAMES.DIRECTORY_PATH = (TNSNAMES, ….)
NAMES.DEFAULT_DOMAIN = server.com
Файл tnsnames.ora:
test =
(DESCRIPTION=
(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT) =1521))
)
(CONNECT_DATA=(SERVICE_NAME=orcl.testserver.com)
)
)
Основной механизм работы sql*plus:
После того, как пользователь вводит sqlplus system/manager@test, программа sqlplus автоматически ищет параметр NAMES.DEFAULT_DOMAIN в файле sqlnet.ora. Если параметр существует, значение параметра будет удалено и добавлено в конец имя сетевой службы, т.е. В этом примере ввод автоматически изменяется с sqlplus system/manager@test на sqlplus system/[email protected], а затем вы переходите к файлу tnsnames.ora, чтобы найти тест. Имя сетевой службы server.com. Конечно, его невозможно найти. , поскольку в файле есть только имя тестовой сетевой службы, выдается сообщение об ошибке. Решение — закомментировать параметр NAMES.DEFAULT_DOMAIN в файле sqlnet.ora, например #NAMES.DEFAULT_DOMAIN = server.com. Если параметр NAMES.DEFAULT_DOMAIN не существует, программа sqlplus напрямую найдет имя тестовой сетевой службы в файле tnsnames.ora, затем извлечет хост, порт, tcp, имя_службы и использует эту информацию для отправки запроса на соединение правильный сервер базы данных.
Кроме того, в принципе, конфигурация в tnsnames.ora не чувствительна к регистру, но я сталкивался с ситуацией, в которой учитывается регистр, поэтому лучше всего использовать ту же сетевую службу, что и настроенная в tnsnames.ora.
ORA-12514: TNS:прослушиватель не смог разрешить SERVICE_NAME, указанный в дескрипторе соединения.Эта
ошибка указывает на то, что имя сетевой службы можно найти в tnsnames.ora, но SERVICE_NAME, указанное в tnsnames.ora, несовместимо с SERVICE_NAME на стороне сервера. Решение состоит в том, чтобы изменить SERVICE_NAME в tnsnames.ora.
Знакомство с запутанными терминами:
Имя_базы_данных: уникальный идентификатор базы данных (базы данных Oracle), которая является базой данных Oracle. Этого представления достаточно для одной базы данных, но с учетом популярности распределенных баз данных, состоящих из нескольких баз данных, такой метод управления базами данных накладывает определенную нагрузку на управление базами данных, поскольку имена каждой базы данных могут быть одинаковыми, что приводит к проблемам управления. на. Чтобы решить эту ситуацию, был введен параметр Db_domain, чтобы идентификация базы данных определялась двумя параметрами Db_name и Db_domain, что позволяет избежать путаницы в управлении, вызванной повторяющимися именами баз данных. Это похоже на управление именами машин в Интернете. Мы соединяем два параметра Db_name и Db_domain с помощью '.', чтобы представить базу данных, и называем имя базы данных Global_name, то есть оно расширяет Db_name. Параметр Db_name может состоять только из букв, цифр, «_», «#», «$» и содержать до 8 символов.
Db_domain: определяет домен, в котором расположена база данных. Имя этого домена не имеет ничего общего с «доменом» Интернета. Оно просто определяется администратором базы данных на основе фактической ситуации, чтобы лучше управлять распределенной базой данных. . Конечно, для удобства управления его можно приравнять к домену Интернет.
Global_name: уникальный идентификатор базы данных (база данных Oracle). Oracle рекомендует использовать этот метод для управления базой данных. Это значение определяется при создании базы данных, а значение по умолчанию — Db_name.Db_domain. Любые последующие изменения параметров Db_name и Db_domain в файле параметров не повлияют на значение Global_name. Если вы хотите изменить Global_name, вы можете использовать только команду ALTER DATABASE RENAME GLOBAL_NAME TO <db_name.db_domain>, чтобы изменить его, а затем изменить соответствующие параметры.
Service_name: этот параметр впервые представлен в oracle8i. До версии 8i мы использовали SID для идентификации экземпляра базы данных, однако в параллельной среде Oracle одна база данных соответствует нескольким экземплярам, ​​что требует нескольких имен сетевых служб и затрудняет настройку. Для облегчения настройки в параллельной среде был введен параметр Service_name, который соответствует базе данных, а не экземпляру, и имеет множество других преимуществ. Значением по умолчанию для этого параметра является Db_name.Db_domain, что равно Global_name. Одна база данных может соответствовать нескольким именам служб для достижения более гибкой конфигурации. Этот параметр не связан напрямую с SID, то есть имя службы не обязательно должно совпадать с SID.
Имя сетевой службы: имя сетевой службы, также известное как псевдоним базы данных. Он необходим, когда клиентская программа обращается к базе данных. Он скрывает детали того, как клиент подключается к серверу, и реализует прозрачность местоположения базы данных.
Как использовать настроенное имя сетевой службы для подключения к базе данных:
  используйте программу sqlplus для тестирования через имя тестовой сетевой службы, например sqlplus system/manager@test. Если вы не можете подключиться к базе данных, добавьте значение параметра DB_Domain базы данных Oracle после имени тестовой сетевой службы (сетевой службы) в файле tnsname.ora и проверьте его с помощью команды sqlplus> showparameter db_domain. Значение параметра db_domain здесь — testserver.com. Добавьте его в конец имени сетевой службы. Содержимое имени сетевой службы в измененном файле tnsname.ora следующее: Его следует изменить на:
 

Как
использовать настроенное имя сетевой службы для подключения к базе данных:
Используйте программу sqlplus для тестирования через имя тестовой сетевой службы, например sqlplus system/manager@test. Если вы не можете подключиться к базе данных, добавьте значение параметра NAMES.DEFAULT_DOMAIN в файле sqlnet.ora после имени тестовой сетевой службы (сетевой службы) в файле tnsname.ora. Мое значение параметра здесь — testserver.com. Изменить В конец имени сетевой службы добавлено содержимое измененного файла tnsname.ora об имени сетевой службы:
 
При каких обстоятельствах Oracle автоматически установит параметр NAMES.DEFAULT_DOMAIN?
Типичная среда, в которой это происходит, заключается в том, что «основной DNS-суффикс» установлен в клиенте Windows «Мой компьютер → Свойства → Имя компьютера → Изменить → Другое... → Основной DNS-суффикс этого компьютера», потому что в этом случае установка Когда с помощью клиента параметр NAMES.DEFAULT_DOMAIN будет автоматически установлен в файле sqlnet.ora. Это также может произойти, когда компьютер добавлен в домен и установлен клиент oracle. Если возможно, вы можете попробовать это.
 
Когда я настраиваю клиент Oracle, я обычно вручную изменяю файл tnsnames.ora, но многие люди предпочитают использовать графические инструменты для настройки. Графический инструмент в конечном итоге изменяет файл tnsnames.ora, но иногда это вызывает другие проблемы:
При настройке имени сетевой службы с помощью графического программного обеспечения Oracle для настройки «net Assistant» или «Net Configuration Assistant», если установлен «основной DNS-суффикс», но в имени сетевой службы, записанном в DNS-суффикс программного обеспечения графической конфигурации», если вы просто пишете тест, программное обеспечение графической конфигурации автоматически добавит в конце «основной DNS-суффикс», сделав его test.testserver.com, и он будет сохранен в tnsnames.ora, независимо от вашего sqlnet.ora Есть ли в файле параметр NAMES.DEFAULT_DOMAIN. В это время проходит тестовое соединение с помощью графического инструмента, но если в это время в файле sqlnet.ora нет параметра NAMES.DEFAULT_DOMAIN, при использовании сетевой службы следует использовать test.testserver.com в tnsnames.ora. Имя. Вместо теста вы вводите графическое программное обеспечение для настройки. Решение:
<1> Вы можете установить NAMES.DEFAULT_DOMAIN= testserver.com в файле sqlnet.ora. В настоящее время вы можете использовать test или test.testserver.com для подключения к базе данных.
<2> Не устанавливать NAMES в файле sqlnet.ora. Параметр .DEFAULT_DOMAIN, удалите .testserver.com в test.testserver.com в файле tnsnames.ora, после чего вы сможете использовать test для подключения к базе данных.

 

Настройте прослушиватель oracle 11g для удаленного подключения к базе данных под Linux

На стороне сервера:
1. Добавьте прослушиватель: запустите на терминале: $ORACLE_HOME/bin/netca (должен находиться в среде графического интерфейса) и следуйте инструкциям, чтобы добавить прослушиватель.

2. Добавьте службы, поддерживаемые прослушивателем: запустите на терминале: $ORACLE_HOME/bin/netmgr (под графическим интерфейсом), в: Oracle Net Configuration -> Local -> Listeners -> xxxx (только что добавленный прослушиватель), выберите «Сервисы базы данных», добавьте базу данных, которую вы хотите обслуживать. Среди них обратите внимание, что глобальное имя базы данных — это имя вашей внешней службы. Затем сохранитесь и выйдите.

3. Перезапустите прослушиватель: Запуск терминала:
$ORACLE_HOME/bin/lsnrctl stop
$ORACLE_HOME/bin/lsnrctl start

Последнее приглашение:
Служба "XXXX" имеет 1 экземпляр(ы).
Команда выполнена успешно.


Хорошо, пока на сервере сторона Настройка прослушивателя завершена.

Клиент:
1. Настройте «Конфигурацию имени локальной службы»: запустите терминал: $ORACLE_HOME/bin/netca , выберите:Настройка имени локальной службы , следуйте инструкциям. Среди них имя службы записывается с «глобальным именем базы данных», добавленным во время настройки на стороне сервера; имя хоста записывается как IP-адрес сервера (если он находится в локальной сети, также можно использовать имя сервера); наконец, укажите имя локальной службы (например, :LSN). Затем сохранитесь и выйдите.

2. Подключитесь к базе данных на сервере через sqlplus:
Формат: sqlplus имя пользователя/пароль@имя локального сервиса.

 

рекомендация

отblog.csdn.net/QWERT520/article/details/5183108
рекомендация