表空间

MySQL 存储引擎

非 Y 不嫁゛ 提交于 2020-03-05 22:35:28
存储引擎 DBMS使用存储引擎进行数据的创建、查询、更新、删除操作。 不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。 MySQL提供了多种存储引擎,最常见的有3种。 1、MyISAM MySQL5.5之前的默认的存储引擎, 每个MyISAM在磁盘上存储成三个文件,文件名和表名相同,扩展名分别是 (1)frm文件:存储表的定义 (2)MYD文件:存储表中的数据(记录) (3)MYI文件:存储索引。 索引保存的是数据文件的指针 特点 访问速度快(优) 支持全文索引(优)。但基本不使用MySQL的全文索引,全文索引一般都是使用第三方的ElasticSearch,Solr等更加成熟的解决方案。 不支持事务、外键(缺) 默认的锁粒度为表级锁,所以并发度很差(缺),但加锁快,锁冲突较少,不容易发生死锁(优); 对数据的查询缓存只缓存索引,不缓存数据(记录),而且使用的是操作系统本身的缓存。 自动增长列可以是组合主键中的任何一列。设置自动增长列:创建表时,在字段后加auto_increment,默认初始值是1 适用场景 不需要事务 不使用外键 操作以select、insert为主 MyISAM支持三种不同的存储格式 (1)静态表(fixed) 表中不能包含变长字段(比如VARCHAR, BLOB, TEXT),每个记录都是固定的长度

oracle常用运维命令整理

北战南征 提交于 2020-03-04 22:19:02
文章中涉及的路径,请根据实际部署的路径修改: 一、oracle建库与删库命令 (1)oracle11g #建库(一般习惯配置gdbname与sid名一样,sys密码与system密码一样,以方便记忆) [oracledb@ ~]$ dbca -silent -createDatabase -templateName /u01/oracle/product/11.2.0/dbhome_1/assistants/dbca/templates/General_Purpose.dbc -gdbname GDBNAME -sid SIDNAME -characterSet AL32UTF8 -NATIONALCHARACTERSET UTF8 -sysPassword SYSPASSWORD -systemPassword SYSTEMPASSWORD -TOTALMEMORY 2048 #删库方法一: [oracledb@ ~]$ dbca -silent -deleteDatabase -sourceDB SIDNAME -sysDBAUserName sys -sysDBAPassword SYSPASSWORD #删除库方法二: 步骤1:配置回应文件: [oracledb@ ~]$ cat /u01/oracle/response/dbca.rsp OPERATION_TYPE =

Oracle 表空间查看大小

