Oracle数据库基础(一)
当今主流数据库有瑞典MySQL公司的MySQL数据库,微软的SqlServer数据库,IBM公司的DB2,Oracle公司的Oracle数据库以及美国Sybase的Sybaseshujuku 。数据库按规模可分为大中小三类,其中小型数据库以mysql为代表,中型以sqlserver为代表,大型数据库以oracle为代表。
Oracle为典型的商业级关系型数据库,在数据库中保存的对象间存在一定关系。
在学习数据库前需要分清三个常见名词:
- sql:用来操作数据库的语言;
- sqlplus:自带软件,用于去输入sql语句。
- pl/sql:程序化sql语句。在sql语句中增加一些逻辑性。
初学Oracle,需要明白操作的最基础对象:
table:表,有行列组成,行:一条完整的数据 列:字段
view:视图
sequence:序列
sqlplus的操作及常见命令:
1、连接命令:
sys 初始密码 超级管理员
system 初始密码 dba
scott tiger
conn scott/tiger
conn 用户名/密码 [as sysdba]
show user :查看当前连接数据库用户
exit 退出连接并关闭sqlplus窗口
disc 退出连接
host cls /clear screen清屏
@table.sql :执行sql脚本
edit table.sql :编辑脚本文件
linesize:默认是80,通过 set linesize 数字 设置每行显示的字符个数
pagesize:设置每一页显示的行数目。默认应该是14,
用户管理:
创建用户:creat user userName identified by passWord;
修改密码:passw [userName]
删除用户 drop user userName[cascade]
赋权限 grant
撤销权限 revoke
权限:
系统权限:对数据库的操作
对象权限:用户对其他用户对象操作的权限
grant connect to uesrName 赋连接权限
grant resource to uesrName 为用户开辟表空间
grant select on tableName to userName;
grant all on tableName to userName;
角色:
预定义角色:dba connect
自定义角色:
desc 表名 查看表结构
让对象权限进行传递:grant select on tableName to userName with grant option;
让系统权限进行传递:grant connect to userName with admin option
profile 用户口令(口令集合)
oracle会自动为用户去创建一个名为default的profile,
账户的锁定:
给用户去设置只要输入错3次密码就锁定,锁定时间为2天。
create profile lock_account limit failed_login_attempts 3 password_lock_time 2
alter user userName profile lock_account;
给用户解锁:
alter user userName account unlock;
给用户去设置10天就要修改一次密码,宽限期为2天。
create profile lock_account password_life_time 10 password_grace_time 2;
alter user userName profile lock_account;