Oralce 10G学习日志 博客分类: 技术简介
技 术 文 件
技术文件名称:Oralce 10G学习日志
版 本:1.0
Oracle版本:Oracle10.2.0.1
拟 制
审 核
会 签
标准化
批 准
修改记录
文件编号 |
版本号 |
拟制人/ 修改人 |
拟制日期/ 修改日期 |
更改理由 |
主要更改内容 (写要点即可) |
skcm-20130127 |
V1.0 |
鲍忠启 |
2013-01-27 |
新增 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
注:文件第一次归档时,“更改理由”、“主要更改内容”栏写“无”。 |
目 录
1 登录
1.1PLSQL Developer sys 登陆
sys/123456 as sysdba
2 表空间
2.1查询表空间位置信息
select * from dba_data_files t
结果例子如下:
SQL> select * from dba_data_files t;
FILE_NAME
--------------------------------------------------------------------------------
FILE_ID TABLESPACE_NAME BYTES BLOCKS STATUS
---------- ------------------------------ ---------- ---------- ---------
RELATIVE_FNO AUT MAXBYTES MAXBLOCKS INCREMENT_BY USER_BYTES USER_BLOCKS
------------ --- ---------- ---------- ------------ ---------- -----------
ONLINE_
-------
/dbdata/oradata/ora10/users01.dbf
4 USERS 932708352 113856 AVAILABLE
4 YES 3.4360E+10 4194302 160 932642816 113848
ONLINE
其中:/dbdata/oradata/ora10/users01.dbf 就是表空间位置
2.2创建表空间
2.2.1 创建语句方式
Linux下:
create tablespace histdb datafile '/dbdata/oradata/ora10/baobao.dbf' size 50m autoextend on next 10m maxsize unlimited;
Windows下:
create tablespace histdb datafile 'D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf' size 50m autoextend on next 10m maxsize unlimited;
运行结果:
SQL> create tablespace histdb datafile '/dbdata/oradata/ora10/baobao.dbf' size 50m autoextend on next 10m maxsize unlimited;
Tablespace created.
说明:
1) DATAFILE: 表空间数据文件存放路径
2) SIZE: 起初设置为200M
3) UNIFORM: 指定区尺寸为128k,如不指定,区尺寸默认为64k
4) 空间名称histdb 与数据文件名称 histdb.dbf 不要求相同,可随意命名.
5) AUTOEXTEND ON/OFF 表示启动/停止自动扩展表空间
6) alter database datafile ' D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf ' resize 500m; //手动修改数据文件大小为500M
2.2.2 删除表空间
DROP TABLESPACE histdb INCLUDING CONTENTS AND DATAFILES;
运行结果:
SQL> DROP TABLESPACE histdb INCLUDING CONTENTS AND DATAFILES;
Tablespace dropped.
3 用户
3.1查询现有用户
select username,account_status from dba_users
执行结果:
SQL> select username,account_status from dba_users;
USERNAME ACCOUNT_STATUS
------------------------------ --------------------------------
HEALTH OPEN
FREETEST OPEN
JKTOON OPEN
JKTPLAT OPEN
JKTADC OPEN
JKTCOMM OPEN
LVZHEN OPEN
SCOTT EXPIRED
TSMSYS EXPIRED & LOCKED
MDDATA EXPIRED & LOCKED
DIP EXPIRED & LOCKED
3.2删除用户
删除用户:test
drop user test cascade;//cascade参数是级联删除该用户所有对象,若不加上此参数,删除操作可能会出错,建议加上
3.3创建用户
SQL>create user cocis identified by cocis default tablespace tbs_cocis temporary tablespace tbs_temp;
3.4修改密码
1、登录Linux系统
2、进入Oracle用户
[root@localhost ~]# su -l oracle
3、启动Oracle sqlplus
[oracle@localhost ~]$ sqlplus '/as sysdba'
SQL*Plus: Release 10.2.0.1.0 - Production on Thu Jan 24 22:56:40 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit
Production
.With the Partitioning, OLAP and Data Mining Scoring Engine options
SQL>
4、执行修改密码SQL语句
SQL>alter user sys identified by "密码"
SQL>alter user system identified by "123456"
3.5权限的授予
SQL> grant connect,resource to cocis;
SQL> grant SYSDBA to cocis;
.
4 导入导出
4.1导出-EXP
exp system/manager@Neo file=E:\ora_exp\test.dmp owner=(scott)
说明:
l exp ——是Oracle自带的工具,位于X:\oracle\product\10.2.0\db_1\bin目录下,如果你环境变量配置好了就不用管了,否则可以在cmd切换到对应的目录!
l system/manager ——表示什么用户进行导出(呵呵!我这里把密码都说了,真正操作时可不要这么做,安全……)
l @Neo——代表是哪个数据库,我当前机器的数据库就是名称就是Neo
l file=E:\ora_exp\test.dmp—— 表示导出的目录及导出文件名(注意:一定要在磁盘中存在ora_exp目录)
l owner = (scott)——就不用说了吧,如果是多个用户的表可以用“,”分隔
4.1.1 EXP的所有参数
USERID 用户名/口令 如: USERID=duanl/duanl
FULL 导出整个数据库 (N)
BUFFER 数据缓冲区的大小
OWNER 所有者用户名列表,你希望导出哪个用户的对象,就用owner=username
FILE 输出文件 (EXPDAT.DMP)
TABLES 表名列表 ,指定导出的table名称,如:TABLES=table1,table2
COMPRESS 导入一个extent (Y)
RECORDLENGTH IO 记录的长度
GRANTS 导出权限 (Y)
INCTYPE 增量导出类型
INDEXES 导出索引 (Y)
RECORD 跟踪增量导出 (Y)
ROWS 导出数据行 (Y)
PARFILE 参数文件名,如果你exp的参数很多,可以存成参数文件.
CONSTRAINTS 导出约束 (Y)
CONSISTENT 交叉表一致性
LOG 屏幕输出的日志文件
STATISTICS 分析对象 (ESTIMATE)
DIRECT 直接路径 (N)
TRIGGERS 导出触发器 (Y)
FEEDBACK 显示每 x 行 (0) 的进度
FILESIZE 各转储文件的最大尺寸
QUERY 选定导出表子集的子句
4.2导入-IMP
imp test/123456@223 file=tank log=tank fromuser=seapark touser=seapark_copy
imp system/123456@192.138 file=E:\db\JKTADC.dmp log=E:\db\JKTADC.log full=y ignore=y
4.2.1 将一个用户所属的数据导入另一个用户
imp system/123456@192.138 file=E:\db\JKTCOMM.dmp fromuser=JKTCOMM touser=JKTCOMM;
4.2.1.1IMP的所有参数
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)
ANALYZE 执行转储文件中的 ANALYZE 语句 (Y)
FEEDBACK 显示每 x 行 (0) 的进度
TOID_NOVALIDATE 跳过指定类型 id 的校验
FILESIZE 各转储文件的最大尺寸
RECALCULATE_STATISTICS 重新计算统计值 (N)
下列关键字仅用于可传输的表空间
TRANSPORT_TABLESPACE 导入可传输的表空间元数据 (N)
TABLESPACES 将要传输到数据库的表空间
DATAFILES 将要传输到数据库的数据文件
TTS_OWNERS 拥有可传输表空间集中数据的用户
下一篇: iOS验证手机号的正则表达式