Oracle数据库
Oracle数据库管理系统分为数据库、数据库实例(SID)两部分。
1) 数据库是一系列物理文件(数据文件,控制文件,联机日志,参数文件等)的集合;
2) Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区。
查询当前数据库名:
select name from v$database;
查询当前数据库实例名:
select instance_name from v$instance;
通过数据库实例来对数据库进行管理,一般情况下实例和数据库是一一对应的。一个数据库可以有多个实例,在作数据库服务集群的时候可以用到。
我们访问Oracle都是访问一个实例,但这个实例如果关联了数据库文件,就是可以访问的,如果没有,就会得到实例不可用的错误。
数据库实例名(instance_name)用于对外部连接。在操作系统中要取得与数据库的联系,必须使用数据库实例名。比如我们作开发,要连接数据库,就得连接数据库实例名.
Oracle数据库是通过表空间来存储物理表的,一个数据库实例可以有N个表空间,表空间只是和数据文件(ORA或者DBF文件)发生关系,数据文件是物理的。
一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中。
一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。
Oracle数据库建好后,要想在数据库里建表,必须先为数据库建立用户,并为用户指定表空间。
表的数据,是由用户放入某一个表空间的,而这个表空间会随机把这些表数据放到一个或者多个数据文件中。oracle是由用户和表空间对数据进行管理和存放的。
但是表不是由表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同一个名字的表!
安装Oracle后会有默认的实例,即ORCL。一般不创建多个实例,在默认实例下创建表空间和用户等。
1,运行CMD进入DOS界面,首先输入:sqlplus,回车;再输入:sys/sys as sysdba,回车,即进入“SQL〉”操作状态。
2,输入:CREATE TABLESPACE 表空间名称 LOGGING DATAFILE 'c:\表空间数据文件.ora' SIZE 500M autoextend on next 200m maxsize 2048m;,表空间创建完成。
3,输入:CREATE USER 用户名称 PROFILE default IDENTIFIED BY 用户密码 DEFAULT TABLESPACE 授权访问的表空间名称 TEMPORARY TABLESPACE temp ACCOUNT UNLOCK;,用户创建完成,并授权用户访问某表空间。
配置监听器(Listener)它负责管理 Oracle 数据库和客户端之间的通讯,它在一个特定的网卡端口(默认是TCP 1521端口)上监听连接请求,并将连接转发给数据库。
sqlnet.ora,tnsnames.ora属于客户端,listener.ora属于服务器端。客户端的请求可以通过访问服务器“SERIVCE”的形式发送到监听器(listener)上
查看TNSNAMES.ora文件,里面关于“SERIVCE”有以下的内容:
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)