数据库-oracle-学习之路.docx
《数据库-oracle-学习之路.docx》由会员分享,可在线阅读,更多相关《数据库-oracle-学习之路.docx(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、年数据库-oracle-学习之路1. 数据库基础2. 数据库主键生成Select Substr(To_char(dbms_random.value), 2, 22) | getUUID.NextvalFrom dual ;3. 数据库空间查询-表空间在哪些空间下select df.tablespace_name 表空间名,totalspace 总空间M,freespace 剩余空间M,round(1-freespace/totalspace)*100,2) 使用率%from(select tablespace_name,round(sum(bytes)/1024/1024) totalspac
2、efrom dba_data_filesgroup by tablespace_name) df,(select tablespace_name,round(sum(bytes)/1024/1024) freespacefrom dba_free_spacegroup by tablespace_name) fswhere df.tablespace_name=fs.tablespace_name;-查用户下所用空间SELECT owner, tablespace_name, ROUND (SUM (BYTES) / 1024 / 1024, 2) USED(M) FROM dba_segme
3、ntsGROUP BY owner, tablespace_nameORDER BY SUM (BYTES) DESC;-查用户下所有表所占空间select OWNER, t.segment_name, t.segment_type, sum(t.bytes / 1024 / 1024) mmmfrom dba_segments twhere t.owner = JIANGSUand t.segment_type=TABLEgroup by OWNER, t.segment_name, t.segment_typeorder by mmm desc;4. oracle 之删除重复数据selec
4、t a.rowid,a.* from 表名 a where a.rowid != (select max(b.rowid) from 表名 b where a.字段1 = b.字段1 and a.字段2 = b.字段2 )-删除delete from 表名 a where a.rowid != (select max(b.rowid) from 表名 b where a.字段1 = b.字段1 and a.字段2 = b.字段2 )5. oracle 之查询数据第一条记录select * from tab rownum sqlplus /nologSQL*Plus: Release 9.2.0
5、.4.0 Production on Fri Jan 20 02:29:37 2006Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL connect /as sysdbaConnected to an idle instance.SQL startupORACLE instance started.Total System Global Area 135352820 bytesFixed Size 455156 bytesVariable Size 109051904 bytesDatabase Buf
6、fers 25165824 bytesRedo Buffers 679936 bytesDatabase mounted.2)关闭数据库:oraclesuse92: sqlplus /nologSQL*Plus: Release 9.2.0.4.0 Production on Fri Jan 20 02:29:37 2006Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL connect /as sysdbaConnected to an idle instance.SQL shutdwon abort;
7、3)启动监听器oraclesuse92: lsnrctl start4)停止监听器oraclesuse92: lsnrctl stop5)查看监听器状态oraclesuse92: lsnrctl status或lsnrctl命令进入监听程序后再用status10. oracle 之备份工作背景:Oracle 10g 服务器,Oracle 10g 客户端,windowsXP 操作平台要求:Oracle 数据库服务器对数据库 ytcn 每天自动备份一次。解决方案:利用任务计划、批处理文件和 Oracle 的 exp 导出功能,根据日期自动生成 Oracle 备份文件。详细步骤: 1) 创建批处理文
8、件 ytcn.batytcn.bat中详细内容如下:echo offecho 正在备份银通网 Oracle 数据库,请稍等.exp userid=ytcn/ytcnytcn as sysdba file=e:/bak/ytcn/oracle/ytcn/ytcn%date:0,4%date:5,2%date:8,2%.dmp log=e:/bak/ytcn/oracle/ytcn/ytcn%date:0,4%date:5,2%date:8,2%.log full=yecho 任务完成!其中红色部分是根据需要进行变动的地方,例如作者的项目名“银通网”,数据库 ytcn 用户名 ytcn,密码 yt
9、cn,要在目录 e:/bak/ytcn/oracle/ytcn 下生成形如 ytcn20090711.dmp 和 ytcn20090711.log 的备份和日志文件,全表导出。另外:%date%的值在不同的系统、语言版本下可能是不一样的,控制面板里面区域选项的设定也会改变%date%的值。请先在命令行中测试 echo %date% 的返回值。%date:4,10% 是返回日期函数,后的第一个参数是要截取的起始位置(从0开始),第二个参数是要截取的长度,如没有则是截取到最后,参数可酌情修改。 如需要准确的时间做为文件名,请用%time%函数,参数同上。 2) 添加一个任务计划 ytcn开始 所有
10、程序 附件 系统工具 任务计划 添加任务计划 下一步 在 浏览 中查找刚刚写好的 ytcn.bat 文件 任务名输入ytcn,执行这个任务选择每天,下一步 起始时间下午12:00,起始日期2009-7-11,下一步 输入用户名及密码,用户名要求是管理员权限用户名,下一步 完成点击完成之后,会在任务计划栏目下新增一个名为ytcn的任务计划,表明已经配置完毕。备注:有时点击完成 之后,系统警告已创建新任务,但可能不能运行,因为无法设置账户信息。指定的错误是:Ox80041315:任务计划程序服务没有运行这是因为电脑的任务计划程序服务没有启动起来。开始 所有程序 管理工具 服务,找到Task Sch
11、eduler服务,发现启动类型为已禁用,右键单击更改为自动,并把它启动起来,然后重新添加一次任务计划 ytcn 就可以了。11. oracle之命中率查询Buffer cache由数据块组成。1. Buffer cache的工作原理LRU列表:MRU 。 LRU.(全表扫描FTS放在LRU端。)缓冲区块的状态:Free、Pinned、Clean、Dirty.Dirty List或Write List(写列表)。数据库写进程DBW0将缓冲区高速缓存中的数据写到数据文件中。2. 测量Buffer cache的性能测量Buffer cache的命中率:SQL select 1 - (physical
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 oracle 学习
限制150内