一、数据库创建
利用图形界面DBCA(数据库配置向导)创建数据库。
DBCA(DataBase Configuration Assistant)是一款图形化用户界面工具,重要用来帮助数据库管理员快速直观地创建数据库。单击“开始/程序/ Oracle - OraDb11g_home1/配置和移植工具/ Database Configuration Assistant”命令
二、SQL*Plus概述
SQL*Plus是Oracle提供的访问数据库服务器的工具软件,是Oracle的核心产品。SQL指结构化查询语言;Plus指Oracle将标准SQL语言进行扩展,提供另外一些Oracle服务器能够接受和处理的命令。通过SQL*Plus直接存取Oracle数据库,包括数据提取、数据库结构的修改和数据库对象的管理。
SQL*Plus具有很强的功能,其主要作用如下:
输入、编辑、存取和运行SQL命令。
测试SQL、PL/SQL程序段的正确性。
对查询结构进行格式化、计算、存储、打印或生成网络输出。
向其他客户端用户发送消息或接收反馈信息。
管理和维护数据库。
SQL*Plus连接数据库:
AS: 用来指定管理权限,可选值有SYSDBA,SYSOPER和SYSASM.
SYSDBA权限具有SYSOPER的所有权限,另外还能够创建数据库,并且授于SYSDBA或者SYSOPER权限给其他数据库用户;
SYSOPER权限的管理员可以管理和关闭数据库,执行联机和脱机备份,归档当前重做日志文件,连接数据库;
SYSASM权限是Oracle 11g的新特性,是ASM实例所特有的,用来管理数据库存储。
NOLOG:表示不记录日志文件。
例:打开SQL*Plus, sys用户以SYSDBA身份进入数据库
SQLPLUS sys/a123 AS SYSDBA
例:客户端连接SQL*Plus时指定网络服务器。
SQLPLUS sys/a123@orcl AS SYSDBA
SQL*Plus命令连接与断开数据库:
例:使用CONNECT命令通过scott用户连接数据库,然后使用DISCONN命令断开数据库。
SQL> CONNECT scott/tiger;
SQL> DISCONN;
SQL> SELECT * FROM scott.emp;
SQL> CONN sys/a123 AS SYSDBA;
退出SQL*Plus,关闭SQL*Plus窗口,可以执行EXIT或者QUIT命令。
SQL*Plus命令使用:
1.Help命令,获取某个具体命令的帮助信息,如HELP CONNECT;
2.DESCRIBE命令,查看表结构,获取函数、存取过程和包的描述,如DESC user_tables;
3.显示SQL缓冲区的命令LIST,SQL*Plus会将上一次执行的SQL命令保存到缓冲区,用户可以对缓冲区中的信息进行编辑。使用LIST命令可以显示当前SQL缓冲区的内容。
4. 修改SQL命令CHANGE.
5. 编辑命令EDIT.
6. 保存命令SAVE,将SQL命令存储到磁盘上,文件后缀名默认为.SQL。
7. GET命令,把磁盘上的命令文件内容调入当前缓冲区,并显示在屏幕上。
8. 运行命令文件命令START或@.
9. SPOOL命令。
10.SHOW命令。
三、数据库启动与关闭
在用户试图连接到数据库前,必须先启动数据库。每个启动的数据库都对应一个实例。
当前系统中所有的服务均可以通过“服务”窗口进行查看和设置。启动Oracle数据库服务,首先在“服务”窗口中查看Oracle数据库服务是否已经启动,Oracle数据库服务的名称为OracleService<SID>,如果它的状态显示为“已启动,则说明数据库实例已经在正常方式下启动。
如果数据库实例未启动,可以通过该服务的“属性”对话框进行启动。当数据库服务的启动类型设为“自动”时,也应将Oracle监听程序服务OracleOraDb11g_home1TNSListener的启动类型设置为“自动”。
连接数据库的方式有两种:
1.图形化用户界面方式 :
运行“开始/程序/ Oracle - OraDb11g_home1/应用程序开发/ SQL Plus”应用程序
2.数据库启动方式:
2.1STARTUP NOMOUNT
表示数据库启动时,只读取数据库实例的参数,不打开控制文件,不打开数据库。启动数据库实例,即启动SGA和后台进程,这种启动只需要init.ora文件。此选项用于数据库的控制文件全部损坏,需要重新创建数据库控制文件或创建一个新的数据库时使用。这种方式下启动可执行重建控制文件、重建数据库操作。
2.2STARTUP MOUNT 数据库名
表示数据库启动时,装载数据库实例并打开控制文件,但不打开数据库。此选项用于修改数据库的运行方式或进行数据库修复。这种方式启动下可执行:数据库日志归档、数据库恢复、重新命名一些数据库文件 ,如:系统表空间或日志文件。
2.3STARTUP OPEN 数据库名
表示数据库启动时,装载数据库并启动数据库实例,打开控制文件,并打开数据库,包括Redo log文件在内的所有数据库文件, 这种方式下可访问数据库中的数据。
STARTUP OPEN 数据库名 PARALLEL 表示打开数据库并将数据库切换到并行(PARALLEL)模式下运行
STARTUP OPEN 数据库名 EXCLUSIVE 表示打开数据库并将数据库切换到互斥(EXCLUSIVE)模式下运行
建议一般情况下只要使用STARTUP OPEN 数据库名 命令正常打开数据库即可。
2.4STARTUP
这是数据库默认启动选项,等于以下三个命令:startup nomount、alter database mount、alter database open
2.5STARTUP FORCE
以强制启动方式启动数据库,可用于数据库的重新启动。当不能关闭数据库时,可使用STARTUP FORCE先关闭数据库,再执行正常启动数据库命令。
2.6STARTUP RESTRICT
表示数据库以受限方式或约束方式启动,这种方式能够启动数据库,但只允许具有RESTRICTED SESSION 权限的用户访问。只有具有RESTRICT SESSION权限的用户可以连接数据库,没有RESTRICT SESSION权限的用户不能连接数据库。
2.7STARTUP PFILE=参数文件名
带初始化参数文件的启动方式 ,先读取参数文件,再按参数文件中的设置启动数据库,如startup pfile=E:\Oracle\admin\oradb\pfile\init.ora
数据库关闭方式:
1.SHUTDOWN NORMAL
NORMAL是默认选项,表示正常关闭数据库。等候客户的请求完成,所有的事务提交,拒绝再次进行连接。
2.SHUTDOWN IMMEDIATE
表示立即关闭数据库。使用这种方式关闭数据库,系统将连接到数据库的所有用户没有提交的事务全部回退,中断连接,然后关闭数据库,下一次启动不需要任何恢复过程。
执行SHUTDOWN IMMEDIATE,数据库并不立即关闭, 而是在Oracle执行某些清除工作后才关闭(终止会话、释放会话资源), 当使用SHUTDOWN不能关闭数据库时,SHUTDOWN IMMEDIATE可以完成数据库关闭的操作。
3.SHUTDOWN ABORT
表示直接异常关闭数据库,正在访问数据库的会话会被突然终止, 如果数据库中有大量操作正在执行,这时执行SHUTDOWN ABORT后,重新启动数据库需要很长时间。该方式关闭数据库时,系统立即关闭数据库实例, 对于连接到数据库的所有数据库不作任何检查,也不作数据库完整性检查。它不答应新连接,马上断开所有的用户连接,终止事务,不回滚事务,下一次启动需要恢复过程。
在使用SHUTDOWN ARORT进行关闭数据库后,需要使用:STARTUP OPEN RECOVER 进行启动示例,装载数据库并启动数据库介质恢复过程。
4.SHUTDOWN TRANSACTIONAL
表示事务终结后再关闭数据库,该方式中,数据库必须等待所有用户的事务终结。它不答应新连接,完成事务后,有连接的用户将被解除连接,下一次启动不需要任何恢复过程。
四、数据库的修改与删除
1.数据库修改:
1.1数据库由未挂载实例修改为挂载实例状态
STARTUP NOMOUNT 启动数据库时只读取数据库实例参数,并不挂载数据库实例,可以使用ALTER DATABASE MOUNT 来挂载数据库实例。
例:SQL > STARTUP NOMOUNT;
SQL > ALTER DATABASE MOUNT EXCLUSIVE;
1.2数据库由挂载实例修改为打开状态
STARTUP MOUNT来启动数据库,并挂载上数据库,但是保持数据库的关闭状态。可以使用ALTER DATABASE OPEN来打开数据库。
例:SQL > STARTUP MOUNT;
SQL > ALTER DATABASE OPEN EXCLUSIVE;
1.3数据库状态修改为只读或可读写方式
数据库状态可读可写是默认的操作。
例:SQL > ALTER DATABASE OPEN READ ONLY;
SQL > ALTER DATABASE OPEN READ WRITE;
1.4启用或取消数据库的受限制
STARTUP RESTRICT来启动装载数据库并以受限方式打开数据库实例。可以使用ALTER SYSTEM DISABLE RESTRICTED SESSION来取消数据库的受限制。
例:SQL > ALTER SYSTEM DISABLE RESTRICTED SESSION;
SQL > ALTER SYSTEM ENABLE RESTRICTED SESSION;
1.5修改数据库的字符集
例:将数据库的字符集修改为ZHS16GBK
ALTER DATABAE CHARACTER SET SIMPLIFIED
CHINESE_CHINA.ZHS16GBK;
2.数据库删除:
选择“开始/程序/Oracle - OraDb11g_home1/配置和移植工具/Database Configuration Assistant”
五、数据库用户
SYS用户和SYSTEM用户
Oracle在构建数据库时,默认将建立两个管理员用户,利用这两个管理员用户可以执行对数据库服务器的管理操作。 SYS是在数据库创建的时候就自动创建,并且给予SYSDBA权限. 所有的dict都存储在SYS中。SYS用户具有SYSDBA和SYSOPER权限
SYSTEM用户主要具有SYSOPER权限。
SYS是Oracle数据库中权限最高的帐号,具有CREATE DATABASE的权限,主要是数据库的系统管理,而SYSTEM没有这个权限,主要是dba管理,是数据库的基本管理
“SYSDBA”即数据库管理员权限 :
打开数据库服务器
关闭数据库服务器
备份数据库
恢复数据库
日志归档
会话限制
管理功能
创建数据库
“SYSOPER” 即数据库操作员权限:
打开数据库服务器
关闭数据库服务器
备份数据库
恢复数据库
日志归档
会话限制
例3-6:查看各帐户的设置情况
SELECT USERNAME, ACCOUNT_STATUS FROM DBA_USERS;
例3-7:查询当前oracle数据库用户名
SHOW USER;
SCOTT用户
用过ORACLE数据库软件的人都知道有个Scott用户,它是Oracle公司第一个员工的名字。SCOTT用户是 Oracle自带的示例用户,它默认的密码是”Tiger”(Tiger是Scott养的猫的名字),它具有NORMAL即普通用户权限,可以用来查询某些数据表的数据。
来源:CSDN
作者:QilanAllen
链接:https://blog.csdn.net/QilanAllen/article/details/103726108