蹲街弑〆低调 提交于 2020-03-03 19:34:09
--查表空间大小及使用-- SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100, 2), '990.99')||'%' "使用比(%)", F.TOTAL_BYTES "空闲空间(M)", F.MAX_BYTES "最大块(M)" FROM (SELECT TABLESPACE_NAME, ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES, ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F, (SELECT DD.TABLESPACE_NAME, ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB FROM SYS.DBA_DATA_FILES DD GROUP BY DD.TABLESPACE_NAME) D

Oracle创建表空间、用户

送分小仙女□ 提交于 2020-03-03 15:22:13
特别提示,用plsql远程建立表空间时,表空间存储的物理路径在本地一定要存在,否则会建立失败 /*第1步:创建临时表空间 */ create temporary tablespace project_temp tempfile 'F:\app\Administrator\oradata\project_temp.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; /*第2步:创建数据表空间 */ create tablespace project_data logging datafile 'F:\app\Administrator\oradata\project_data.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; /*第3步:创建用户并指定表空间 */ create user project_login identified by project_login default tablespace project_data temporary tablespace project_temp profile DEFAULT; /*第4步:给用户授予权限 */ grant

Oracle体系架构和导入/导出

丶灬走出姿态 提交于 2020-03-03 13:34:12
1. Oracle的体系架构 Oracle的体系结构是数据库的组成,工作过程,以及数据库中数据的组织与管理机制,要了解oracle数据库的体系结构,就必须要理解oracle的主要组件和重要的概念。Oracle体系结构包含一系列组件,包括实例、用户进程、服务进程、数据文件及其他文件,如参数文件、口令文件和归档日志文件等 2. 表空间的含义 表空间是数据库的逻辑划分,一个表空间只能属于一个数据库。所有的数据库对象都存放在指定的表空间中。但主要存放的是表, 所以称作表空间。 Oracle 数据库中至少存在一个表空间,即 SYSTEM 的表空间。 SQL Server 数据库与 Oracle 数据库之间最大的区别要属表空间设计。 Oracle 数据库开创性地提出了表空间的设计理念,这为 Oracle 数据库的高性能做出了不可磨灭的贡献。可以这么说, Oracle 中很多优化都是基于表空间的设计理念而实现的。 3. 用户和权限之间的关系 1 、用户:应用系统的具体操作者,用户可以自己拥有权限信息,可以归属于 0 ~ n 个角色,可属于 0 ~ n 个组。他的权限集是自身具有的权限、所属的各角色具有的权限、所属的各组具有的权限的合集。它与权限、角色、组之间的关系都是 n 对 n 的关系。 2 、权限:系统的所有权限信息具有上下级关系,是一个树状的结构。对于每个权限,又存在两种情况

Oracle数据库管理——表数据库高水位及shrink操作

老子叫甜甜 提交于 2020-03-03 11:53:55
在Oracle数据的存储中,可以把存储空间想象为一个水库,数据想象为水库中的水。水库中的水的位置有一条线叫做水位线,在Oracle中,这条线被称为高水位线(High-warter mark, HWM)。在数据库表刚建立的时候,由于没有任何数据,所以这个时候水位线是空的,也就是说HWM为最低值。当插入了数据以后,高水位线就会上涨,但是这里也有一个特性,就是如果你采用delete语句删除数据的话,数据虽然被删除了,但是高水位线却没有降低,还是你刚才删除数据以前那么高的水位。也就是说,这条高水位线在日常的增删操作中只会上涨,不会下跌。 下面我们来谈一下Oracle中Select语句的特性。Select语句会对表中的数据进行一次扫描,但是究竟扫描多少数据存储块呢,这个并不是说数据库中有多少数据,Oracle就扫描这么大的数据块,而是Oracle会扫描高水位线以下的数据块。现在来想象一下,如果刚才是一张刚刚建立的空表,你进行了一次Select操作,那么由于高水位线HWM在最低的0位置上,所以没有数据块需要被扫描,扫描时间会极短。而如果这个时候你首先插入了一千万条数据,然后再用delete语句删除这一千万条数据。由于插入了一千万条数据,所以这个时候的高水位线就在一千万条数据这里。后来删除这一千万条数据的时候,由于delete语句不影响高水位线,所以高水位线依然在一千万条数据这里

oracle11g rac RMAN备份恢复至单机

帅比萌擦擦* 提交于 2020-03-03 00:25:01
在一节点上进行全备 确定备份路径,并赋予属组 mkdir /rmanbackup chown oracle:oinsatll /rmanbackup 进入rman进行全备 rman target / run { allocate channel d1 type disk; backup incremental level 0 format '/rmanbackup/orcl_full_%U' database include current controlfile; delete noprompt obsolete; sql 'alter system archive log current'; backup format '/rmanbackup/orcl_arch_full_%U' archivelog all not backed up delete input; crosscheck backup; delete noprompt expired backup; release channel d1; } 将生成的备份传到单机环境 cd /rmanbackup scp * oracle@192.168.100.199:/rmanbackup/ (单机上已备好此路径) 创建pfile文件并修改传送到单机环境对应目录下 SQL> create pfile='

window10 离线安装oralce及相关信息

别说谁变了你拦得住时间么 提交于 2020-03-02 17:00:43
离线oracle 准备 windows环境 java jdk oracle安装包,建议使用oracle-11g的版本 安装 安装java jdk 安装oracle oracle远程配置 服务器oracle配置目录dbhome_1/network/admin listener文件添加 (SID_DESC= (GLOBAL_DBNAME = ORCL) (SID_NAME = ORCL) (ORACLE_HONE = C:\app\oracle_admin\product\12.2.0\dbhome1) ) 并将HOST改为本机IP tnsnames文件将HOST改为本机IP并确认SERVICE_NAME 给system用户 dba grant dba,sysdba to system container=all; 授予权限 grant connect,resource,dba to system; grant create sequence,select any sequence to system; 远程连接 sqlplus system/manager @ip :port/orcl as sysdba system为用户名 mananger为密码,注意:在安装时如果指定了则改为指定的密码 创建大表空间 一般表空间限制为32g,大表空间为32t 创建命令示例: Create

oracle导入导出,自动备份

安稳与你 提交于 2020-02-29 21:52:06
一Oracle导入导出操作 删除用户: drop user userlms cascade exp help=y 导出数据(cmd中) exp lmsdata/Jxht1234@202.31.125.51/LMSDEV file=d:\DataBase\lmsdev_xzw_20110510.dmp full=y --lmsdata是表空间 exp lmsdata/Jxht1234@202.31.125.51/LMSDEV file=d:\DataBase\lmsdev_xzw_20110510.dmp owner=(lmsdata) 将.dmp文件变成为压缩文件 compress=y 删除: drop tablespace lmsdata including contents and datafiles; 当有多个sid(数据库时) 一定要指定sid. dos命令:set oracle_sid=abc 然后再创建表空间或用户名。 打开sqlplus 窗口并连接超级用户 ( sqlplus /nolog >>>> conn /as sysdba ) 1.----------创建表空间---------------- create tablespace lmsdata logging datafile 'E:\app\11111\oradata\orcl\lmsdata.dbf'

Oracle 数据库导入导出 dmp文件

二次信任 提交于 2020-02-29 19:39:04
首先询问对方数据库的表空间名称和大小,然后在你的oracle中建立相应表空间,最后使用命令导入、导出数据。 补充: 1.要新建一个数据库; Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可 以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本 地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一 个用来测试,一个用来正式使用。 例如:imp命令导入数据: imp username/password@SID file=XXX.dmp fromuser=XXX touser=XXX tables=(XXX,XXX) 其中,fromuser指对方数据库用户名,touser指你的数据库的用户名; fromuser若为多个表空间的话,使用()将其括起来:fromuser=(a,b); touser参数仿fromuser参数; 若只导入一部分表,使用tables参数,用()括起要导入的表;如果想全部导入,不需要指定tables参数 下面介绍的是导入导出的实例。 数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中 exp system/manager@TEST file=d:\daochu.dmp full=y 2