数据库管理员:
安装升级Oracle数据库
建库,表空间,表,视图,索引。。。
制定并实施备份和修复计划
数据库权限管理,调优,故障排除
对于高级DBA,要求参与项目开发,会编写SQL语句,存储过程,触发器,规则,约束,包
CREATE TABLE EMP
(
EMPNO NUMBER(4) PRIMARY KEY,
ENAME VARCHAR2(10),
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(4)
);
CREATE TABLE DEPT(
DEPTNO NUMBER(4),
DNAME VARCHAR2(14),
LOC VARCHAR2(13)
);
CREATE TABLE SALGRADE
(
GRADE NUMBER,
LOSAL NUMBER,
HISAL NUMBER
);
CREATE TABLE BONUS
(
ENAME VARCHAR(10),
JOB VARCHAR2(9),
SAL NUMBER,
COMM NUMBER
);
INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK');
INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');
INSERT INTO DEPT VALUES (30,'SALES','CHICAGO');
INSERT INTO DEPT VALUES (40,'OPERATIONS','BOSTON');
INSERT INTO EMP VALUES
(7369,'SMITH','CLERK',7902,TO_DATE('17-12-1980','dd-mm-yyyy'),800,null,20);
INSERT INTO EMP VALUES
(7499,'ALLEN','SALESMAN',7698,TO_DATE('20-2-1981','dd-mm-yyyy'),1600,300,30);
INSERT INTO EMP VALUES
(7521,'WARD','SALESMAN',7698,TO_DATE('22-2-1981','dd-mm-yyyy'),1250,500,30);
INSERT INTO EMP VALUES
(7566,'JONES','MANAGER',7839,TO_DATE('2-4-1981','dd-mm-yyyy'),2975,NULL,20);
INSERT INTO EMP VALUES
(7654,'MARTIN','SALESMAN',7698,TO_DATE('28-9-1981','dd-mm-yyyy'),1250,1400,30);
INSERT INTO EMP VALUES
(7698,'BLAKE','MANAGER',7839,TO_DATE('1-5-1981','dd-mm-yyyy'),2850,NULL,30);
INSERT INTO EMP VALUES
(7782,'CLARK','MANAGER',7839,TO_DATE('9-6-1981','dd-mm-yyyy'),2450,NULL,10);
INSERT INTO EMP VALUES
(7839,'KING','PRESIDENT',NULL,TO_DATE('17-11-1981','dd-mm-yyyy'),5000,NULL,10);
INSERT INTO EMP
VALUES(7788,'SCOTT','ANALYST',7566,'19-4月-1987',3000.00,NULL,20);
INSERT INTO EMP VALUES
(7844,'TURNER','SALESMAN',7698,TO_DATE('8-9-1981','dd-mm-yyyy'),1500,0,30);
INSERT INTO EMP VALUES
(7900,'JAMES','CLERK',7698,TO_DATE('3-12-1981','dd-mm-yyyy'),950,NULL,30);
INSERT INTO EMP VALUES
(7902,'FORD','ANALYST',7566,TO_DATE('3-12-1981','dd-mm-yyyy'),3000,NULL,20);
INSERT INTO EMP VALUES
(7934,'MILLER','CLERK',7782,TO_DATE('23-1-1982','dd-mm-yyyy'),1300,NULL,10);
INSERT INTO SALGRADE VALUES (1,700,1200);
INSERT INTO SALGRADE VALUES (2,1201,1400);
INSERT INTO SALGRADE VALUES (3,1401,2000);
INSERT INTO SALGRADE VALUES (4,2001,3000);
INSERT INTO SALGRADE VALUES (5,3001,9999);
SELECT * FROM DEPT;
SELECT * FROM EMP;
SELECT * FROM SALGRADE;
CREATE USER DB_USER IDENTIFIED BY DB_USER_PW; ――创建数据库/用户,要在system下进行操作
DROP USER DB_USER (CASCADE);
passw; ――修改用户密码
passw DB_USER; ――管理员修改用户密码
ALTER USER DB_USER IDENTIFIED BY DB_USER_PW; ――管理员修改用户密码
shutdown;
startup;
SHOW parameter;
赋予权限:前两个要在system下进行操作
方法1:GRANT DBA TO DB_USER; ――赋予用户数据库管理权限
方法2:GRANT CONNECT TO DB_USER; ――赋予用户连接权限
GRANT RESOURCE TO DB_USER; ――赋予用户资源权限
方法3:CONNECT DB_USER/DB_USER_PW as sysdba或者as sysoper; ――连接数据库并赋予权限
GRANT CREATE SESSION TO DB_USER; ――赋予用户创建会话的权限,对Oracle数据库暂时不知道怎么用
CREATE USER role NOT IDENTIFIED; ――创建角色时不需要输入密码即可登录
显示数据库中所有的用户:
SELECT USER NAME FROM dba_USER s;
显示数据库中用户的系统权限:
SELECT * FROM dba_sys_privs WHERE GRANTee='角色名;
SELECT * FROM role_sys_privs WHERE role='角色名;
显示数据库中用户的对象权限:
SELECT * FROM dba_tab_privs WHERE GRANTee='角色名';
显示数据库中用户的角色:
SELECT * FROM dba_role_privs WHERE GRANTee='用户名';
显示数据库中用户的权限
SELECT * FROM dba_sys_privs
Oracle究竟有多少中