东南大学实用数据库复习

上传人:痛*** 文档编号:77715823 上传时间:2022-04-20 格式:DOC 页数:15 大小:169.50KB
收藏 版权申诉 举报 下载
东南大学实用数据库复习_第1页
第1页 / 共15页
东南大学实用数据库复习_第2页
第2页 / 共15页
东南大学实用数据库复习_第3页
第3页 / 共15页
资源描述:

《东南大学实用数据库复习》由会员分享,可在线阅读,更多相关《东南大学实用数据库复习(15页珍藏版)》请在装配图网上搜索。

1、实用数据库系统实践30 个选择题:Linux相关1.Linux目录/ 根目录/home主目录/root管理员的主目录/tmp临时文件/etc存放 Linux 服务器软件的配置信息/var服务器运行产生日志/sbin管理员执行的命令/bin普通用户执行的命令/dev设备文件2. 一些基本操作命令head -n 文件 查看文件的前n 行内容tail -n 文件 查看文件的前n 行内容cat 文件 查看文件所有内容,适合查看小文件more 文件 Enter一行 空格一屏q 退出less 文件 上下键一行空格一屏q 退出wc 文件 统计 行数 ,单词数 ,字符数touch 文件 建立空文件-p目录不存

2、在则创建mkdir 文件 建立空目录rmdir 文件 删除空目录cp opt 文件 文件 -r递归执行mv opt 文件 文件 rm opt 文件 文件 3.TAB键补全单击补全命令/文件/目录双击列出输入字符开头的所有命令/ 文件/ 目录4. 文件权限三级用户权限文件所有用户文件所有组其他用户权限标识可读取 r 4 22 可写入 w 2 21 可执行 x 1 20权限示例rwx rw- r-111 110 100764相关命令chown 参数 用户名 : 组名文件 /更改文件的拥有用户,组参数 -R递归执行chmod 参数 whooptmode 文件 参数 -R 递归执行who操作对象who

3、可是下述字母中的任一个或者它们的组合u user, owner:g group, groupo others, other usersa all, all users,默认值opt+ 增加权限- 删除权限= 覆盖权限mode-/r-/w-/xchmod umodgmodomod 文件/目录名 umod01234567000 001 010 011100101 110 111- -x -w- -wx r- r-x rx- rwx gmod01234567000 001 010 011100101 110 111- -x -w- -wx r- r-x rx- rwx omod01234567000

4、 001 010 011 100 101 110 111- -x -w- -wx r- r-x rx- rwx5. 查看 Linux 进程ps /列出某个进程-A /显示所有程序-e /此参数的效果和指定A 参数相同-f /显示 UID, PPIP, C, STIME栏位grep pname /查找| /管道命令 ,同时执行ps -ef|grep python /列出 python进程信息kill 参数 pid /结束进程-2发送 Ctrl+c请求-9强制终止-15发送请求Oracle数据库相关6.Oracle服务器体系结构使用 SQL兼容 C/S 架构 ,B/S 架构Oracle Serve

5、r = Instance + DatabaseInstance = Process + memoryDatabase =多种 )7. 启动服务器单命令SQL startup分步骤1.startup nomount;/ORACLE instance started.2.alter database mount; /Database mounted.3.alter database open;/Database opened.读初始化参数文件,启动实例,但不加载数据库加载数据库控制文件根据控制文件找到并打开数据文件和日志文件,打开数据库8. 关闭服务器shutdown normal; shutdo

6、wn transactional; shutdown immediate; shutdown abort;等待所有会话断开连接等待所有会话完成事务不等待所有会话完成事务立即关闭实例9. 更改参数文件 , scopedb_name8字符字母 $#_不可修改processes最小值 6 最大依赖OS不可修改JAVA_POOL_SIZE可修改show parameter java_pool_size;alter system set java_pool_size=20M scope=both;alter system set java_pool_size=32M scope=memory;alter

