数据的分类:
小型:access, foxbase
中型:Mysql sql server
大型:oracle db2
怎么选择数据库:
1:成本
2:项目的规模
3:访问量
4:安全性
oracle 10g
oracle 11g(两个压缩包,选中两个一起解压)使用oracle数据库开启监听和服务
运行--》services.msc
创建用户:create user 用户名 identified by 密码; (注意:密码必须不能数字开头)
删除用户:drop user 用户名 [cascade];
修改密码:alter user 用户名 identified by 新密码;锁定用户:alter user 用户名 account lock;
解锁用户:alter user 用户名 account unlock;
权限管理语法(新用户没有任何权限,必须授权)
授予系统权限:
grant 角色/系统权限 to 用户;授予对象权限:
grant 对象权限 on 数据库对象(表) to 用户;
撤销系统权限:
revoke 角色/系统权限 from 用户;
撤销对象权限:
revoke 对象权限 on 数据库对象(表) from 用户
Connect :允许用户连接到数据库的角色
Resource :允许用户使用数据库存储空间的角色
dba:系统管理员的角色
数据导入导出
该命令在“开始菜单>>运行>>CMD”中执行
一、数据导出(exp.exe)
1、将数据库orcl完全导出,用户名system,密码accp,导出到d:\daochu.dmp文件中
exp system/accp@orcl file=d:\daochu.dmp full=y
2、将数据库orcl中scott用户的对象导出
exp scott/accp@orcl file=d:\daochu.dmp
3、将数据库orcl中的scott用户的表emp、dept导出
exp scott/accp@orcl tables=(emp,dept) file= d:\daochu.dmp
4、将数据库orcl中的表空间testSpace导出
exp system/accp@orcl file=d:\daochu.dmp tablespaces=(testSpace)
二、数据导入(imp.exe)
1、将d:\daochu.dmp 中的数据导入 orcl数据库中。
imp system/accp@orcl file=d:\daochu.dmp full=y
2、如果导入时,数据表已经存在,将报错,对该表不会进行导入;加上ignore=y即可,表示忽略现有表,在现有表上追加记录。
imp scott/accp@orcl file=d:\daochu.dmp full=y ignore=y
3、将d:\daochu.dmp中的表emp导入
imp scott/accp@orcl file=d:\daochu.dmp tables=(emp)
注意:数据导出时 tables在file前不会警告且导出正常,tables在file之后会出现警告,可能导出异常
数据导入时 如果没有指明具体的tables 必须加full=y
三个关键字:
USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息
ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息
DBA_*:有关整个数据库中对象的信息
1、查看所有用户
select * from dba_user;
select * from all_users;
select * from user_users;
2、查看用户系统权限
select * from dba_sys_privs;
select * from all_sys_privs;
select * from user_sys_privs;
3、查看用户对象权限
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
4、查看所有角色
select * from dba_roles;
5、查看用户所拥有的角色
select * from dba_role_privs;
select * from user_role_privs;
6、查看SCOTT具有那些权限,注意用户是大写
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='SCOTT'
(另附:Oracle安装卸载相关文档)