Wednesday, March 26, 2014

Oracle Database 12c'de Hata Ayıklama Yetkisi

Yazdığımız PL/SQL yordamlarında hata ayıklama için hata ayıklama yetkisinin Oracle yöneticisi tarafından açılmış olması gerekir. Bu işlem için Oracle Database 11g'de aşağıdaki komutların çalıştırılması yeterli olur:

SQL> grant debug connect session to hr;

Grant succeeded.

SQL> grant debug any procedure to hr;

Grant succeeded.

Oracle Database 12c'de ise hata ayıklama için bu yetkilerin verilmesi yeterli olmaz. Java Debug Wire Protocol (JDWP) ayarlarının ilgili kullanıcı, kullanıcının bağlı olduğu IP adresi ve port'u kapsayacak şekilde yapılandırılması gerekir. Bu yapılandırma basit şekilde aşağıdaki gibi gerçeklenebilir:
BEGIN
 DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
 host => '160.75.26.42',
 lower_port => 1500,
 upper_port => 1516,
 ace => xs$ace_type(privilege_list => xs$name_list('jdwp'),
 principal_name => 'hr',
 principal_type => xs_acl.ptype_db)
 );
END;
/