7、 system set java_pool_size=24M scope=spfile;立即生效并保存(默认值立即生效不保存保存且下次生效)10. 服务器网络设置主机名 server1.example.coom服务名 orcl.example.coom监听器 LISTENER 打开使用 Oracle账户操作lsnrctl status/start/stop;进程 ps ef | grep tnslsnr文件 /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora默认名LISTENER端口1521协议TCP(第五天:)

8、11. 启动监听器、服务器、企业管理器1. 监听器 lsnrctl status2. 服务器 sqlplus / as sysdba SQL startup3.Oracle Enterprise Manageremctl status dbconsoleemctl start dbconsole进入 https:/主机名 :1158/em12. 创建账户create user用户名 identified by 密码 ;13. 权限grant create session to jack;grant create table to jack;revoke create table from ja

9、ck;系统权限的撤销不级联grant create session to jackwith admin option;grant create table to jackwith admin option;对象权限的撤销级联grant select on hr.employees to jackwith grant option;14. 数据库并发性DML增删改合DDL create drop等行锁 TX表锁 TM2 row share表级行共享锁. SELECT FROM FOR UPDATE时申请, 允许申请23453 row exclusive表级行排他锁.非全表DML时申请, 允许申请

10、(删改时非本行)234 share全表共享锁 . SELECT * FROM FOR UPDATE时申请, 允许申请24,不允许DML5 share row exclusive全表行排他锁. 4下申请3 升级而来, 允许申请(删改时非本行)2,不允许DML6 exclusive全表排它锁 . DDL 时申请 , 不与任何锁共存,不允许其他会话读取修改手工加锁语句SQL LOCK TABLE表名 IN 锁级别 MODE;锁释放事务 commit/事务 rollback/事务结束解决锁冲突 (dba账户 )SQL select sid from v$lock where block0;SQL se

11、lect serial# from v$session where sid=SQL alter system kill session 会话 ID,序列号发现锁定其他会话的SID会话 ID;查找序列号 immediate;结束会话19.UNDO还原查看参数show parameter undo_tablespace创建 UNDO数据文件create undotablespace undotbs2datafile /u01/app/oracle/oradata/orcl/undotbs2.dbfsize 50Mautoextend on next 10M maxsize 30G;设置 UNDO空

12、间SQL alter system set undo_tablespace=undotbs2;设置保留时间SQL alter system set undo_retention=86400(修改 UNDO数据文件的大小SQL alter databasedatafile /u01/app/oracle/oradata/orcl/undotbs2.dbfresize 200M;自动管理SQL alter system set undo_management=AUTO;保留确保机制秒 );SQL alter tablespace undotbs2 retention guarantee/nogua

13、rantee;20. 备份和恢复可以备份数据 控制 参数不可备份日志文件设置归档路径mkdir -p /u01/arch01SQL alter system set log_archive_dest_1=location=/u01/arch01;开启归档SQL shutdown immediate;SQL startup mount;SQL alter database archivelog;SQL alter database open;备份工具Recovery ManagerRMAN backup datafile /u01/app/oracle/oradata/orcl/users01.

14、dbf;RMAN backup current controlfile;控制文件RMAN backup spfile;参数文件RMAN backup datafile 4, 5;RMAN backup tablespace users, example;表空间 users, exampleRMAN backup database;数据库RMAN backup archivelog all;归档文件数据文件(第九天:)21. 闪回技术1. 闪回删除表对应drop table语句例外:系统表空间中system的表 不受回收站保护前提 : recyclebin = ONSQL alter syste

15、m set recyclebin = ON;查看回收站SQL show recyclebin;(可以查看到表的原始名称和回收站中名称)SQL select count(*) from BIN$SdtN9PxJvp/gUAB/AQBSBA=$0;步骤 :执行闪回SQL flashback table(可选 )原表名 / 回收站表名rename to新表名 to before drop;删除表时同时清除回收站SQL drop table test02 purge;清除回收站中的表SQL purge table other_test02;2. 闪回查询 对应 DML 语句误操作尚未提交 rollba

