Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 SQL Developer вопросы  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 2428
Вопросы начинающего:

Установил Oracle XE 18c, SQL Developer.
Коннектнулся по адрес:порт к серверу.

Я так понимаю - это уже коннект к базе, поскольку там видны таблицы, индексы и т.д.
Т.е. такой структуры как в SQL Server нет: сервер, под ним базы?


Ок, как коннектнуться к другой базе? у меня есть адрес:порт, но так я снова попадаю на ту же базу, что и в первом случае.
Как создать новую базу? и тогда вопрос: к чему SQL Developer коннектится - к серверу или базе?
7 мар 19, 15:13    [21827417]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
tru55
Member

Откуда: СПб
Сообщений: 19725
Для начала почитай, чем отличаются в Oracle база данных от схемы
7 мар 19, 15:25    [21827435]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17146
Начните с краткого ознакомления с матчастью, она существенно отлична от привычного Вам SQL Server.

https://docs.oracle.com/database/121/ADMQS/title.htm
https://docs.oracle.com/database/121/TDDDG/title.htm
7 мар 19, 15:25    [21827439]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 6574
Ролг Хупин,

Oracle - это другой продукт

Database Concepts

Прочитайте хотя бы первую главу, чтобы разговаривать на одном языке
7 мар 19, 15:27    [21827443]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 2428
На клиентской машине (Win10) установил SQL Manager for Oracle, пускаю, пишет

автор
SQL*Net not properly installed
OracleHomeKey:
OracleHomeDir:

Possible reason: Oracle client is not installed or it cannot be loaded


Перед тем скачал клиент, развернул в фолдере.
7 мар 19, 18:30    [21827647]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 2428
Ролг Хупин
На клиентской машине (Win10) установил SQL Manager for Oracle, пускаю, пишет

автор
SQL*Net not properly installed
OracleHomeKey:
OracleHomeDir:

Possible reason: Oracle client is not installed or it cannot be loaded


Перед тем скачал клиент, развернул в фолдере.


вопрос снят, эта хрень оказалась 32 бит
7 мар 19, 18:48    [21827652]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 2428
Пустил SQL Manager на клиенте, создал в нем новую базу (так у них называется пункт в в меню), сработало, но теперь припопытке коннектнуться к ней и другой утилитой, например, SQL Developer - пишет ошибку

автор
ORA-12154: TNS: could not resolve the connect identifier specified


Может мне надо пойти на сервер и отредактировать tnsnames.ora?
8 мар 19, 12:05    [21827877]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
-2-
Member

Откуда:
Сообщений: 14420
Ролг Хупин
Пустил ... создал ... коннектнуться ... Может мне надо пойти на...
Если цель изучать оракл, столь изощренные пути не способствуют достижению результата.
8 мар 19, 12:17    [21827889]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 2428
-2-
Ролг Хупин
Пустил ... создал ... коннектнуться ... Может мне надо пойти на...
Если цель изучать оракл, столь изощренные пути не способствуют достижению результата.


согласен, но какие? я начал с простого: хочу создать тестовую базу, в ней свои таблицы, процедуры и т.д.
8 мар 19, 12:22    [21827893]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 6574
Ролг Хупин,

Если с английским нормально, то docs.oracle.com
2 Day DBA/Developer

Сильно устаревшее и с ошибками
Первые шаги Oracle

По Вашему вопросу (очень кратко):
База данных - согласованный набор файлов и системных процессов (см. Oracle Concepts)
набор системных процессов + набор файлов = экземпляр/instance
С одним набором файлов могут работать несколько связанный экземпляров (Real Application Cluster)

база имеет числовой идентификатор (DBID) и имя (db_name) - не обязательно уникальное, уникальное db_unique_name.
Например, report snapshot database (открытая для отчетов копия боевой базы) или standby database (накатываемая резервная копия), имеют другое db_unique_name, хотя db_name одно.

