Oracle体系架构和导入/导出
1. Oracle的体系架构
Oracle的体系结构是数据库的组成,工作过程,以及数据库中数据的组织与管理机制,要了解oracle数据库的体系结构,就必须要理解oracle的主要组件和重要的概念。Oracle体系结构包含一系列组件,包括实例、用户进程、服务进程、数据文件及其他文件,如参数文件、口令文件和归档日志文件等
2. 表空间的含义
表空间是数据库的逻辑划分,一个表空间只能属于一个数据库。所有的数据库对象都存放在指定的表空间中。但主要存放的是表, 所以称作表空间。
Oracle数据库中至少存在一个表空间,即SYSTEM的表空间。
SQL Server数据库与Oracle数据库之间最大的区别要属表空间设计。Oracle数据库开创性地提出了表空间的设计理念,这为Oracle数据库的高性能做出了不可磨灭的贡献。可以这么说,Oracle中很多优化都是基于表空间的设计理念而实现的。
3. 用户和权限之间的关系
1、用户:应用系统的具体操作者,用户可以自己拥有权限信息,可以归属于0~n个角色,可属于0~n个组。他的权限集是自身具有的权限、所属的各角色具有的权限、所属的各组具有的权限的合集。它与权限、角色、组之间的关系都是n对n的关系。
2、权限:系统的所有权限信息具有上下级关系,是一个树状的结构。对于每个权限,又存在两种情况,一个是只是可访问,另一种是可授权,例如对于“查看用户”这个权限,如果用户只被授予“可访问”,那么他就不能将他所具有的这个权限分配给其他人。
3、角色:为了对许多拥有相似权限的用户进行分类管理,定义了角色的概念,例如系统管理员、管理员、用户等角色。角色具有上下级关系,可以形成树状视图,父级角色的权限是自身及它的所有子角色的权限的综合。父级角色的用户、父级角色的组同理可推。
用户基于角色的权限控制的好处:用户基于角色的权限访问控制模型叫RBAC(Role-Based Access Control),在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限,极大地简化了权限的管理。
在一个组织中,角色是为了完成各种工作而创造,用户则依据它的责任和资格来被指派相应的角色,用户可以很容易地从一个角色被指派到另一个角色。角色可依新的需求和系统的合并而赋予新的权限,而权限也可根据需要而从某角色中回收。
——————————————————————————————————————
角色是按照业务特点划分的:一种角色表示负责完成一定范围职责的工作内容的
角色:代表一类人,例如:财务会计,仓库管理员
用户表示一个具体的系统操作者。
用户:代表使用者,例如:张三、李四
权限:对一个或多个角色或用户赋予相应的权限,使其能够进行数据的查询和增删改的功能。不同的用户可以是同一种角色,比方说客户经理是一种角色,张三、李四是用户,他们的角色都是客户经理。系统的使用者只能是用户。
角色就是具有相同功能权限的集合、首先建一种角色,给这种角色分配相应的权限,在建用户,用户属于那种角色就建在哪种角色里,这样用户就拥有了此角色的所有权限。
也可以说,角色是拥有相同权限用户的集合 。其实、建立角色,再在角色下建立用户是基于便于管理权限分配,要是没有建立角色,那用户的权限就得一个一个的给分配,一个公司有那么多用户,分起来很繁琐。
4. 数据库的导入和导出
1、以cmd命令操作符导入导出
数据库的导出(exp):
将数据库orcl完全导出,用户名scott密码tiger导出到D:\daochu.dmp中 exp
scott/tiger@orclfile=d:\daochu.dmp full=y
将数据库中system用户与sys用户的表导出
exp scott/tiger@orcl file=d:\daochu.dmpowner=(system,sys)
将数据库中的表table1、table2导出
exp scott/tiger@orclfile=d:\daochu.dmptables=(table1,table2)
将数据库中的表table1中的字段filed1以”00”打头的数据
exp scott/tiger@orcl file=d:\daochu.dmptables (table1)query=\”wherefiled1like’00%’\”
数据库的导入(imp):
将D:\daochu.dmp中的数据导入orcl数据库中。
imp scott/tiger@orcl file=d:\daochu.dmp
上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
在后面加上ignore=y就可以了。
将d:\daochu.dmp中的表table1导入
imp scott/tiger@orcl file=d:\daochu.dmptables=(table1)
2、用PL/SQL Develpoer工具完成导入导出
用账号在PL/SQL Develpoer中连接oracle数据库,然后 选择Tools –> Import tables ,看到显示了三个选项卡,分别是Oracle Import ,Sql Insert,PL/SQL Developer。
同样的,在Tools –> Export tables,也有和上面选项卡对应的导出功能,它们分别是Oracle Export ,Sql Insert,PL/SQL Developer。