python 建设网站,售后服务网站建设,网站规划的原则有哪些,网站开发系统流程图本讲主要内容#xff1a;
1.表空间管理#xff1a;表空间的作用#xff0c;创建#xff0c;修改#xff0c;删除及管理#xff1b;
2.用户管理#xff1a;创建用户#xff0c;修改用户#xff0c;删除用户#xff0c;修改密码#xff0c;解锁#xff1b;
3.用户…本讲主要内容
1.表空间管理表空间的作用创建修改删除及管理
2.用户管理创建用户修改用户删除用户修改密码解锁
3.用户权限管理授权撤销授权
4.数据库的备份与恢复
5.数据库导入导出
表空间
•数据库由若干表空间组成•表空间的集合包含表段存放表数据索引段存放索引数据临时段排序回滚段事务读一致性、回滚•查看有哪些表空间Select * from v$tablespace•查看有哪些数据文件Select * from v$datafile表空间管理
•表空间和数据文件的作用使用户数据和数据字典(系统表数据)数据相分离。减少字典对象和模式对象在同一个数据文件中的竞争使不同应用程序的数据相分离。使用户对数据文件的管理更清晰各个程序的表空间的操作互不影响即使单个表空间处于脱机也不影响其他的表空间正常运行将回滚段从用户数据中分离出来防止了单个磁盘的故障造成的数据的不可恢复•表空间可以分为两大类
系统表空间•在创建数据库时一同创建的用于存放数据字典对象并包含了系统回滚段。•可以存储用户数据但oracle建议一般不用于存放用户数据非系统表空间•永久表空间–用于存储用户永久数据•临时表空间 (temporary tablespace)–用于存储临时数据如用户数据进行排序时产生的数据使用临时表空间在很大程度上提高了用户进行大量数据的排序性能•还原表空间(undo tablepspace)–提供对回滚段的自动管理•管理表空间主要包括以下操作
创建表空间•Create (temporary|undo) tablespace更改表空间的存储参数更改表Alter tablespace/manage tablespace空间的状态删除表空间•drop tablepace/manage tablespace查看表空间的信息•对表空间中的区的分配和使用有两种管理方式数据字典管理•使用数据字典来跟踪表空间的使用情况本地管理9i后默认的方式也是推荐的方式•使用位图跟踪表空间的使用情况位图存储于头文件中•创建表空间
Extend management子句区的管理方式•本地管理(local)还是字典管理(dictionary)•如果是local需要指定是自动管理(autoallocate)表空间大小还是一个指定大小(uniform size)的区来管理Segment space management子句:段空间的管理方式•自动管理(auto)或使用空闲列表进行管理(manual)•用户还需要指定是否启动重做日志文件纪录表空间的数据更改情况Logging / nologgingdatafile子句:•至少指定一个属于该表空间的数据文件•创建表空间 CREATE TABLESPACE APP LOGGING DATAFILE C:\ORACLE\ORADATA\EXAMPLE\APP1.DBF SIZE 5M REUSE AUTOEXTEND ON NEXT 512K MAXSIZE 10M
•创建本地管理的临时表空间 CREATE temporary TABLESPACE APPTEMP TEMPFILE C:\ORACLE\ORADATA\EXAMPLE\APPTEMP.DBF SIZE 5M
EXTENT MANAGEMENT LOCAL
Uniform size 1 M•创建本地管理的还原表空间 CREATE undo TABLESPACE “roolback1 DATAFILE C:\ORACLE\ORADATA\EXAMPLE\roolback1.DBF SIZE 5M 表空间的状态
•联机用户可以正常访问此表空间的数据又可以将联机状态的表空间设置为只读或可读写•脱机此状态的表空间或数据暂时不可用用户不能访问用于部分的停止数据库、修复数据库文件、改物理文件名、移动物理文件表空间脱机ALTER TABLESPACE APP OFFLINE Normal
恢复表空间为联机状态ALTER TABLESPACE APP ONLINE
•更改表空间的状态
SYSTEM表空间和临时表空间不能被脱机包含活动的回滚段的表空间也不能被脱机Normal•清除此表空间的所有数据文件在SGA中分配的空间该方式为默认方式且再联机的时候不需要执行介质恢复Temporary•脱机前需要设置检查点则再联机的时候需要执行介质恢复Immediate•脱机前不需要设置检查点则再联机的时候需要执行介质恢复•如果数据库运行在noarchivelog模式下则不能立即脱机•For recover将数据库中进行point-in-time恢复的表空间设置为脱机•设置表空间为只读只读表空间不能写数据可删除数据
ALTER TABLESPACE APP READ ONLY可将只读表空间写到CD中然后修改表空间数据文件的位置•设置表空间为读/写
ALTER TABLESPACE APP READ WRITE•删除表空间
DROP TABLESPACE “APP” INCLUDING CONTENTS AND DATAFILES
带INCLUDING CONTENTS可删除表空间的对象不删文件
带AND DATAFILE删除数据文件•改变表空间数据文件大小
ALTER DATABASE DATAFILE ‘d:\oracle\oradata\study\myapp01.dbf’
Resize 50m --改变大小
ALTER TABLESPACE ‘MYAPP’ADD DATAFILE ‘d:\oracle\oradata\study\mypp02.dbf’ size 10m;•改变表空间数据文件
准备好数据文件表空间离线修改数据文件举例
表空间离线Alter tablespace ‘myapp’ offline
修改数据文件名称,在操作系统下改
修改表空间数据文件alter tablespace myapprename datafile ’d:\oracle\oradata\study\myapp01.dbf’to ’d:\oracle\oradata\study\myapp02.dbf’脚本创建表空间
CREATE TABLESPACE STORE LOGGING DATAFILE D:\ORACLE\ORADATA\STUDY\STORE.ora SIZE 5M EXTENT MANAGEMENT LOCAL创建用户
•Oracle是一个多用户的数据库系统每个试图使用Oracle的用户都必须得到一个合法的用户名和口令。••用户也叫方案是一组逻辑对象的所有者••创建用户时需要指定验证方法连接数据库的合法密码默认和临时表空间当用户创建对象时如果没有特殊指定另一个表空间将使用默认表空间。临时表空间用来创建临时段。•语法Create user 用户名 Identified by 密码 default tablespace 默认表空间名称 quota nk on 表空间名字 password expire Account {lock | unlock}参数说明•quota nk 限制用户在表空间上的使用限额单位为KB或MB如为unlimited说明使用表空间不受限制•password expire 说明用户的密码已经到期失效登陆的时候要强制用户修改密码•Account指锁定或解除用户帐号举例
•创建用户 CREATE USER ST IDENTIFIED BY 123 DEFAULT TABLESPACE STORE ACCOUNT UNLOCK;
GRANT CONNECT TO ST;
GRANT RESOURCE TO ST;修改用户的默认表空间
ALTER USER kong default tablespacestore
修改用户在表空间上的空间使用限额
ALTER USER kong quote 10m ON STORE
修改用户密码
Alter user test identified by test11;启动两个SQL PLUSA、B表示
Aconn sys/change_on_install as sysdba
Acreate user test identified by test123 default tablespace store;
Bconn test/test123 --出错没有create session的权限
Agrant create session to test; --授权成功
Bconn test/test123 --连接成功
Bcreate table ab(a number(5), b varchar2(20)); --权限不足
Agrant create table to test; --赋给操作权限
Bcreate table ab(a number(5), b varchar2(20)); --没有表空间store的权限
Agrant unlimited tablespace to test; --赋给用户表空间资源的操作权限
Bcreate table ab(a number(5), b varchar2(20)); --创建成功
Bselect * from scott.dept; --表或试图不存在因为没权限
Bgrant select any table to test; --赋给用户可以查询任何表空间的表的数据
Bselect * from scott.dept; --OK
Bcreate user test1 identified by test1 --权限不足
Agrant create user to test with admin option; --给test赋给创建用户的权限 并且test可以将创建用户的权限赋给其他用户
Agrant create session to test with admin option;
Bcreate user test1 identified by test1 --创建成功
Bconn test1/test1 --连接失败没有权限
Bgrant create session to test1 --test用户将create session权限赋给test1
Bconn test1/test1 --连接成功对象权限
数据控制语言为用户提供权限控制命令 用于权限控制的命令有GRANT 授予权限REVOKE 撤销已授予的权限SQL GRANT SELECT, UPDATE ON EMP TO user;SQL GRANT SELECT ON EMP TO user WITH GRANT OPTION;SQL GRANT UPDATE(SAL, HIREDATE) ON EMP TO user;SQL REVOKE SELECT, UPDATE ON EMP FROM user;查看用户的权限
•查看当前用户的角色SQLselect * from user_role_privs; 查看当前用户的系统权限和表级权限 SQLselect * from user_sys_privs; SQLselect * from user_tab_privs;select * from session_privs; //用户连上后
•查看角色权限select * from dba_sys_privs where grantee in (CONNECT,RESOURCE);
select * from role_sys_privs where role角色名;
常用字典信息
•表空间信息表
DBA_TABLESPACEV$TABLESPACE•数据文件信息表
DBA_DATA_FILESV$DATAFILE•临时文件信息
DBA_TEMP_FILESV$TEMPFILE•查看用户及其默认的表空间
Select username,default_tablespace from dba_users备份与恢复简介
•备份是数据库中数据的副本它可以保护数据在出现意外损失时最大限度的恢复Oracle数据库的备份包括以下两种类型 故障类型
导致数据库操作中止的故障包括四种类型 数据库备份
•在数据库中提供了两种备份数据的方法物理备份和逻辑备份•逻辑备份备份表、视图、触发器、模式对象。。。•物理备份冷备份•停止服务拷贝物理文件热备份•数据库正常运行情况下备份数据库需要运行在归档模式导出和导入实用程序
•导出和导入实用程序用于实施数据库的逻辑备份和恢复•导出实用程序将数据库中的对象定义和数据备份到一个操作系统二进制文件中•导入实用程序读取二进制导出文件并将对象和数据载入数据库中••导入命令IMP•导出命令EXP•在导出自身模式下的对象时不需要什么特殊权限•但希望对其他模式下的对象进行操作的时候就必须必须具备EXP_FULL_DATABASE、IMP_FULL_DATABASE的角色。•可以通过OEM中提供的工具进行导入/导出的操作•导出和导入实用程序的特点有可以按时间保存表结构和数据允许导出指定的表并重新导入到新的数据库中可以把数据库迁移到另外一台异构服务器上在两个不同版本的Oracle数据库之间传输数据在联机状态下进行备份和恢复可以重新组织表的存储结构减少链接及磁盘碎片使用以下三种方法调用导出和导入实用程序 导出和导入数据库对象的四种模式是 •导出实用程序有以下常用命令参数 参数 说明 USERID 确定执行导出实用程序的用户名和口令 BUFFER 确定导出数据时所使用的缓冲区大小其大小用字节表示 FILE 指定导出的二进制文件名称默认的扩展名是.dmp FULL 指定是否以全部数据库方式导出只有授权用户才可使用此参数 OWNER 要导出的数据库用户列表 HELP 指定是否显示帮助消息和参数说明 ROWS 确定是否要导出表中的数据 TABLES 按表方式导出时指定需导出的表和分区的名称 PARFILE 指定传递给导出实用程序的参数文件名 TABLESPACES 按表空间方式导出时指定要导出的表空间名 导入实用程序
•导入实用程序有如下常用命令参数 参数 说明 USERID 指定执行导入的用户名和密码 BUFFER 指定用来读取数据的缓冲区大小以字节为单位 COMMIT 指定是否在每个数组其大小由BUFFER参数设置插入后进行提交 FILE 指定要导入的二进制文件名 FROMUSER 指定要从导出转储文件中导入的用户模式 TOUSER 指定要将对象导入的用户名。FROMUSER与TOUSER可以不同 FULL 指定是否要导入整个导出转储文件 TABLES 指定要导入的表的列表 ROWS 指定是否要导入表中的行 PARFILE 指定传递给导入实用程序的参数文件名此文件可以包含这里列出的所有参数 IGNORE 导入时是否忽略遇到的错误默认为N TABLESPACES 按表空间方式导入列出要导入的表空间名 本人从事软件项目开发20多年2005年开始从事Java工程师系列课程的教学工作录制50多门精品视频课程包含java基础jspweb开发SSH,SSMSpringBootSpringCloud,人工智能在线支付等众多商业项目每门课程都包含有项目实战上课PPT及完整的源代码下载有兴趣的朋友可以看看我的在线课堂
讲师课堂链接https://edu.csdn.net/lecturer/893