ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° FAN ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΡΡΡΡΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ±ΠΎΠ΅Π², ΡΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΡΡΠΎΠΊΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Oracle. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ PHP OCI8 ΡΠΊΡΠΈΠΏΡΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ Π² ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½Π° Π·Π°ΠΏΡΡΠ΅Π½Π°, ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ. ΠΠ΅Π· FAN, OCI8 ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π²ΠΈΡΠ½ΡΡΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ. Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ FAN Π² OCI8 ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΌΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π±Π΅Π· ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠ° ΠΎΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ Π±Π°Π·Ρ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° FAN Π΄ΠΎΡΡΡΠΏΠ½Π° Π΅ΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Oracle, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠΎΠ±ΡΠ°Π½ PHP, ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Oracle ΠΈΠΌΠ΅ΡΡ Π²Π΅ΡΡΠΈΡ 10gR2 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΡΡ.
FAN Π΄Π°ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Oracle (RAC), ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Oracle Data Guard Ρ Π±ΡΠΎΠΊΠ΅ΡΠΎΠΌ ΠΌΠΎΠ³ΡΡ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ ΡΠΎΠ±ΡΡΠΈΡ FAN ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ Π±Π°Π·Ρ Π² ΡΠ΅ΠΆΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ. ΠΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π±ΡΠ΄ΡΡ ΠΏΠΎΡΡΠ»Π°ΡΡ ΡΠΎΠ±ΡΡΠΈΡ FAN ΠΏΡΠΈ ΡΠ²ΠΎΡΠΌ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ΅.
ΠΠ»Ρ Π°ΠΊΡΠΈΠ²Π½ΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, ΠΊΠΎΠ³Π΄Π° ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ»ΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π±Π°Π·Ρ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ, Π±ΡΠ΄Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠ΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ OCI8. ΠΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ PHP-ΡΠΊΡΠΈΠΏΡΠ° Π±ΡΠ΄Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ OCI8 ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎ Π·Π°ΡΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡΠΈΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, Π·Π°ΡΡΠΎΠ½ΡΡΡΠ΅ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠ»ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊ ΡΡΠΎ Π½ΠΎΠ²ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π±Π΅Π· ΠΎΠ³Π»ΡΠ΄ΠΊΠΈ Π½Π° ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ.
ΠΡΠ»ΠΈ oci8.events ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ
On, ΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ
oci8.ping_interval ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ
Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ -1, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠΈΠΉ FAN ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ
ΠΏΡΠΎΠ°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡΠΈΠΌΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡΠΌΠΈ.
ΠΠ»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ FAN Π² PHP OCI8, ΡΠΎΠ±Π΅ΡΠΈΡΠ΅ PHP OCI8 Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ Oracle 10gR2 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΠΌΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π³ΠΈ:
SQL> execute dbms_service.modify_service(
SERVICE_NAME => 'sales',
AQ_HA_NOTIFICATIONS => TRUE);
oci8.events = On