表空间

学习笔记:oracle学习一:oracle11g体系结构之物理存储结构

僤鯓⒐⒋嵵緔 提交于 2019-12-04 07:26:18
目录 1、物理存储结构 1.1 数据文件 1.2 控制文件 1.3 日志文件 1.3.1 重做日志文件 1.3.2 归档日志文件 1.4 服务器参数文件 1.4.1 查看服务器参数 1.4.2 修改服务器参数 1.5 密码文件、警告文件和跟踪文件 1.5.1 密码文件 1.5.2 警告文件 1.5.3 跟踪文件 本系列是作为学习笔记,用于记录学习过程,加深学习印象,以及自己重新回顾学习内容只用,参考书籍为《oracle 11g从入门到精通(第二版)》,如果需要深入学习,请购买原书籍,谢谢! 1、物理存储结构 物理存储结构用于描述oracle数据在磁盘上的物理组成情况,oracle数据在逻辑上存储于表空间中,在物理上存储在表空间所包含的物理文件(即数据文件)中。 物理文件主要有: 数据文件 重做日志文件 归档日志文件 参数文件 口令文件 警告日志文件 如下所示: 1.1 数据文件 数据文件用于保存用户应用程序数据和oracle系统内部数据。逻辑存储表空间可以包含一个或多个数据文件,但是一个数据文件只能属于一个表空间。 oracle系统通过高速缓存区来存取数据,减少磁盘I/O操作,提高系统性能,过程如下: 1)、读取数据 从数据文件读取数据--》》将数据存储在内存的高速缓存区--》》对于新读取的数据若不在高速缓存区,则系统从相应的数据文件中读取数据并缓存在高速缓存区 2)

oracle基础(一)

人走茶凉 提交于 2019-12-04 06:36:17
数据库 磁盘上存储的数据的集合 在物理上表现为数据文件、日志文件和控制文件等 在逻辑上以表空间形式存在 必须首先创建数据库,然后才能使用Oracle 数据库实例 每个启动的数据库都对应一个数据库实例,由这个实例来访问和控制数据库 为了运行数据库, Oracle系统所运行的所有进程和分配的内存结构的组合体 数据库: 永久的,硬盘上 数据库实例:临时的,内存中 数据库物理结构 数据文件 扩展名是.DBF,用于存储数据库数据的文件 数据库表和数据文件不存在一对一对应关系 控制文件 扩展名是.CTL,是数据库启动及运行所必需的文件 默认包含3个控制文件 日志文件 扩展名是.LOG,它记录了对数据的所有更改信息 多个日志文件组之间循环使用 数据库逻辑结构 表空间 每个Oracle数据库都是由若干个表空间构成,用户在数据库中建立的所有内容都被存储到表空间中 创建数据库时会自动创建若干表空间 通过选择“控制面板”→“管理工具”→“服务”,打开“服务”窗口,可以看到Oracle服务 OracleService<SID>:数据库实例服务 OracleOraDb10g_hom1TNSListener :数据库监听服务 OracleDBConsoles<SID>:企业管理器服务 OracleOraDb10g_hom1iSQL*Plus:iSQL*Plus服务 SYS和SYSTEM用户都是Oracle

Oracle逻辑导入数据(IMP/IMPDP)

只愿长相守 提交于 2019-12-04 06:03:31
使用IMPDP导入数据的前提是数据是使用EMPDP导出的,同样也是在DOS窗口下直接输入IMPDP和登录数据库的用户名,即可导人数据。 impdp导到指定用户下: impdp student/123456@orcl DIRECTORY=dir DUMPFILE=student.dmp logfile=student_imp.log SCHEMAS=student    1、directory指定的是目录对象,这里的目录对象就是在使用expdp导出时创建的目录对象。语法解析: 2、dumpfile指定的是要导入的dmp文件, 3、SCHEMAS指定要导入的数据是导入到哪个用户下。 impdp导入表空间: impdp student/123456@orcl DIRECTORY=dir DUMPFILE=student_tablespace.dmp logfile=student_imp.log TABLESPACES=student    1、tablespaces指定要导入的是表空间下的所有对象和数据,这里导入的表空间为student表空间。语法解析: impdp导入数据库: impdp student/123456@orcl DIRECTORY=dir DUMPFILE=student_full.dmp logfile=student_imp.log full=y    1

Oracle 清理sysaux表空间

