Oracle数据库安装
数据库的类型
一、数据库版本说明
1998年Oracle8i:i指internet,表示oracle向互联网发展,8i之前数据库只能对应1个实例
2001年Oracle9i:8i的升级,性能更佳,管理更人性化
2003年Oracle10g:g指grid,表示采用网格计算的方式进行操作,性能更好
2007年Oracle11g:10g的稳定版本,目前公司里面最常用
2013年Oracle12c:c指cloud,表示云计算,支持大数据处理
2018年Oracle18c:部分工作自主完成,减少手动操作的工作量
2019年Oracle19c:是12c和18c的稳定版本
二、软件的下载和安装
1.下载软件
我们通过官方来下载11g,地址为:
https://www.oracle.com/partners/campaign/112010-win64soft-094461.html
如果没有登录则需要先登录后才能下载。
账号:dengpbs@163.com 密码:Dpb2255613@
下载下来后解压缩即可
2.安装数据
解压缩后我们进入第一个目录中找到setup.exe。双击运行即可。
然后按步骤安装即
下一步
配置口令:统一123456
安装等待
继续等待
口令管理
安装完成
然后我们可以在系统 服务 中,查看启动运行的Oracle数据库
Oracle 11g服务详细介绍及哪些服务是必须开启的?
安装oracle 11g R2中的方法成功安装Oracle 11g后,共有7个服务,这七个服务的含义分别为
- Oracle ORCL VSS Writer Service:Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝(shadow copy)。它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统能。(非必须启动)
- OracleDBConsoleorcl:Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl。在运行Enterprise Manager(企业管理器OEM)的时候,需要启动这个服务。(非必须启动)
- OracleJobSchedulerORCL:Oracle作业调度(定时器)服务,ORCL是Oracle实例标识。(非必须动)
- OracleMTSRecoveryService:服务端控制。该服务允许数据库充当一个微软事务服务器MTS、COM/COM+对象和分布式环境下的事务的资源管理器。(非必须启动)
- OracleOraDb11g_home1ClrAgent:Oracle数据库.NET扩展服务的一部分。 (非必须启动)
- OracleOraDb11g_home1TNSListener:监听器服务,服务只有在数据库需要远程访问的时候才需要。(非必须启动,下面会有详细详解)。
- OracleServiceORCL:数据库服务(数据库实例),是Oracle核心服务该服务,是数据库启动的基础, 只有该服务启动,Oracle数据库才能正常启动。(必须启动)那么在开发的时候到底需要启动哪些服务呢?对新手来说,要是只用Oracle自带的sql*plus的话,只要启动OracleServiceORCL即可,要是使用PL/SQL Developer等第三方工具的话,OracleOraDb11g_home1TNSListener服务也要开启。OracleDBConsoleorcl是进入基于web的EM必须开启的,其余服务很少用。
注:ORCL是数据库实例名,默认的数据库是ORCL,你可以创建其他的,即OracleService+数据库名
服务管理:
1、所有的服务改成"手动"
2、启动两个
- 监听服务:OracleOraDb10g_home1TNSListener监听客户端的连接
- 数据库服务:OracleServiceORCL 命名规则:OracleService+实例名
3.创建数据库
正常安装数据库的时候会默认安装一个orcl数据库。我们也可以通过 Database Configuration Assistant 来创建新的数据库。操作如下:
进入操作
创建数据库
创建数据库的唯一标识SID
指定口令
下一步
一直下一步。最后完成
创建完成
4.PLSQL
客户端工具下载:https://www.oracle.com/tools/downloads/sqldev-downloads-2143.html
解压缩出来后运行
打开后的主页
建立连接
录入相关的信息:
添加测试。查看是否能够连接成功
提示:状态:成功。说明我们连接正常了
点开+我们就可以看到相关的数据库的信息了。
三、数据库的卸载
1.关闭相关服务
我们进入 service
中,关闭所有和oracle相关的服务
3.卸载软件
在搜索中找到Universal Installer。双击开始卸载
选中要删除的Oracle产品,然后点击删除
在你安装的app文件夹里面找到deinstall.bat文件,然后双击
双击后:出现指定要取消配置的所有单示例监听程序【LISTENER】:
没有权限需要通过管理员打开
然后再输入OCRL
等待时间比较长。输入y继续操作
继续
到这一步再CMD里面的操作就完成了,等待CMD界面自动消失即可
3.删除注册信息
然后我们进入注册表中删除oracle的相关注册信息。输入: regedit 进入
删除HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 路径下的所有Oracle开始的服务名称
删除:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application注册表的所有Oracle开头的所有文件
删除:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 注册表
若环境变量中存在Oracle相关的设置,直接删除,没有就跳过这一步
删除E:\app目录下的所有文件,根据自己的安装目录来
删除C盘下C:\Program File 目录下的Oracle目录
再删除C盘下C:\用户\dpb这个Oracle文件
注:所删除过程中遇到java.exe程序正在运行,按CTRL+shift+esc进入任务管理器,结束这个任务。
删除干净后重启电脑即可。
四、用户和权限
Oracle中,一般不会轻易在一个服务器上创建多个数据库,在一个数据库中,不同的项目由不同的用户访问,每一个用户拥有自身创建的数据库对象,因此用户的概念在Oracle中非常重要。Oracle的用户可以用CREATE USER命令来创建。其语法是:
CREATE
USER 用户名 IDENTIFIED BY 口令 [ACCOUNT LOCK|UNLOCK]
说明:LOCK|UNLOCK创建用户时是否锁定,默认为锁定状态。锁定的用户无法正常的登录进行数据库操作。
案例:
CREATE USER dpb IDENTIFIED BY 123456 ACCOUNT UNLOCK;
尽管用户成功创建,但是还不能正常的登录Oracle数据库系统,因为该用户还没有任何权限。如果用户能够正常登录,至少需要CREATE SESSION系统权限。
Oracle用户对数据库管理或对象操作的权利,分为系统权限和数据库对象权限。系统权限比如:CREATE SESSION,CREATE TABLE等,拥有系统权限的用户,允许拥有相应的系统操作。数据库对象权限,比如对表中的数据进行增删改操作等,拥有数据库对象权限的用户可以对所拥有的对象进行对应的操作。
还有一个概念就是数据库角色(role),数据库角色就是若干个系统权限的集合。下面介绍几个常用角色:
- CONNECT角色,主要应用在临时用户,特别是那些不需要建表的用户,通常只赋予他们CONNECT role。CONNECT是使用Oracle的简单权限,拥有CONNECT角色的用户,可以与服务器建立连接会话(session,客户端对服务器连接,称为会话)。
- RESOURCE角色 , 更可靠和正式的数据库用户可以授予RESOURCE
role。RESOURCE提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)等。 - DBA角色,DBA role拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。用户SYSTEM拥有DBA角色。
一般情况下,一个普通的用户(如SCOTT),拥有CONNECT和RESOURCE两个角色即可进行常规的数据库开发工作。
可以把某个权限授予某个角色,可以把权限、角色授予某个用户。系统权限只能由DBA用户授权,对象权限由拥有该对象的用户授权,授权语法是:
GRANT 角色|权限 TO 用户(角色)
案例:
之后就可以通过 dpb
这个账号来正常的登录了
删除用户操作:
其他操作:
//回收权限
REVOKE
角色|权限 FROM 用户(角色)//修改用户的密码
ALTER USER 用户名 IDENTIFIED BY 新密码
//修改用户处于锁定(非锁定)状态
ALTER USER 用户名 ACCOUNT LOCK|UNLOCK