как подключиться к оракулу rac в asp.net - PullRequest
1 голос
/ 22 ноября 2011

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

Теперь у нас есть четыре узла в RAC с физическими IP-адресами:

192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4

Также существует четыре виртуальных IP-адреса:

192.168.1.11
192.168.1.22
192.168.1.33
192.168.1.44

И мы можем подключить 192.168.1.1, чтобы использовать консоль Oracle Database EMC.

Теперь я не знаю, как установить строку подключения в моем web.config приложения asp.net.

Поскольку, когда мы используем единственный экземпляр, мы просто устанавливаем строку следующим образом:

provider=MSDAORA;data source=ORCL;user id=xx;password=xx

"ORCL" здесь - это имя локальной сетевой службы, которое можно найти в tnsnames.ora (машине, на которой работает IIS).

Есть идеи?

UPDATE:

Я использую Oledb API.

1 Ответ

3 голосов
/ 22 ноября 2011

Вы не упомянули адрес SCAN, поэтому, я полагаю, вы не используете 11gR2.

Поскольку ваш источник данных OLE ссылается на идентификатор соединения ORCL, именно здесь вы захотите настроить балансировку нагрузки RAC и отработку отказа в определении tnsnames.ora ORCL.

Что-то подобное должно сделать это:

ORCL=
(DESCRIPTION=
  (LOAD_BALANCE=ON)
  (FAILOVER=ON)
  (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.11)(PORT=1521))
                (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.22)(PORT=1521))
                (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.33)(PORT=1521))
                (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.44)(PORT=1521))
              )
  (CONNECT_DATA=(FAILOVER_MODE=(TYPE=SELECT)
                               (METHOD=BASIC)
                )
                (SERVICE_NAME=ORCL)
  )
)

Надеюсь, это поможет.

...