别来无恙 提交于 2019-12-04 05:35:51
查看sysaux表空间使用排行 select SEGMENT_NAME,BYTES/1024/1024/1024 DGD from dba_segments where tablespace_name='SYSAUX' ORDER BY DGD DESC; I_WRI$_OPTSTAT_H_ST WRI$_OPTSTAT_HISTGRM_HISTORY I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST 这问题是由最近一个数据库SYSAUX使用空间过多引出来的. SM/OPTSTAT是用于存储老的统计信息,10G之前,当对表/字段/索引做了相应的统计信息之后,新的统计信息就会覆盖老的统计信息,也就是说的无法直接找回统计信息,要找回,只能事先通过dbms_stats导出来。10G就不必了,它会自动的存到相应的表里,而这些表是存在sysaux的,但这也引出了一个问题:如果这些表的数据不断的增长,而不把老的数据删除的话,sysaux迟早会暴了的。默认的情况下,系统会为SM/OPTSTAT保留31天的记录,可以通过dbms_stats.get_stats_history_retention来确定。这里的统计信息跟AWR是有区别的, AWR默认保留7天. SM/OPTSTAT保留的时间可以通过dbms_stats.alter_stats_history_retention来控制

Mysql--08 存储引擎

青春壹個敷衍的年華 提交于 2019-12-04 04:56:01
目录 一.存储引擎简介 二.MySQL自带的存储引擎类型 三.真实企业案例 四.Innodb存储引擎——表空间介绍 一.存储引擎简介  1、文件系统: 1.1 操作系统组织和存取数据的一种机制。 1.2 文件系统是一种软件。 2、文件系统类型:ext2 3 4 ,xfs 数据 2.1 不管使用什么文件系统,数据内容不会变化 2.2 不同的是,存储空间、大小、速度。 3、MySQL引擎: 可以理解为,MySQL的“文件系统”,只不过功能更加强大。 4、MySQL引擎功能: 除了可以提供基本的存取功能,还有更多功能事务功能、锁定、备份和恢复、优化以及特殊功能 总之,存储引擎的各项特性就是为了保障数据库的安全和性能设计结构。 二.MySQL自带的存储引擎类型 MySQL 提供以下存储引擎: 01)InnoDB 02)MyISAM 03)MEMORY 04)ARCHIVE 05)FEDERATED 06)EXAMPLE 07)BLACKHOLE 08)MERGE 09)NDBCLUSTER 10)CSV 还可以使用第三方存储引擎: 01)MySQL当中插件式的存储引擎类型 02)MySQL的两个分支 03)perconaDB 04)mariaDB #查看当前MySQL支持的存储引擎类型 mysql> show engines; +--------------------+--------

mysql的undo log和redo log

心不动则不痛 提交于 2019-12-04 04:48:37
1.1 undo是什么 undo日志用于存放数据修改被修改前的值,假设修改 tba 表中 id=2的行数据,把Name='B1' 修改为Name = 'B2' ,那么undo日志就会用来存放Name='B'的记录,如果这个修改出现异常,可以使用undo日志来实现回滚操作,保证事务的一致性。 1.2 undo参数 MySQL跟undo有关的参数设置有这些: show global variables like '%undo%'; innodb_max_undo_log_size 控制最大undo tablespace文件的大小,当启动了innodb_undo_log_truncate 时,undo tablespace 超过innodb_max_undo_log_size 阀值时才会去尝试truncate。该值默认大小为1G,truncate后的大小默认为10M。 innodb_undo_tablespaces 设置undo独立表空间个数,范围为0-128, 默认为0,0表示表示不开启独立undo表空间 且 undo日志存储在ibdata文件中。该参数只能在最开始初始化MySQL实例的时候指定,如果实例已创建,这个参数是不能变动的,如果在数据库配置文 件 .cnf 中指定innodb_undo_tablespaces 的个数大于实例创建时的指定个数,则会启动失败,提示该参数设置有误。

Oracle11g RAC+DG搭建

