Java干货 | 一文搞懂ORACLE数据库

ORACLE数据库系统是美国ORACLE公(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。

ORACLE通常应用于大型系统的数据库产品。

ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。

ORACLE数据库具有以下特点:

(1)支持多用户、大事务量的事务处理

(2)数据安全性和完整性控制

(3)支持分布式数据处理

(4)可移植性

1.数据库

Oracle数据库是数据的物理存储。这就包括(数据文件 ORA 或者 DBF、控制文件、联机日志、参数文件)。其实 Oracle 数据库的概念和其它数据库不一样,这里的数据库是一个操作系统只有一个库。可以看作是Oracle 就只有一个大数据库。

2.实例

一个Oracle实例(Oracle Instance)有一系列的后台进程(Backguound Processes)和内存结构(Memory Structures)组成。一个数据库可以有n个实例。

3.数据文件(dbf)

数据文件是数据库的物理存储单位。数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中。而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。

4.表空间

表空间是Oracle对物理数据库上相关数据文件(ORA 或者 DBF 文件)的逻辑映射。一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每个数据库至少有一个表空间(称之为 system表空间)。

每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。

注:表的数据,是有用户放入某一个表空间的,而这个表空间会随机把这些表数据放到一个或者多个数据文件中。

由于oracle的数据库不是普通的概念,oracle是有用户和表空间对数据进行管理和存放的。但是表不是有表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同一个名字的表!这里区分就是用户了!

5.用户

用户是在表空间下建立的。用户登陆后只能看到和操作自己的表, ORACLE的用户与MYSQL的数据库类似,每建立一个应用需要创建一个用户。

-END-

oracle数据库

Oracle数据库(Oracle Database)是由美国Oracle的一种关系型数据库管理系统。

它是目前上的数据库之一,被广泛应用于企业级应用系统中。

Oracle数据库以其高性能、高可靠性和丰富的功能而闻名于世,成为许多企业和组织的数据库解决方案。

本文将围绕Oracle数据库展开讨论,重点介绍其特点、优势和应用领域。

一、Oracle数据库的特点

1. 高性能:Oracle数据库具有出色的性能表现,能够处理大规模的数据集和高并发的访问请求。

2. 高可靠性:Oracle数据库具备强大的容错和恢复机制,能够数据的完整性和可用性。

3. 安全性:Oracle数据库提供了全面的安全性控制机制,包括用户身份验证、访问权限管理、数据加密和审计功能等。

4. 扩展性:Oracle数据库支持水平和垂直两种方式的扩展。

5. 多功能:Oracle数据库提供了丰富的功能和工具,包括数据备份和恢复、数据复制和同步、数据分区和分片、数据压缩和查询优化等。

它还支持多种编程语言和框架,如Java、C 和.NET,方便人员进行应用程序的和集成。

二、Oracle数据库的优势

1. 可扩展性:Oracle数据库能够处理大规模的数据集和高并发的访问请求,适用于各种规模的应用系统。

无论是小型企业还是组织,都可以根据实际需求选择合适的配置和部署方案。

2. 高性能:Oracle数据库具备出色的性能表现,能够提供快速的数据访问和处理能力。

它的查询优化器能够根据数据分布和查询条件自动选择的执行计划,提高查询效率和响应速度。

3. 高可靠性:Oracle数据库具有强大的容错和恢复机制,能够数据的完整性和可用性。

它支持热备份和故障转移,能够在系统故障时自动切换到备用节点,确保业务的连续性和可靠性。

4. 数据安全:Oracle数据库提供全面的安全性控制机制,能够保护敏感数据不被未经授权的人员访问和篡改。

它支持数据加密和安全审计,能够满足各种合规性要求和数据保护的需求。

数据库Oracle启动

1,用netstat -natp查看是否存在1521端口。

netstat -natp

2,su – oracle(说明,为了安装和管理oracle而建的帐号),用lsnrctl检查oracle监听服务状态。no listener说明监听服务没启动,即无1521端口。

lsnrctl status

lsnrctl status

lsnrctl(Listener Control)是一个SQL*Net工具,用于控制数据库listener的状态,如listener的启动、停止、改变listener的配置参数等。

lsnrctl help

3,启动监听服务:lsnrctl start

lsnrctl start

4,再次用netstat -antp确认1521端口是否已经开启。

1521端口已经开启

5,SQL Plus是Oracle数据库的管理与开发工具, Oracle数据库中所有的管理操作都可以通过 SQLPlus工具完成。用sqlplus工具以管理员身份登录oracle,启动oracle。常用登录参数“sqlplus username/password@//host:port/sid”(注:sqlplus /nolog 不登录到数据库,也即不提供输入用户名/密码)。

sqlplus / as sysdba (注:以操作系统管理员验证)

sqlplus / as sysdba

6,用“select status from v$instance;”查询实例状态。

说明oralce服务没启动

7,这1步,可以一次性用startup启动数据库,但为了更了详细,分解成3步,第1步“startup nomount”,第2步“alert database mount”,第3步“alter database open”,每步的“select status from v$instance;”状态都不一样,意味在在nomount、mount、open模式下,数据库系统的状态是不一样的。从nomount到mount是指数据库实例成功连接到控制文件,从mount到open表示数据库实例已经成功加载了数据文件,并可供正常访问和操作。

NOMOUNT:读取了控制文件以了解数据库的基本信息,如数据库名称、数据文件和日志文件的位置等,在该状态下尚未与任何数据库相关联,无法提供数据库服务,可以执行如创建数据库、修改参数文件等一些操作。

startup nomount

startup monount

8,上一步执行了startup nomount,这一步执行alter database mount。

MOUNT:数据库实例已经成功连接到控制文件并获取了数据库的结构和配置信息,系统改变号(SCN)已经具体确定,并且数据库实例知道从哪个SCN开始进行恢复。可以执行如恢复数据库、修改数据库的结构等一些管理操作。

alter database mount

9,执行alter database open。

OPEN:数据库实例已经成功加载了数据文件和日志文件的内容,并使其在内存中可用。用户可以正常访问和操作数据库,数据库可以接收用户的查询和事务请求,并返回相应的结果。

alter database open

10,至此为止,oracle数据库已经可以对外提供服务,但为了安全一些,限制只有哪些应用才能访问1521端口,需要用iptables做一些限制。

select name from v$database;

iptables -p TCP -s 127.0.0.1 –dport 1521 -j ACCEPT

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。