1、数据库
我们通常说的数据库含物理数据、数据库管理系统。也即物理数据、内存、操作系统进程的组合体。
2、实例
用来访问和使用数据库的一块进程。我们操作oracle数据库必须要有一个实例(SID)。实例是一个数据访问入口,通过 实例我们可以访问表空间的数据。
- 一个数据库可以有多个实例
- 一个实例可以管理多个表空间
3、表空间
oracle数据库用来存放物理表,索引等数据库对象的空间,一个数据库实例可以有多个表空间。
一个表空间可以指定对应的数据文件。
创建语法:
Create TableSpace 表空间名称
DataFile 表空间数据文件路径
Size 表空间初始大小
Autoextend on --表示自动增长
例子:
create tablespace db_test
datafile 'D:\oracle\product\10.2.0\userdata\db_test.dbf'
size 50m
autoextend on;
删除表空间:
drop tablespace 表空间名称 including contents and datafiles cascade constraint;
--contents 表示表空间内容
--datafiles 表示数据文件
--cascade constraint 删除关联
4、表
用于存储数据,描述数据的结构。表存储在对应的表空间上。
语法:
Create table 表名(
字段1 字段类型 ,
........
)tablespace 表空间名
5、用户
Oracle数据库建好后,要想在数据库里建表,必须先为数据库建立用户,并为用户指定表空间。
创建用户语法:
CREATE USER 用户名
IDENTIFIED BY 密码
DEFAULT TABLESPACE 表空间(默认USERS)
给用户分配权限:
GRANT CONNECT TO 用户名; --连接权限
GRANT RESOURCE TO 用户名; --
GRANT dba TO 用户名;--dba为最高级权限,可以创建数据库,表等
撤销权限:
revoke 权限 from 用户;
删除用户
drop user 用户名称 cascade;
查询用户的权限
使用用户登录并执行:
selecte * from session_privs
修改密码的命令:
1、alter user 用户名 identified by 密码
2、grant connect to 用户名 identified by 密码
3、password 用户名
忘记了系统管理员密码咋办?
通常两种方式:
1、尝试进入sqlplus 并用修改密码命令修改
在cmd中输入sqlplus / as sysdba;
如果能进入,则此方法有效。
2、重新生成密码文件
在\oracle\product\11.2.0\dbhome_1\database 目录下有PWDsid.ora的文件字样,
这是存储用户账号和密码信息的文件,sid代表你的数据库实例名,此文件无法用文本编辑,删掉。
在DOS下面使用orapwd.exe,如果无法运行请查询oracle的环境变量是否正确。
orapwd file= PWDsid.ora password=123456这个命令是修改sys用户的密码。
你把生成的文件覆盖原来的密码文件。除sys和system其他用户的密码不会改变
oralce数据库中的角色
- connect 角色,主要用于临时用户,只有连接权限,即可以连接数据库查看数据,不能做其他的事情。
- resource 角色,resource橘色提供给用户创建自己的表,序列,存储过程,触发器等东西的权限。
- dba角色 数据库管理员,拥有所有的权限。