段的创建表user_segments
1、段的定义及类型Oracle中的段(segment)是占用磁盘空间的一个对象,最常见的段类型包括:l 聚簇clusterl 表tablel 表分区 tablepartitionl 索引 indexl 索引分区l Lob分区lob partition、lob子分区lobsubpartition、lob索引lobindex、lob段lob segmnentl 嵌套表 nestedtablel 回滚段rollback详细介绍可见《编程艺术》P3132、段的创建在表、索引等创建的过程中(在11gR2中,段的创建要等到第一条数据被插入时),事实上即在创建段,从user_segment可以查看已创建的段(1)创建一个基本表,查看所分配的段10.2.0.4:[sql] view plain
Oracle从软件安装到运行的全流程
1、软件刚安装完成此时只有一堆软件,未生成任何与数据库相关的文件及内容。2、sqlplus /nolog连接了数据库软件,但未任何具体数据库关联,此时也无任何与具体数据库相关的文件及内容。此时产生一个服务器进行。3、create database此步骤使用create database命令或者OUI创建数据库,生成相关的参数文件、控制文件及数据文件。4、startup nomount读取参数文件,然后根据参数文件的内容创建实例,包括分配SGA及启动后台进程。同时找到控制文件,为下一步作好准备。参数文件记录了SGA大小及其分配,控制文件位置、flash位置,blocksize等信息
数据库崩溃后对redo log的使用
用户对数据库做的任何操作均会产生redo log,事实上是先把redo log写到redo log cache中,再把实际数据更改写至buffer cache中。Redo log会在以下情况从redo log cache写至online redo log file中:l 每隔3秒钟l Redo log cache使用了1/3l 当数据库定写入器通知重做记录需要写入磁盘时。即在数据写入数据文件前。但若此时数据库发生崩溃,而部分数据未写至data file中,则:(1)对于未提交事务,执行撤销操作。(是否有可能未commit,但数据已经写入data file。若yes,则有可能buffer cache满了,下次读取数据从data file读取,导致未co
SQL语句、PL/SQL语句、SQL*PLUS语句结束符号
(1)SQL语句以;或者/结束语句。(2)PL/SQL语句以/结束语句。(3)SQL*PLUS语句以换行符结束语句。[@more@]
Oracle学习计划
这两天,在网上参考了大量的文档,制定了Oracle学习的读书计划,共分三个阶段: 第一阶段: 目标: 系统学习、巩固基础。 书籍: (1)Oracle Concept, Oracle Performance Tuning Guid, Oracle database administrator’s Guide。 (2)三本书籍:Oracle SQL高级编程、Oracle Database 11g数据库管理艺术、Oracle Database 9i/10g/11g编程艺术。 备注: (1)本阶段6本书均为经典,在日后还需重复翻阅。 (2)多上ITPUB,参考帖子讨论,阅读其它人的文章,并写自己的博客。 第二阶段: 目标:
使用sys无法通过sqlplus或者sqldeveloper连接数据库
现象:用sql developer或者sqlplus连接数据库,提示:ORA-01017: invalid username/password; logon denied。一般用户可以连接,因为这些用户是使用数据字典认证的。其它实例的sys用户也用正常连接。 处理过程:(1)之前密码一直可用,周一上班发现不行,可能有人改了密码,于是用oracle用户登录数据库服务器,再使用OS认证登录数据库,使用alter user sys identified by ****,修改密码后,还是提示ORA-01017(2)查看dba_users,sys的状态是open。(3)查看密码文件是否丢失: 在单实例中,密码文件的保存路径为$ORACLE_HOME/dbs