Oracle 数据库简明教程 V0.1

  供初学者入门学习使用,以开发者常见、常用的知识为主,基本上以开发
者对数据库的使用过程为主线编写相关内容,包括监听与连接、用户管理与权
限、建表、增删改查、统计、函数、序列、视图、索引、闪回、备份与恢复等,
无过于深奥的知识、未过于深究技术的细节。

一、连接数据库

1.  监听
监听运行于服务器端,响应客户端(如 sqlplus、TOAD、PLSql 等)的连接请
求。
检查监听状态,使用如下命令:
lsnrctl status
关闭/启动监听命令:
lsnrctl stop/start
2.  本地服务名配制
本地服务名,对应于数据库服务器的一套参数,包括 IP、端口、数据库名
称等。使得本地的客户端或程序可以方便地访问到数据库服务器。
本地服务名配置,可以使用图型界面,或者直接修改配置文件,文件位置
如下:
%ORACLE_HOME%\NETWORK\ADMIN\tnsnames.ora
修改的方法非常简单,复制粘贴一段服务名的配置语句,修改服务名、IP、
数据库名称即可。
测试服务名配置是否有效,可使用 tnsping 命令:
tnsping  服务名
3.  使用 sqlplus 连接本机、其他机器数据库
以 DOS 窗口中使用 sqlplus 为例。如果本机只有一个数据库实例,使用 sqlplus
2015 年 9 月  Oracle 数据库简明教程 V0.1  http://wallimn.iteye.com
- 3 -用户名/密码,即可连接;如果本机有多个数据库,或者连接其他机器数据库,
使用如下命令:
sqlplus  用户名/密码@本地服务名
有的 Windows 系统中执行以上命令会出错,可以使用双引号:
sqlplus “用户名/密码@本地服务名”
4.  使用 SQL Developer 连接本机、其他机器数据库
SQL Developer 为 Oracle11g 中提供的数据库管理工具,比较好用。可以剥离
出来,在 Oracle9、Oracle10 中都可以使用。连接时使用图形界面进行连接配置
就可以了,直接指定 IP、端口、实例名即可,不需要本地服务名。


二、用户管理与权限分配

1.  创建用户
管理用户、表空间、权限等,需要有相应的权限,一般使用 system 用户,
可以使用 sql developer,也可以使用 sql plus,使用后者的语句为:
conn / as sysdba
系统有个默认的用户表空间用于保存用户数据,名为 users,一般情况下需
要为用户创建单独的表空间,便于管理、备份,系统内置的临时表空间名称为
temp,用于存放排序等临时数据,如果用户的数据量不是特别大,可使用系统
内置的临时表空间。
创建表空间的命令如下:
create tablespace  表空间名称  datafile ‘表空间文件全名’ size 100m;
创建用户的语句为:
create user  用户名  identified by  密码
default tablespace  表空间名称
temporary tablespace temp;
修改用户表空间:
alter user  用户名  default tablespace  表空间名称;
修改用户密码:
2015 年 9 月  Oracle 数据库简明教程 V0.1  http://wallimn.iteye.com
- 5 -alter user  用户名  identified by  用户密码;
修改用户账号状态(锁定使用 unlock、解锁使用 lock):
alter user  用户名  account unlock;
2.  删除用户
drop user  用户名  cascade;
注意,如果用户删除,其拥有的数据也会被删除。当前连接的用户不能删
除。删除用户要使用具有相应的权限。
3.  常用用户权限
权限有很多种,详见教材。角色是多个权限的组合,可将多个权限一起进
行授权。
常用角色有:
connect,  连接权限等;
resource,  资源权限,包括建表、序列、存储过程等;
dba,  所有权限,不受权限
授权语法:
grant  角色名或权限  to  用户名  [with admin option];
如: grant connect,resource to study;
收回权限语法:
2015 年 9 月  Oracle 数据库简明教程 V0.1  http://wallimn.iteye.com
- 6 -revoke  角色名或权限  from  用户名;
4.  用户权限查询
可使用 system 用户,查询表 dba_role_privs
5.  练习
创建 student 用户,并授与相应的权限。

更多内容,见附件。

你可能感兴趣的:(oracle)