数据库的分类
1.小型数据库 access , foxbase 负载量小,1000人内,比如留言本,成本千元以内
2.中型数据库 sql server , mysql ,informix 日访问量10000——15000 ,成本在万元
3.大型数据库 oracle , db2 ,sybase 负载可以处理海量数据 安全性很高 ,本身昂贵
做项目该选取哪种数据库的依据:
1.项目的规模
a.负载多大,用户多大
b.成本
c.安全性
-------------------------------------------------------------
oracle 管理员等级
oca [oracle初级认证]
ocp [oracle专业认证]
ocm [oracle大师认证]
-------------------------------------------------------------
oracle 基本命令
一、连接命令
conn[ect] <用户名>/<密码>
断开
disc[onnect]
修改密码
passw[ord] <用户名>
退出
exit
二、文件操作命令
(1)start 和 @
说明:运行sql脚本
案例: sql>@ d:\a.sql 或者 sql > start d:\a.sql
(2)edit 编辑指定的sql的脚本
sql > edit d:\a.sql
(3)spool 将sql*plus屏幕内容输入到指定文本
sql > spool d:\b.sql 并输入 sql > spool off
三、用户管理命令
创建用户
create user <username> identified <password>
修改密码
password <username>
删除用户
drop user <username> cascade 如果要删除的用户,已经创建了表,要带一个参数cascade
刚创建的用户没有任何权限,需要为其赋相应的权限
权限 : 系统权限: 指用户对数据库的相关权限
对象权限: 用户对其他用户的数据对象操作的权限(select,insert,update,delete,all,...)
角色:(包括众多权限)包括(预定义角色,自定义角色)
connect 连接数据库...
dba 管理员权限...
resource 建表、建视图...
......
----------------------------------------------------------------------------
创建用户weihu
create user weihu identified by weihu
对huiwu授权
grant connect to weihu weihu 可以登录数据库
grant resource to weihu weihu 可以建表
问题:weihu查看scott的emp表?
scott: sql > grant select on emp to weihu
scott希望收回weihu对emp表的查询权限
sql > revoke select on emp from weihu
|如果是对象权限,希望将权限传递下去,就加 with grant option
| scott: sql>grant select on emp to weihu with grant option
权限---- | weihu : sql>grant select on scott.emp to xiaohong
|
|如果是系统权限:
系统权限的传递:就加 with admin option
system给xiaoming权限时:
system : sql > grant connect to xiaoming with admin option
问题?如果scott把weihu对emp表的查询权限收回,那么xiaoming会怎样???
也会被收回
四、使用profile管理用户命令
(1)账号锁定
指定scott这个用户最多只能尝试3次登陆,锁定时间2天
1.创建profile sql > create profile lock_account limit failed_login_attemps 3 password_lock_time 2
2.分配profile sql > alter user <username> profile lock_account
(2)给账号解锁
sql > alter user <username> account unlock;
(3)终止口令
为了让用户定期修改密码可以用终止命令来完成,同样需要dba身份来操作
要求用户每隔10天修改登陆密码,宽限2天
1.创建profile sql > create profile myprofile limit password_life_time 10 password_grace_time 2
2.分配profile sql > alter user <username> profile myprofile
(4)口令历史
希望用户再修改密码时,不能使用以前的密码
1.创建profile sql > create profile passwd_history limit password_life_time 10 password_grace_time 2 password_reuse_time 10
password_reuse_time //指定口令可重用时间,即10天后可以重用
2.分配profile sql > alter user <username> profile passwd_history
删除profile
sql > drop profile <profilename> [asecade]