db_name - в общем случае внутренний идентификатор, хотя, по умолчанию, при простой инсталляции, он совпадает с db_unique_name, ORACLE_SID, service_name

ORACLE_SID - именованный идентификатор процессов экземпляра, в рамках набора процессов ОС одного сервера, должен быть уникальным. Для unix - это как правило набор процессов вида:
$ ps -fu oracle | grep _repo | head -10
  oracle 22978     1   0   Feb 13 ?           0:39 ora_d000_repo
  oracle 23525     1   0   Feb 13 ?           1:21 ora_qm02_repo
  oracle 22972     1   0   Feb 13 ?           1:07 ora_pxmn_repo
  oracle 22884     1   0   Feb 13 ?         225:14 ora_vktm_repo
  oracle 23030     1   0   Feb 13 ?           4:30 ora_arc0_repo
  oracle 22952     1   0   Feb 13 ?           4:57 ora_smon_repo
  oracle 22966     1   0   Feb 13 ?           1:56 ora_lreg_repo
  oracle 22878     1   0   Feb 13 ?          26:04 ora_psp0_repo
  oracle 22874     1   0   Feb 13 ?          10:27 ora_pmon_repo
  oracle 22922     1   0   Feb 13 ?           6:35 ora_dbw2_repo


Для windows - Это будет именем службы:
OracleServiceXXXX


service_name - имя, под которым экземпляр регистрируется в tns listener (чуть ниже). Одна база/экземпляр могут иметь несколько service_name. Например для обслуживания нескольких приложений. Что позволяет например менять приоритеты обслуживания, в зависимости от того по какому service_name подключился клиент.

tns listener - сервер SQL*NET, где SQL*NET - сетевой протокол работы с oracle

под unix - это процесс tnslsnr, под windows служба
Oracle<Oracle Home name>TNS<Listener Name>


команда lsnrctl status [listener_name] на сервере oracle
позволяет (если позволяют права), получить список зарегистрированных на этом listener service_name (баз)

## get ip/hostname and port
$ lsnrctl status | grep DESCR
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.0.0.0)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))

## get services
$ lsnrctl status | grep Service
Services Summary...
Service "altrepo.fors.ru" has 1 instance(s).
Service "repo" has 1 instance(s).
Service "repo2" has 1 instance(s).
Service "repoXDB" has 1 instance(s).


Для подключения, используется connect string:
user/password@tns
user@tns
...

где tns - может быть в виде:

host:port/service_name - (easy connect, если настроен)
tnsalias - имя tns alias из файла tnsnames.ora. 
"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbhost.domain.local)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=repo)))" - явное описание  tns в командной строке


Обычно это %ORACLE_HOME%\network\admin\tnsnames.ora (Внимание! У Вас может быть несколько ORACLE_HOME и соответственно можно запутаться какой из файлов сейчас использует Ваш клиент.
Но, в зависимости от системы/настроек, может использоваться файл
%TNS_ADMIN%\tnsnames.ora
$TNS_ADMIN/tnsnames.ora
/etc/tnsnames.ora
/var/opt/oracle/tnsnames.ora
$ORACLE_HOME/network/admin/tnsnames.ora
%ORACLE_HOME%\network\admin\tnsnames.ora

пример tnsalias:
repo=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbhost.domain.local)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=repo)))

примеры:

sqlplus scott/tiger@repo
sqlplus scott@dbhost/repo
sqlplus scott/tiger@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbhost.domain.local)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=repo)))"
8 мар 19, 22:54    [21828188]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17146
Vadim Lejnin, хороший опус, но следовало бы явно отделить мух от котлет, а конфигурацию сервера от конфигурации клиента.
"С нуля" не всегда очевидно, где заканчивается первое и начинается второе.
9 мар 19, 00:05    [21828205]     Ответить | Цитировать Сообщить модератору
 Re: SQL Developer вопросы  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 2428
Vadim Lejnin,

Спасибо за развернутое объяснение!
11 мар 19, 13:14    [21829083]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить