Oracle Database,又名 Oracle RDBMS,简称 Oracle。是甲骨文公司推出的一款关系数据库管理系统。
Oracle 数据库系统是目前世界上流行的关系数据库管理系统,拥有可移植性好、使用方便、功能强等优点,在各类大、中、小、微机环境中都适用。
Oracle 是一种高效率、可靠性好的、适应高吞吐量的数据库解决方案。
Oracle-number-对应-Java-数据类型
1
2
3
4
5
SELECT UTC . COLUMN_NAME , DATA_TYPE , DATA_LENGTH , COMMENTS
FROM USER_TAB_COLUMNS UTC
LEFT JOIN USER_COL_COMMENTS UCC ON UTC . TABLE_NAME = UCC . TABLE_NAME AND UTC . COLUMN_NAME = UCC . COLUMN_NAME
WHERE UTC . TABLE_NAME = 'TABLE_NAME'
ORDER BY COLUMN_ID ;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
-- 查询表空间物理路径
select * from sys . DBA_DATA_FILES ;
-- 创建表空间
create tablespace FOO
datafile '/home/oracle/app/oracle/oradata/helowin/FOO01.dbf'
size 50 M autoextend on next 50 M ;
-- 创建用户绑定表空间
create user FOO identified by FOO
default tablespace FOO ;
-- 授权
grant connect , resource to FOO ;
grant create any sequence to FOO ;
grant create any table to FOO ;
grant delete any table to FOO ;
grant insert any table to FOO ;
grant select any table to FOO ;
grant unlimited tablespace to FOO ;
grant execute any procedure to FOO ;
grant update any table to FOO ;
grant create any view to FOO ;
grant imp_full_database to FOO ;
1
2
DROP USER USERNAME CASCADE ;
DROP TABLESPACE USERNAME INCLUDING CONTENTS AND DATAFILES ;
1
2
3
# exp 和 imp 的简单使用
exp user/pwd@sid owner = user file = file.dmp log = exp.log feedback = 1000
imp user/pwd@sid fromuser = user touser = user file = file.dmp log = imp.log feedback = 1000
参数名
说明
默认值
USERID
用户名/口令
FULL
导出整个文件
N
BUFFER
数据缓冲区的大小
OWNER
导出指定的所有者用户名列表
FILE
输出文件
(EXPDAT.DMP)
TABLES
导出指定的表名列表
COMPRESS
是否压缩导出的文件
Y
RECORDLENGTH
IO 记录的长度
GRANTS
导出权限
Y
INCTYPE
增量导出类型
INDEXES
导出索引
Y
RECORD
跟踪增量导出
Y
ROWS
导出数据行
Y
PARFILE
参数文件名
CONSTRAINTS
导出限制
Y
CONSISTENT
交叉表一致性
LOG
屏幕输出的日志文件
STATISTICS
分析对象(ESTIMATE)
DIRECT
直接路径
N
TRIGGERS
导出触发器
Y
FEEDBACK
显示每 x 行 (0) 的进度
FILESIZE
各转储文件的最大尺寸
QUERY
选定导出表子集的子句
TRANSPORT_TABLESPACE
导出可传输的表空间元数据
N
TABLESPACES
导出指定的表空间列表
参数名
说明
默认值
USERID
用户名/口令
FULL
导入整个文件
N
BUFFER
数据缓冲区大小
FROMUSER
所有人用户名列表
FILE
输入文件
(EXPDAT.DMP)
TOUSER
用户名列表
SHOW
只列出文件内容
N
TABLES
表名列表
IGNORE
忽略创建错误
N
RECORDLENGTH
IO 记录的长度
GRANTS
导入权限
Y
INCTYPE
增量导入类型
INDEXES
导入索引
Y
COMMIT
提交数组插入
N
ROWS
导入数据行
Y
PARFILE
参数文件名
LOG
屏幕输出的日志文件
CONSTRAINTS
导入限制
Y
DESTROY
覆盖表空间数据文件
N
INDEXFILE
将表/索引信息写入指定的文件
SKIP_UNUSABLE_INDEXES
跳过不可用索引的维护
N
FEEDBACK
每 x 行显示进度
TOID_NOVALIDATE
跳过指定类型 ID 的验证
FILESIZE
每个转储文件的最大大小
STATISTICS
始终导入预计算的统计信息
RESUMABLE
在遇到有关空间的错误时挂起
RESUMABLE_NAME
用来标识可恢复语句的文本字符串
RESUMABLE_TIMEOUT
RESUMABLE 的等待时间
COMPILE
编译过程, 程序包和函数
Y
STREAMS_CONFIGURATION
导入 Streams 的一般元数据
Y
STREAMS_INSTANITATION
导入 Streams 的实例化元数据
N
TRANSPORT_TABLESPACE
导入可传输的表空间元数据
TABLESPACES
将要传输到数据库的表空间
DATAFILES
将要传输到数据库的数据文件
TTS_OWNERS
拥有可传输表空间集中数据的用户
1
2
3
4
5
6
7
8
9
10
11
12
13
-- 查询现有 DBLink
SELECT * FROM DBA_DB_LINKS;
-- 创建公共 DBLink
CREATE PUBLIC DATABASE LINK <DBLink 名称>
CONNECT TO <用户名> IDENTIFIED BY <密码>
USING '(description=(address=(protocol=TCP)(host=127.0.0.1)(port=1521))(connect_data=(SERVICE_NAME=orcl)))';
-- 删除公共 DBLink
DROP PUBLIC DATABASE LINK <DBLink 名称>;
-- 使用DBLink 查询
SELECT * FROM <表名>@<DBLink 名称>;
1
2
3
4
-- 查询锁表信息
SELECT SESS . SID , SESS . SERIAL # , LO . ORACLE_USERNAME , LO . OS_USER_NAME , AO . OBJECT_NAME , LO . LOCKED_MODE FROM V$LOCKED_OBJECT LO , DBA_OBJECTS AO , V$SESSION SESS WHERE AO . OBJECT_ID = LO . OBJECT_ID AND LO . SESSION_ID = SESS . SID ;
-- 杀死锁表的 SESSION
ALTER SYSTEM KILL SESSION 'SID,SERIAL' ;