Oracle 数据库实例
Oracle- 数据库的实例,表空间,用户,表之间的关系
一、完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例
1.数据库是一些列物理文件的集合(数据文件,控制文件,联机文件,参数文件)
2.Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区;
用Oracle官方描述:实例是访问Oracle数据库所需的一部分计算机内存和辅助处理后台进程,是由进程和这些进程所使用的内存(SGA)所构成一个集合。其实就是用来访问和使用数据库的一块进程,它只存在于内存中。就像Java中new出来的实例对象一样。我们访问Oracle都是访问一个实例,但这个实例如果关联了数据库文件,就是可以访问的,如果没有,就会得到实例不可用的错误。实例名指的是用于响应某个数据库操作的数据库管理系统的名称。她同时也叫SID。实例名是由参数instance_name决定的。
查询当前数据库实例名:
select instance_name from v$instance;
数据库实例名(instance_name)用于对外部连接。在操作系统中要取得与数据库的联系,必须使用数据库实例名。比如我们作开发,要连接数据库,就得连接数据库实例名:
jdbc:oracle:thin:@localhost:1521:orcl(orcl就为数据库实例名)
二、数据库
1.全局数据库名:就是数据库的一个标识,在安装的时候一般就要想好;
2.启动数据库:也叫全局数据库,是数据库系统的入口,它会内置一些高级权限的用户,如:sys,system;
三、表空间
1.Oracle数据库是通过表空间来存储物理表的,数据库实例=N*表空间=*张表
创建表空间语法:
创建临时表空间
CREATE TEMPORARY TABLESPACE wj_temp /* 临时表空间名称:wj_temp */
tempfile 'D:\app\dbf\wj_temp.dbf' /* 表空间路径 */
size 50m /* 空间初始大小:50M*/
autoextend ON /* 开启自动扩展 */
NEXT 50m /* 空间满了一次扩展50M*/
maxsize 6G /* 空间最终大小6G,可设为 unlimited 大小不受限制*/
extent management local;
创建表空间
CREATE TABLESPACE wj_data /* 临时表空间名称:wj_data */
datafile 'D:\app\dbf\wj_data.dbf' /* 表空间路径 */
size 50m /* 表空间初始大小:50M */
autoextend ON /* 开启自动扩展*/
NEXT 50m /* 表空间满了后一次扩展50M */
maxsize 10G /* 空间最终大小10G,可设为 unlimited 大小不受限制*/
logging extent management local;
查看已经创建好的表空间:
select default_tablespace, temporary_tablespace, d.username
from dba_users d
四、用户
1.Oracle 数据库建好之后,要想在数据库里建表,必须先为数据库建立用户,并未用户指定表空间(用户是在实例下创建的);
Oracle是由用户和表空间对数据进行管理和存放的,但是表不是用表空间查询的,而是由用户去查询,因为不同用户可以在同一个表空间,建立同一个名字的表;
CREATE USER wj /* 用户名 */
IDENTIFIED BY 123456 /* 密码 */
DEFAULT TABLESPACE wj_data /* 表空间 */
TEMPORARY TABLESPACE wj_temp /* 临时表空间 */
五、角色
-- connect 角色使得用户可以登录;resource 角色使得用户可以进行程序开发,如建立表、触发器等。授权命令如下:
GRANT CONNECT,RESOURCE TO wj;
-- 查询数据库中的用户
SELECT * FROM dba_users ORDER BY userName
Oracle 数据库实例的更多相关文章
- Linux——oracle数据库实例启动关闭(转)
-->Oracle 数据库实例启动关闭过程 --================================ [root@robinson ~]# su - oracle --查看未启动实例 ...
- CentOS Linux 新建oracle数据库实例并连接
CentOS Linux 新建oracle数据库实例 安装好oracle之后,首先想到的那就是自己建一个库来看看效果喽. 创建的过程如下文章所说,http://blog.chinaunix.net/u ...
- 详细说明手工创建oracle数据库实例
手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构.手工建库须要经过几个步骤,每一个步骤都非常关键.它包括:1. 创建必 ...
- oracle数据库实例启动与关闭
区分数据库与实例:实例是指各种内存结构和服务进程,数据库是指基于磁盘存储的数据文件.控制文件.参数文件.日志文件和归档日志文件组成的物里文件集合. 数据库实例启动: startup [nomount ...
- Oracle 数据库实例简介
回到顶部 一:Oracle 数据库实例简介 1:数据库实例的启动顺序: 使用数据库其实就是访问内存.即:数据库实例.数据库的启动是顺序是 先 nomount ----> mount --- ...
- Oracle 数据库实例和数据库
本文参考自oracle数据库实例,数据库的理解,纯属读书笔记,用于加深记忆. 先看Tom关于这二者的解释: 1.数据库 物理操作系统文件或磁盘的集合(我觉得可以理解为数据文件等).使用Oracle 1 ...
- Oracle 数据库实例启动关闭过程
Oracle数据库实例的启动,严格来说应该是实例的启动,数据库仅仅是在实例启动后进行装载.Oracle数据启动的过程被划分为 几个不同的步骤,在不同的启动过程中,我们可以对其实现不同的操作,系统修复等 ...
- 创建Oracle数据库实例
创建Oracle数据库实例 转自oracle数据库创建实例 数据库已经安装完成,可以正常登陆查看用户等操作. system用户只能用normal身份登陆em.除非你对它授予了sysdba的系统权限或者 ...
- oracle数据库实例,数据库的理解
转自http://www.cnblogs.com/advocate/archive/2010/08/20/1804066.html 加深一下理解 数据库就是一个相片底片 实例就是相纸 一个底片可以冲多 ...
随机推荐
- IP之NCO仿真
NCO仿真要用.vo仿真模型,不能用.v文件 /**************************************************************************** ...
- nlms_step_get
module nlms_step_get( rst , clk , nd , din01_i, din01_q, din02_i, din02_q, dou ...
- Node.js使用MySQL的连接池
使用Nodejs+MySQL肯定比PHP和MySQL的组合更适合做服务器端的开发. 使用Nodejs你会从他的异步行为中获益良多.比如,提升性能,你无须在从已有的MySQL数据库迁移到其他的NoSQL ...
- Hdu1050 Moving Tables 2016-05-19 16:08 87人阅读 评论(0) 收藏
Moving Tables Problem Description The famous ACM (Advanced Computer Maker) Company has rented a floo ...
- java web前端调试手段
1.console.log() 2. jQuery.ajax({ url:"/task1/com/guodiantong/servlet/JsonTo ...
- Oracle SQL性能优化技巧大总结
http://wenku.baidu.com/link?url=liS0_3fAyX2uXF5MAEQxMOj3YIY4UCcQM4gPfPzHfFcHBXuJTE8rANrwu6GXwdzbmvdV ...
- Google Summer of Code礼包
这个暑假参加google summer of code, 给Google的分布式容器管理系统kubernates开发新的特性,希望从中学习更多的分布式的技术,锻炼自己的编程技巧. 中午在学校的图书馆吗 ...
- artdialog(4.1.7)弹出框
artDialog弹出框 <link href="/js/artDialog/skins/default.css" rel="stylesheet" /& ...
- C#文件监控对象FileSystemWatcher实例,通过监控文件创建、修改、删除、重命名对服务器数据进行实时备份
先上图,简单的windorm界面:此为最初的版本,后续会增加监听多个源目录的功能.log功能.进度条展示功能等. 1.初始化监听 /// <summary> /// 初始化监听 /// & ...
- C# 32位程序,申请大内存,附dome(wpf),亲测可用
1.我是vs2017,在选装vs的时候,需要安装c++模块,因为申请大内存的必要exe存放在vc的某个目录(下面会给出详细的地址)下的 2.安装完成在vs的安装目录可找到这个文件,我是社区版本的,如果 ...