3 простых правила о том, как защитить свой PHP код от SQL-инъекций

Осознанно или нет, но даже авторизованные пользователи Вашей системы могут попытаться каким-то образом эксплуатировать уязвимость SQL, поэтому нужно проверять абсолютно все данные, которые пользователь передаёт в систему.

Как настроить dblink в PostgreSQL

Как-то мне потребовалось настроить синхронизацию нескольких таблиц на разных серверах PostgreSQL, не настраивая при этом репликацию в классическом её виде, проанализировал я много разных вариантов и самый простой оказался синхронизация через dblink. Настройку выполняю на Debian 7.0 (Wheezy), база данных PoetgreSQL 9.1. Предполагаю, что база уже развёрнута и работает, а так же что у Вас […]

Отправка E-Mail'ов через функцию в PostgreSQL

По рабочей необходимости потребовалось реализовать отправку электронных сообщений простым вызовом функции базы данных. В наличии есть сервер PostgreSQL 9.1 и Debian 7 (Wheezy). Для начала нам понадобится поддержка языка Python в PostgreSQL: sudo apt-get install postgresql python3 postgresql-plpython3-9.1 Авторизуемся из под под пользователя postgres: sudo -u postgres psql Создадим язык для работы функции CREATE LANGUAGE […]

Как узнать SID сессии и убить её по SQL_ID

Через sqlplus выполним запрос:  select sid, serial#, machine, program from v$session where sql_id in (‘7aqfaga9ax4fv’);  Вот пример функции, которая использует указанный ранее запрос: begin for x in (  select sid, serial#, machine, program  from v$session  where sql_id in (‘7aqfaga9ax4fv’) ) loop execute immediate ‘Alter System Kill Session »’|| x.Sid || ‘,’ || x.Serial# || »’ IMMEDIATE’; end loop;end;/

Как убить зависшие процессы RMAN

Из под oracle зайти rman target / Отобразить все сессии select sid, serial#, status, logon_time from v$session where program like ‘%rman%’; Отобразить все работы пользователя SYS select username, program from v$session where username = ‘SYS’; Сгенерировать команды удаления зависших процессов rman select ‘kill -9 ‘||p.spid  kill_rman_processfrom  v$session s, v$process pwhere s.paddr=p.addrand s.program like ‘rman%’order by […]

Если не стартует Enterprise Manager на HP-UX

Залогинимся в базу из под SYS sqlplus /nologconn / as sysdba  Очистить базу от старых настроек exec DBMS_AQADM.DROP_QUEUE_TABLE(queue_table=>’SYSMAN.MGMT_NOTIFY_QTABLE’,force=>TRUE); DECLARECURSOR c1 ISSELECT owner, synonym_name nameFROM dba_synonymsWHERE table_owner = ‘SYSMAN’;BEGINFOR r1 IN c1 LOOPIF r1.owner = ‘PUBLIC’ THENEXECUTE IMMEDIATE ‘DROP PUBLIC SYNONYM ‘||r1.name;ELSEEXECUTE IMMEDIATE ‘DROP SYNONYM ‘||r1.owner||’.’||r1.name;END IF;END LOOP;END;/ DROP USER mgmt_view CASCADE;DROP ROLE mgmt_user;DROP USER sysman […]