Oracle

Kliens

Parancssorból: sqlplus

Grafikus felületről: Oracle SQL Developer

Verzió lekérdezése

SELECT * FROM V$VERSION;

BANNER
----------------------------------------------------------------
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Product
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

Export-import

http://workingbinary.com/2012/03/export-and-import-table-data-using-oracle-exp-and-imp/

exp username/password@database tables=table1,table2 file=table_data.dmp imp username/password@database file=table_data.dmp

Auto commit

SET autocommit imm

Adat típusok

http://www.techonthenet.com/oracle/datatypes.php

Változási napló

http://oracle-base.com/articles/10g/auditing-10gr2.php

http://docs.oracle.com/cd/B19306_01/network.102/b14266/cfgaudit.htm#i1007942

http://www.dba-oracle.com/t_audit_table_command.htm

Lépjünk be helyileg, root-ként az Oracle szerverre

Lépjünk át az adatbázis felhasználójára:

su - oracle

Jelentkezzünk be SYSDBA-ként az SQL-be:

sqlplus / as sysdba

Ellenőrizzük le az auditálási beállításokat:

SHOW PARAMETER AUDIT

NAME	TYPE	VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest	string	/home/oracle/app/oracle/admin/
testdb/adump
audit_sys_operations	boolean	TRUE
audit_syslog_level	string
audit_trail	string	DB
unified_audit_sga_queue_size	integer	1048576

Ha az audit_trail != DB, vagy az audit_sys_operations != true, akkor át kell állítanunk:

Paraméterek beállítása:

ALTER SYSTEM SET audit_trail=db SCOPE=SPFILE; ALTER SYSTEM SET audit_sys_operations=TRUE SCOPE=spfile;

Beállítások érvénybe léptetése:

SHUTDOWN IMMEDIATE STARTUP

Kapcsoljuk be az auditálást a test_user összes mozzanatára:

CONNECT sys/password AS SYSDBA AUDIT ALL BY audit_test BY ACCESS; AUDIT SELECT TABLE, UPDATE TABLE, INSERT TABLE, DELETE TABLE BY audit_test BY ACCESS; AUDIT EXECUTE PROCEDURE BY audit_test BY ACCESS;

Hozzunk létre egy felhasználót, aki eléri majd az audit logokat:

CREATE USER audit_test IDENTIFIED BY temp_password DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA UNLIMITED ON users; GRANT CONNECT TO audit_test; GRANT ALL ON dba_audit_trail TO audit_test;

Audit logok olvasásához:

SELECT * FROM ( SELECT "uid", "datetime", "message" FROM ( SELECT to_char(EXTENDED_TIMESTAMP,'YYYYMMDDHH24MiSSFF') AS "uid", extended_timestamp AS "datetime", 'OS_USERNAME=''' || os_username || ''';USERNAME=''' || username || ''';USERHOST=''' || userhost || ''';TERMINAL=''' || terminal || ''';TIMESTAMP=''' || to_char(TIMESTAMP, 'YYYY-MM-DD HH24:Mi:SS') || ''';OWNER=''' || owner || ''';OBJ_NAME=''' || obj_name || ''';ACTION=''' || action || ''';ACTION_NAME=''' || action_name || ''';NEW_OWNER=''' || new_owner || ''';NEW_NAME=''' || new_name || ''';OBJ_PRIVILEGE=''' || obj_privilege || ''';SYS_PRIVILEGE=''' || sys_privilege || ''';ADMIN_OPTION=''' || admin_option || ''';GRANTEE=''' || grantee || ''';AUDIT_OPTION=''' || audit_option || ''';SES_ACTIONS=''' || ses_actions || ''';LOGOFF_TIME=''' || logoff_time || ''';LOGOFF_LREAD=''' || logoff_lread || ''';LOGOFF_PREAD=''' || logoff_pread || ''';LOGOFF_LWRITE=''' || logoff_lwrite || ''';LOGOFF_DLOCK=''' || logoff_dlock || ''';COMMENT_TEXT=''' || comment_text || ''';SESSIONID=''' || sessionid || ''';ENTRYID=''' || entryid || ''';STATEMENTID=''' || statementid || ''';RETURNCODE=''' || returncode || ''';PRIV_USED=''' || priv_used || ''';CLIENT_ID=''' || client_id || ''';ECONTEXT_ID=''' || econtext_id || ''';SESSION_CPU=''' || session_cpu || ''';EXTENDED_TIMESTAMP=''' || to_char(extended_timestamp,'YYYY-MM-DD HH24:Mi:SS.FF') ||''';PROXY_SESSIONID=''' || proxy_sessionid || ''';GLOBAL_UID=''' || global_uid || ''';INSTANCE_NUMBER=''' || instance_number || ''';OS_PROCESS=''' || os_process || ''';TRANSACTIONID=''' || transactionid || ''';SCN=''' || scn || ''';SQL_BIND=''' || sql_bind || ''';SQL_TEXT=''' || sql_text || ''';OBJ_EDITION_NAME=''' || obj_edition_name || ''';DBID=''' || dbid || '''' AS "message" FROM DBA_AUDIT_TRAIL ) WHERE "uid" > '0' ORDER BY "uid" ) WHERE rownum <= 3000;

Szerver telepítés

http://ftp.suse.com/pub/partners/oracle/docs/11gR2_sles11_sp1_install.pdf

Problémák

ORA-011033: ORACLE initialization or shutdown in progress

http://stackoverflow.com/questions/53676/how-to-resolve-ora-011033-oracle-initialization-or-shutdown-in-progress

Felhasználó profiljának lekérdezése

Lépjünk be SYSDBA felhasználóval:

sqlplus / as sysdba

FOO_USER profiljának lekérdezése:

SELECT profile FROM DBA_USERS WHERE username = 'FOO_USER';

Jelszó lejárat kikapcsolása

Lépjünk be SYSDBA felhasználóval:

sqlplus / as sysdba

Jelszó lejárat kikapcsolása a DEFAULT profilban:

ALTER profile DEFAULT LIMIT password_life_time UNLIMITED;

Lejárat jelszó reset-elése

Lépjünk be SYSDBA felhasználóval:

sqlplus / as sysdba

FOO_USER jelszavának reset-elése:

ALTER USER FOO_USER IDENTIFIED BY FOO_PASSWORD ACCOUNT UNLOCK;