ORACLE知识点总结
一、ORACEL常用命令
1、解锁账户:ALTER USER username ACCOUNT UNLOCK;
2、查看数据库字符集:SELECT USERENV ('language') FROM DUAL;
3、创建表空间:create tablespace cdj_userpace1 datafile '/usr/oracle/oradata/cdj/userpace1.dbf' size 500M;
4、创建数据库用户:create user 用户名 identified by 密码 default tablespace 表空间;
5、给用户授权:grant connect,resource to 用户名;
6、删除数据库用户:drop user 用户名 cascade; // 加上cascade可以将用户创建的东西全部一起删除
二、数据库名、数据库实例名、数据库域名、全局数据库名、数据库服务名的区别和联系
1、数据库名就是一个数据库的标识,就像人的身份证号一样。如果一台机器上装了多个数据库,那么每一个数据库都有一个数据库名。
数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。
查询当前数据库名
方法一:select name from v$database;
方法二:show parameter db
方法三:查看参数文件。
2、数据库实例名是用于和操作系统进行联系的标识,就是说数据库和操作系统之间交互用的是数据库实例名。
数据库名和实例名可以相同也可以不同。
在一般情况下,数据库名和实例名是一对一的关系,但如果在oracle并行服务器架构(即oracle实时应用集群)中,数据库名和实例名是一对多的关系。
查询当前数据库实例名
方法一:select instance_name from v$instance;
方法二:show parameter instance
方法三:在参数文件中查询。
数据库实例名与ORACLE_SID
虽然两者都表是oracle实例,但两者是有区别的。instance_name是oracle数据库参数。而ORACLE_SID是操作系统的环境变量。ORACLD_SID用于与操作系统交互,也就是说,从操作系统的角度访问实例名,必须通过ORACLE_SID。且ORACLE_SID必须与instance_name的值一致,否则,你将会收到一个错误。
3、数据库域名,在分布工数据库系统中,不同版本的数据库服务器之间,不论运行的操作系统是unix或是windows,各服务器之间都可以通过数据库链路进行远程复制,数据库域名主要用于oracle分布式环境中的复制。举例说明如:
全国交通运政系统的分布式数据库,其中: 福建节点:fj.jtyz 福建厦门节点:xm.fj.jtyz 江西:jx.jtyz 江西上饶:sr.jx.jtyz 这就是数据库域名。
数据库域名在存在于参数文件中,他的参数是db_domain.
查询数据库域名
方法一:select value from v$parameter where name = 'db_domain';
方法二:show parameter domain 方法三:在参数文件中查询。
4、全局数据库名=数据库名+数据库域名,如前述福建节点的全局数据库名是:oradb.fj.jtyz
5、数据库服务名,从oracle9i版本开始,引入了一个新的参数,即数据库服务名。参数名是SERVICE_NAME。数据库与客户端的连接字符串使用数据库服务名。之前用的是ORACLE_SID,即数据库实例名。数据库服务名可以与数据库实例名一致,也可以不一致。可以配置多个服务名连接同一个数据库,相当于是给实例名起了多个“别名”给不同的客户端程序使用。
查询数据库服务名
方法一:select value from v$parameter where name = 'service_name';
方法二:show parameter service_name
方法三:在参数文件中查询。
综上所述,为了便于记忆,可以理解为,数据库名/全局数据库名是数据库系统内部的称呼,数据库实例名是介绍给操作系统认识的,数据库服务名是介绍给操作系统上的客户程序认识的。
各个名字在主要配置文件中的使用举例如下:
listener.ora文件配置
SID_LIST_LISTENER = //配置文件中必须要要有SID_LIST_LISTENER,否则启动监听时会提示监听程序不支持服务。
(SID_LIST =
(SID_DESC=
(GLOBAL_DBNAME = 全局数据库名)
(ORACLE_HOME =ORACLE_HOME环境变量设置的位置)
(SID_NAME = 数据库实例名)
)
)
监听名称 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 端口))
)
)
tnsnames.ora文件配置
数据库服务名 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ip地址)(PORT = 端口)) //注意:这里的IP地址如果写成192.168.*.*等局域网IP时,必须联网,sqlplus才能正常连接数据库。 若无网络,必须写成127.0.0.1
)
(CONNECT_DATA =
(SERVICE_NAME = 数据库服务名)
)
)
两个配置文件都是放在$ORACLE_HOME\network\admin目录下。
三、使用sqlplus可以用sysdba用户无密码登录的原因
命令:sqlplus / as sysdba 即可登陆dba权限的用户,原因在于${ORACLE_HOME}/network/admin/sqlnet.ora中设置了“以操作系统认证”的方式登陆数据库。即当前的系统用户位于dba的用户组中,则可以以这种方式登陆。 目前一般刚装好的oracle数据库都是这种认证方式。
SQLNET.AUTHENTICATION_SERVICES= (NTS) // NTS代表操作系统认证,改成none, 则代表改成密码认证
四、windows/linux下程序连接ORACLE需要的东西。
1、windows下:oci.h 和 oci.dll或oci.lib
2、unix/linux下:${ORACLE_HOME}/include下的头文件,以及libclntsh.so和libnnz11.so
oracle\include\nzerror.h
......\.......\nzt.h
......\.......\occi.h
......\.......\occiAQ.h
......\.......\occiCommon.h
......\.......\occiControl.h
......\.......\occiData.h
......\.......\occiObjects.h
......\.......\oci.h
......\.......\oci1.h
......\.......\oci8dp.h
......\.......\ociap.h
......\.......\ociapr.h
......\.......\ocidef.h
......\.......\ocidem.h
......\.......\ocidfn.h
......\.......\ociextp.h
......\.......\ocikpr.h
......\.......\ocixml.h
......\.......\ocixmldb.h
......\.......\ocixstream.h
......\.......\odci.h
......\.......\oratypes.h
......\.......\ori.h
......\.......\orid.h
......\.......\orl.h
......\.......\oro.h
......\.......\ort.h
......\.......\xa.h
ORACLE知识点总结的更多相关文章
- [独孤九剑]Oracle知识点梳理(十)%type与%rowtype及常用函数
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(九)数据库常用对象之package
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(八)常见Exception
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(七)数据库常用对象之Cursor
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(六)数据库常用对象之Procedure、function、Sequence
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(五)数据库常用对象之Table、View
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(四)SQL语句之DML和DDL
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(三)导入、导出
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(二)数据库的连接
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
- [独孤九剑]Oracle知识点梳理(一)表空间、用户
本系列链接导航: [独孤九剑]Oracle知识点梳理(一)表空间.用户 [独孤九剑]Oracle知识点梳理(二)数据库的连接 [独孤九剑]Oracle知识点梳理(三)导入.导出 [独孤九剑]Oracl ...
随机推荐
- Android 菊花加载工具类
先看看实现效果图 1.首先自定义一个类继承系统ProgressDialog /** * Created by hanbao0928 on 2018/11/1. */ public class Dial ...
- C#.GetHashCode方法简单比较
- WCF 服务的集合管理器的设计
今天是2019年2月1日,时间过得针对,马上就年底了,当前新年也离我们越来越近了.在此,我也祝福经常浏览我博客的朋友们“新年快乐.阖家欢乐”,来年有一个好彩头.在即将结束这一年之计,写今年的最后一片文 ...
- express基础项目创建
https://www.cnblogs.com/zhentaoo/p/6392248.html
- super()调用父类构造方法
super()表示调用父类中的构造方法 1.子类继承父类,子类的构造方法的第一行,系统会默认编写super(),在调用子类的构造方法时,先调用父类的无参数构造方法 2.如果父类中只有有参数构造方法,那 ...
- MySQL导入数据报 Got a packet bigger than‘max_allowed_packet’bytes 错误的解决方法
MySQL根据配置文件会限制Server接受的数据包大小.有时候大的插入和更新会受 max_allowed_packet 参数限制,导致大数据写入或者更新失败. 通过终端进入mysql控制台,输入如下 ...
- Unity - Photon PUN 本地与网络同步的逻辑分离 (一)
服务器大家可以使用Photon官网提供的,这样会变得很简单,直接搭建下就好.或者下载到本地开启本地端Photon服务器 (大家也可以使用和我一样方式有时间做了个winform 程序用来管理本地服务器开 ...
- JS阻止事件冒泡的3种方法之间的不同
什么是JS事件冒泡?: 在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这 ...
- 【NIFI】 Apache NiFI 集群搭建
NiFI 集群介绍 NiFi集群架构 NiFi采用Zero-Master Clustering范例.集群中的每个节点对数据执行相同的任务,但每个节点都在不同的数据集上运行.其中一个节点自动选择(通过A ...
- 初识STM32中的USMART组件
今天看了usmart那部分的模块,感觉使我们stm32的学习变更加方便,你可以通过串口查看和检验你所注册过的函数. USMART配步骤1.将USMART包添加到工程中,头文件要包括path2.添加所需 ...