16、ck已经提交闪回查询前提 : undo_management = autoSQL show parameter undo;SQL alert system set undo_management = auto;SQL alert system set undo_retention = 900;步骤 :1. 获取误操作前的时间戳 (可以省略此步 ) SQL selectto_char(sysdate, yyyy-mm-dd hh24:mi:ss) time,from dual;结果 :TIME-2010-06-29 23:03:142. 闪回表SQL alter table employees

17、enable row movement;/开启闪回表的行迁移SQL flashback table employees to timestampto_timestamp(2010-06-29 23:03:14, yyyy-mm-dd hh24:mi:ss);3. 闪回数据库 对应 truncate table语句(清空表中的内容)前提 :数据库归档模式(必须在服务器mount 阶段修改 )01.关闭服务器 (如果开启 ) SQL shutdown immediate;02.启动到 mount阶段SQL startup mount;03.开启数据库闪回功能SQL alter database f

18、lashback on;04.打开数据库SQL alter database open;05.设置备份时间SQL alter system setdb_flashback_retention_target=2880;06.查看确认SQL select flashback_on from v$database;步骤 : ( 必须在服务器mount阶段闪回 )01.关闭服务器 (如果开启 ) SQL shutdown immediate;02. 启动到 mount阶段SQL startup mount;03. 闪回数据库SQL flashback database to timestampto_t

19、imestamp(2017-03-17 20:43:16,YYYY-MM-DD HH24:MI:SS);04. 打开数据库并清空日志SQL alter database open resetlogs;附加步骤 :重备份1. RMAN delete backup;2. RMAN delete copy;3. RMAN backup database; MySQL 数据库(第十天:)22.MySQL体系结构连接层通信协议TCPIP(Windows/Linux)Socket(Linux)share memory(Windows)name pipe(windows)线程 每一个客户分配连接线程验证 用

20、户名口令 主机SQL 层解析器select * from emp where id=1;授权检查权限优化器生成计划查询执行查询查询高速缓存保存查询结果查询日志记录存储层存放在内存MEMORY存放在磁盘引擎 InnoDB/Myisam存放在网络NDB23.MySQL命令客户机命令程序(需要数据库用户名密码认证)mysql /usr/bin/mysqlmysql show databases;查看有多少数据库mysql use mysql使用某个数据库mysql show tables;表mysql show engines;存储引擎mysql show variables;查看服务器变量mysq

