阅读更多
供初学者入门学习使用,以开发者常见、常用的知识为主,基本上以开发者对数据库的使用过程为主线编写相关内容,包括监听与连接、用户管理与权限、建表、增删改查、统计、函数、序列、视图、索引、闪回、备份与恢复等,无过于深奥的知识、未过于深究技术的细节。
一、连接数据库
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
用户名/密码,即可连接;如果本机有多个数据库,或者连接其他机器数据库,使用如下命令:
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 表空间名称;
修改用户密码:
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;
收回权限语法:
revoke 角色名或权限 from 用户名;
4. 用户权限查询
可使用 system 用户,查询表 dba_role_privs
5. 练习
创建 student 用户,并授与相应的权限。
更多内容,见附件。
目录如下:
- 数据库简明教程V0.1.pdf (632.9 KB)
- 下载次数: 4
- 大小: 3.8 KB