Oracle

oracle的GUI: 1. oracle sql developer(officer) 2. pl/sql 3. toad

oracle的CLI: 1. sqlplus

Oracle命令

sys是oracle默认管理员权限

1
$ sqlplus / as sysdba

system是oracle的默认最高权限,默认密码是manager,需要sys授权才能登陆

1
2
3
4
$ sqlplus / as sysdba
> alter user system account unlock;
> alter user system identified by manager;
> conn system/manager

scott是oracle的默热你的普通用户,默认密码是tiger,需要sys授权才能登陆

1
2
3
4
$ sqlplus / as sysdba
> alter user scott account unlock;
> alter user scott identified by tiger;
> conn scott/tiger

本地命令行执行sql语句:

1
$ <sql query> | <sqlplus> <db user>/<db password>@<db sid> | sudo ORACLE_HOME=<oracle home> -i -u <oracle user>

dbsnmp是oracle的用户智能代理用户,用来监控和管理数据库相关性能。

sysman是oracle的数据库用户EM管理用户。

监听管理:

1
2
3
4
su - oracle
lsnrctl start
lsnrctl stop
lsnrctl status

CLI

先用sqlplus命令进入oracle的命令行.

1
2
help index
? index

查看命令帮助信息:

1
help <command>

登陆和退出sqlplus:

1
2
sqlplus
exit/quit

调用sql语句:

1
@

不退出sqlplus执行shell命令:

1
host

用户登陆和退出:

1
2
connect/conn <username>/<password>
disconnect

清屏:

1
2
3
clear
! clear
clear scr

修改密码:

1
password

查看变量:

1
show

数据类型


函数

isnull函数:

    NVL(column, 0) column为null函数返回0


SQL

创建用户:

1
CREATE USER <username> IDENTIFIED BY <password>;

用户授权:

1
2
3
4
GRANT DBA TO <username>;
GRANT UNLIMITED TABLESPACE TO <username>;
GRANT SELECT ANY TABLE TO <username>;
GRANT SELECT ANY DICTIONARY TO <username>;

常用查询:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
SELECT * FROM global_name; 查看默认数据库
SELECT * FROM dba_tables; DBA权限查询数据所有表
SELECT * FROM all_users; 查看所有用户
SELECT username FROM dba_users; 查看所有DBA用户
SELECT user FROM dual; 查看当前登陆用户
SELECT * FROM user_tables; 查询当前用户有哪些表
SELECT * FROM all_tables; 查询当前用户可以访问的所有表
SELECT banner FROM sys.v_$version; 查询数据库版本
SELECT count(*) FROM v$version; 查询oracle连接数
SELECT count(*) FROM v$version WHERE STATUS = 'ACTIVE'; 查询oracle并发连接数
ALTER system SET processes = <number> scope = spfile; 修改数据库允许最大连接数
SELECT value FROM v$parmeter WHERE name = 'processes'; 查询数据库允许最大连接数
SELECT value FROM v$parmeter WHERE name = 'open_cursor'; 查询数据库允许最大游标数

python

cx_Oracle

http://cx-oracle.sourceforge.net/

需要安装oracle数据库或者oracle instant client并设置环境变量。

参考oracle网站下载安装配置oracle instant client

http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

1
import cx_Oracle