21、l show status;查看服务器状态SQL语句mysql create table students(stu_id int,stu_name char(10);mysql insert into students values(1,jack);mysql show variables like autocommit;mysqladmin /usr/bin/mysqladminmysqladmin OPTIONS command command-option command command-option create db_namedrop db_namepassword new_pass

22、wordpingprocesslistmysqlcheck:检查数据库表的完整性。mysqldump: 创建逻辑备份。mysqlimport:导入文本数据文件。mysqlshow:显示数据库、表和列信息。mysqlslap:模仿客户机负载。管理和使用程序(无需数据库用户名密码认证)innochecksum:脱机检查InnoDB表空间文件。mysqlaccess:检查访问特权。mysqldumpslow:汇总慢速查询日志文件。mysqlbinlog:显示二进制日志文件。(第十一天:)24. 系统的安装 脚本1. 建立数据库scripts/mysql_install_db-user=mysql-b

23、asedir=/usr/local/mysql-datadir=/usr/local/mysql/data2. 安全加固mysql/usr/bin/mysql_secure_installation(第十三天:)25. 二进制日志1. 错误日志开启./usr/local/mysql/bin/mysqld_safe-user=mysql-log_error=/usr/local/mysql/data/mysqld.err重启服务器service mysql restart2. 常规查询开启./usr/local/mysql/bin/mysqld-user=mysql-general_log=1-

24、general_log_查看cat /usr/local/mysql/data/ mysqld.log3. 慢速查询开启./usr/local/mysql/bin/mysqld-user=mysql-slow_query_log=1-slow_query_log_-long_query_time=3查看 mysql show variables like slow_query_log%;测试select sleep(4);cat /usr/local/mysql/data/mysqld_slow.log4. 二进制日志开启./usr/local/mysql/bin/mysqld-user=my

25、sql-binlog_format=ROW/STATEMENT查看mysqlbinlog /usr/local/mysql/data/1.0000035. 企业审计mysql show variables like plugin_dir;20 个填空题:(第二天:)1. 监听器使用 Oracle账户操作进程 tnslsnr文件 /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora默认监听器名字LISTENERlsnrctl status/start/stop;2. 客户端登录sqlplus账户名 / 密码3.Ora

26、cle数据库文件1. 数据文件select name from v$datafile;2. 日志文件select member from v$logfile;3. 控制文件select name from v$controlfile;4. 参数文件/u01/app/oracle/product/11.2.0/dbhome_1/dbs/sp5. 口令文件/u01/app/oracle/product/11.2.0/dbhome_1/dbs/orapworcl6. 跟踪文件目录/u01/app/oracle/diag/rdbms/orcl/orcl/trace/7. 预警文件/u01/app/or

27、acle/diag/rdbms/orcl/orcl/trace/alert_orcl.log(第三天:)4. 配置监听器cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora5. 连接方式sqlplussqlplus账户名 / 密码 主机名或地址:端口 / 服务名6. 数据库中逻辑对象 , 物理对象查看 oracle 数据文件select name from v$datafile; select name from v$tempfile;查看 oracle表空间select tablespace_name f

28、rom dba_data_files;查看以上的关系select tablespace_name, from dba_data_files;7. 表空间创建表空间create tablespace tbs2datafile /u01/app/oracle/oradata/orcl/tbs2_1.dbfsize 20Mautoextend onnext 10M maxsize 20G ,.;删除表空间drop tablespace tbs2;drop tablespace tbs1 including contents;drop tablespace tbs2 including content

29、s and datafiles;(第六天:)8. 数据库并发性DML增删改合DDL create drop等行锁 TX表锁 TM2 row share表级行共享锁. SELECT FROM FOR UPDATE时申请, 允许申请23453 row exclusive表级行排他锁.非全表DML时申请, 允许申请(删改时非本行)234 share全表共享锁 . SELECT * FROM FOR UPDATE时申请, 允许申请24,不允许DML5 share row exclusive全表行排他锁. 4 下申请 3 升级而来 , 允许申请 (删改时非本行)2, 不允许 DML6 exclusive

30、全表排它锁. DDL时申请, 不与任何锁共存,不允许其他会话读取修改手工加锁语句SQL LOCK TABLE锁释放事务 commit/表名事务IN 锁级别rollback/MODE;事务结束解决锁冲突 (dba账户 )SQL select sid from v$lock where block0;SQL select serial# from v$session where sid=SQL alter system kill session 会话 ID,序列号发现锁定其他会话的SID会话 ID;查找序列号 immediate;结束会话9. 创建 UNDO 表空间 create undotabl

31、espace undotbs2datafile /u01/app/oracle/oradata/orcl/undotbs2.dbfsize 50Mautoextend onnext 10Mmaxsize 30G;(第八、九天:)10.闪回技术1.闪回删除表对应 drop table语句例外:系统表空间中 system的表 不受回收站保护前提 : recyclebin = ONSQL alter system set recyclebin = ON;查看回收站SQL show recyclebin;(可以查看到表的原始名称和回收站中名称)SQL select count(*) from BIN$

32、SdtN9PxJvp/gUAB/AQBSBA=$0;步骤 :执行闪回SQL flashback table(可选 )原表名 / 回收站表名rename to新表名 to before drop;删除表时同时清除回收站SQL drop table test02 purge;清除回收站中的表SQL purge table other_test02;2. 闪回查询 对应 DML 语句误操作尚未提交 rollback已经提交闪回查询前提 : undo_management = autoSQL show parameter undo;SQL alert system set undo_managemen

33、t = auto;SQL alert system set undo_retention = 900;步骤 :1. 获取误操作前的时间戳 (可以省略此步 ) SQL selectto_char(sysdate, yyyy-mm-dd hh24:mi:ss) time,from dual;结果 :TIME-2010-06-29 23:03:142. 闪回表SQL alter table employees enable row movement;/开启闪回表的行迁移SQL flashback table employees to timestampto_timestamp(2010-06-29

34、23:03:14, yyyy-mm-dd hh24:mi:ss);3. 闪回数据库 对应 truncate table语句(清空表中的内容)前提 :数据库归档模式(必须在服务器mount 阶段修改 )01.关闭服务器 (如果开启 ) SQL shutdown immediate;02.启动到 mount阶段SQL startup mount;03.开启数据库闪回功能SQL alter database flashback on;04.打开数据库SQL alter database open;05.设置备份时间SQL alter system setdb_flashback_retention_

35、target=2880;06.查看确认SQL select flashback_on from v$database;步骤 : ( 必须在服务器mount阶段闪回 )01.关闭服务器 (如果开启 ) SQL shutdown immediate;02.启动到 mount阶段SQL startup mount;03.闪回数据库 SQL flashback database to timestampto_timestamp(2017-03-17 20:43:16,YYYY-MM-DD HH24:MI:SS);04. 打开数据库并清空日志SQL alter database open resetlo

36、gs;附加步骤 :重备份1. RMAN delete backup;2. RMAN delete copy;3. RMAN backup database;11. 临时文件损坏 / 口令文件损坏介质损坏 5 临时文件 (临时表空间)1. 给临时表空间添加一个临时文件SQL alter tablespace temp addtempfile /u01/app/oracle/oradata/orcl/temp02.dbfsize 20Mautoextend on;2. 清除损坏的临时文件SQL alter tablespace temp droptempfile /u01/app/oracle/o

37、radata/orcl/temp01.dbf;介质损坏6口令文件丢失重建口令文件(用 oracle帐号运行 )sqlplus / as sysdbaSQL orapwd t/11.2.0/dbhome_1/dbs/orapworclpassword=oracle_4U;MySQL(第十天:)12. 给 MySQL 管理员重新设置口令rootdbs321a # mysql -uroot -pMD2MNg1g登录mysqlset password=password(oracle);设置管理员口令为oraclemysqlq退出mysql clientrootdbs321a # mysql -uroo

38、t -poracle用新口令登录(第十二天:)13. 数据库的存储引擎测试1. 修改配置文件vi /etc/f在 mysqld后加入default_storage_engine=InnoDB2.启动附加参数 / 修改变量mysqld -set global default_storage_engine=myisam;全局-set session default_storage_engine=memory;会话 (默认 )3.建表create table table_name (stu_id int,stu_name char(10) engine=myisam;2 简答题:(第七天:)1. 复

39、用技术1. 日志文件复用1.SQL select group#,member from v$logfile;2.SQL alter database add logfilemember /u01/app/oracle/oradata/orcl/redo01_2.log to group 1; 3.SQL alter system switch logfile;2. 控制文件复用1.SQL alter system setcontrol_files=/u01/app/oracle/oradata/orcl/control01.ctl,/u01/app/oracle/flash_recovery_

40、area/orcl/control02.ctl,/u01/app/oracle/oradata/orcl/control03.ctlscope=spfile;2.SQL shutdown immediateexit;3.cp /u01/app/oracle/oradata/orcl/control01.ctl/u01/app/oracle/oradata/orcl/control03.ctl4.sqlplus / as sysdbaSQL startup(第八天:)2. 介质损坏恢复1. 非关键性数据文件损坏1. 将损坏的文件离线 RMAN sql alter database data offline;2. 使用备份还原文件RMAN restore data;3. 恢复文件RMAN recover data;4. 将文件上线RMAN sql alter database data online;5. 启动数据库sqlplus / as sysdbaSQL startup2. 关键性数据文件损坏1.RMAN restore database;2.RMAN recover database;3.sqlplus / as sysdbaSQL startup

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!