99封情书 提交于 2019-12-04 01:59:57
项目环境准备 3.1 虚拟机配置 版本选择 注意Linux操作系统。此次项目我选择的版本是Oracle Enterprise Linux 5.4 内存的设置 本人电脑物理内存8G,由于此次实验要开三台虚拟机,基于集群两台机需要的内存较大,故每台给2G,单实例做standby的给1.5G。 添加选择网卡类型 使用桥接方式容易引发IP冲突,所以我选择的是Host Only方式,避免IP冲突。 两个网卡使用分配: NAT:作Public IP Host Only:作Private IP 注意主机和虚拟机的防火墙要关闭,达到互信。 分配磁盘空间 在分配磁盘空间的时候不要立即分配,避免占用实际空间大小,可以分配给其他进程。这里我分配50G给根分区,选择将虚拟磁盘存储为单个文件,性能较好。 添加共享磁盘 添加3个共享磁盘,分别为asm1,asm2,asm3.(注意:共享磁盘不能建为本地磁盘),也就是说SCSI设置为1:n,而不是0:n。模式选择独立永久,立即分配磁盘,存储为单个文件方式。每个磁盘均给3G,用于存储数据库相关文件。 由上可知,做RAC需要一块本地硬盘,两块网卡,3个共享磁盘及OEL5.4的安装配置。 3.2 安装 OEL5.4 操作系统 这里不要全部选择,sdb,sdc,sdd三个作裸设备,格式sda即可。防止其他三个盘全部被系统占用。 主机名:rac1.example.com

MySQL之存储引擎

喜夏-厌秋 提交于 2019-12-03 23:17:49
MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。 InnoDB引擎特点   1、行级锁   2、支持事务,适合处理大量短期事务   3、读写阻塞与事务隔离级别相关   4、可缓存数据和索引   5、支持聚簇索引   6、崩溃恢复性更好   7、支持MVCC高并发   8、从MySQL5.5后支持全文索引   9、从MySQL5.5.5开始为默认的数据库引擎   10、InnoDB数据库文件     默认所有InnoDB表的数据和索引放置于同一个表空间中     表空间文件:datadir定义的目录下     数据文件:ibddata1, ibddata2, ...     每个表单独使用一个表空间存储表的数据和索引       启用方法:编辑配置文件innodb_file_per_table=ON     两类文件放在数据库独立目录中       数据文件(存储数据和索引):tb_name.ibd       表格式定义:tb_name.frm MyISAM引擎特点   1、不支持事务   2、表级锁定   3、读写相互阻塞,写入不能读,读时不能写   4、只缓存索引   5、不支持外键约束   6、不支持聚簇索引   7、读取数据较快,占用资源较少   8、不支持MVCC

oracle 用户与表空间关系

北城余情 提交于 2019-12-03 22:47:44
转: oracle 用户与表空间关系 oracle用户与表空间关系 用户=商家 表=商品 表空间=仓库 1. 1个商家能有很多商品,1个商品只能属于一个商家 2. 1个商品可以放到仓库A,也可以放到仓库B,但不能同时放入A和B 3. 仓库不属于任何商家 4. 商家都有一个默认的仓库,如果不指定具体仓库,商品则放到默认的仓库中 oracle中用户的所有数据都是存放在表空间中的,很多个用户可以共用一个表空间,也可以指定一个用户只用某一个表空间。 表空间:创建表空间会在物理磁盘上建立一个数据文件,作为数据库对象(用户、表、存储过程等等)的物理存储空间; 用户:创建用户必须为其指定表空间,如果没有显性指定默认表空间,则指定为users表空间;创建用户后,可以在用户上,创建表、存储过程等等其他数据库对象; 表:是数据记录的集合; 创建过程: 表空间--->用户--->表; 所属关系: 表空间 包含 用户 包含 表; http://www.cnblogs.com/cici-new/archive/2012/12/25/2831740.html 1.首先是ORACLE的整体结构。 oracle中的一个数据库就是一个实例. oracle的一个用户就是一个Schema(即方案). oracle的结构是===           实例->用户->表(用户属于数据库实例,表属于某个用户)

Oracle数据库查看表空间sql语句

て烟熏妆下的殇ゞ 提交于 2019-12-03 22:47:36
转: Oracle数据库查看表空间sql语句 2018-09-03 15:49:51 兰海泽 阅读数 6212 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/zejunwzj/article/details/82349839 1、oracle查看表空间当前用户 select username,default_tablespace from user_users; 1 2 3 2、oracle 查看表所属表空间 SELECT TABLE_NAME,TABLESPACE_NAME FROM USER_TABLES where TABLE_NAME = 'test_table' 1 2 3 4 3、oracle查看表空间大小(单位不是GB) SELECT a.tablespace_name "表空间名", total "表空间大小", free "表空间剩余大小", ( total - free ) "表空间使用大小", Round(( total - free ) / total, 4) * 100 "使用率 %" FROM (SELECT tablespace_name, Sum(bytes) free FROM DBA_FREE_SPACE GROUP BY