oracle动态磁盘管理
一、ASM发展:
oracle 想做硬件:
收购sum公司的小型机业务
推出一体机Exadata
1、sum服务器
2、磁盘柜(没做存储)
推出asm建库方式配合一体机(自动使用磁盘柜的盘)(抛弃raid方式)
把每块盘加入磁盘组(dg),加入dg后自动做条带化
二、ASM优点:
i/o 性能优化:
做条带(加冗余)
磁盘组的三种冗余方式:
external (外部冗余)(非一体机环境使用)
由底层raid做冗余
normal(每个数据存2份)(专门为一体机设计)
先写主数据,然后找空的位置(未写相同的主数据的)写副本数据
相同的主数据和副本数据不会再同一个盘上面
hight(最少每个数据存3份)(专门为一体机设计)
利用率少(很少使用)
数据文件移动和重组织:
自动合理分配每个盘的数据(动态平衡)
文件名管理:
自动文件名管理
集群文件系统:
在多台计算机之上,之间通过某种方式相互通信从而将集群内所有存储空间资源整合、虚拟化并对外提供文件访问服务的文件系统
裸设备管理:
自动使用裸设备
三、使用ASM管理需要+ASM实例:
+ASM实例:
进程和内存组合
只能启动到nomount状态
管理asm使用的磁盘和磁盘组
打开数据库时需要先开+ASM 在开asm数据库(关闭反过来)
+ASM实例的进程:
RBAL进程 加盘减盘时才工作
10g 我们使用dbca来创建asm实例,11g我们使用grid软件来创建asm实例
四、ASM权限管理:
10g asm 最高权限 sysdba
11g asm 最高权限 sysasm
五、ASM的磁盘组:
数据库
可包含多个磁盘组
磁盘组能被多个数据库使用
磁盘组
有多个磁盘
一个磁盘不能属于多个磁盘组
分配最小单元(AU) (类似lvm 中的pp)
粗粒度划分:
默认1M
允许一次分配的大小:2的n次方(最大64M)
细粒度划分:
可以分配比1M更小的空间
六、磁盘组管理:
查看磁盘:
select name,path from v$asm_dsik;
删盘时用到:name
加盘时用到:path
创建组:
create diskgroup DATA2 external redundancy disk 'ORCL:ASMDISK04','ORCL:ASMDISK05' ATTRIBUTE 'compatible.asm' = '11.2';
#名字data2 ,2块盘路径: 'ORCL:ASMDISK04','ORCL:ASMDISK05'
加盘:
alter diskgroup data add disk 'ORCL:ASMDISK06';
#最好里面每个盘大小一样
#最好一块一块的加(一次性加多个盘动态平衡数据很慢)
删盘
alter diskgroup data drop disk ASMDISK03;
#只剩下一块盘只能删组
删组:
drop diskgroup data2 including contents;
#正在使用的无法删除
查询磁盘组的故障组分配:
SELECT G.NAME,D.disk_number,D.STATE,D.redundancy,D.NAME,D.PATH,D.FAILGROUP,D.FAILGROUP_TYPE FROM V$asm_diskgroup g,v$asm_disk d where g.group_number=d.group_number;
查看磁盘组,(空间情况)
select name name2,state,type,free_mb,total_mb,usable_file_mb from v$asm_diskgroup;
查看磁盘情况
select GROUP_NUMBER,free_mb,total_mb,disk_number,MOUNT_STATUS,mode_status,STATE,
HEADER_STATUS,name name2,PATH from v$asm_disk order by 4,5;
查看asm动态平衡:
SQL> select * from v$asm_operation;
#删盘时一定要注意等待动态平衡完成才能对磁盘进行(抹除磁盘头,格式化等操作)否则会造成数据丢失。
只要动态平衡没完成误删除时可以回退:
SQL> alter diskgroup asmdisk2 drop disk asmdisk2;
SQL> alter diskgroup asmdisk2 undrop disks;
最新文章
- 【IOS开发笔记03-视图相关】简单计算器的实现
- WindowsForm多窗体、多窗体传值、控件数据绑定--2016年12月8日
- Yahoo!网站性能最佳体验的34条黄金守则(转载)
- Linux与Windows API对比
- C# 自定义重绘TextBox
- 使用Struts1完成用户登录功能
- hdu 3642 Get The Treasury (三维的扫描线)
- FTS下载地址
- Win2003 Server磁盘配额揭密之补遗篇
- 【转】sed单行命令大全
- 如何写对kubernetes的模板文件
- HttpWebRequest类库注意事项以及常见问题
- Linux永久修改IP地址
- ros navigation stack 各个包的作用
- 20172302 《Java软件结构与数据结构》第五周学习总结
- Rplidar学习(四)—— ROS下进行rplidar雷达数据采集源码分析
- [Converge] Batch Normalisation
- java8 数据结构的改变(一)
- Java - 线程让步和休眠
- Python学习-36.Python中的字典解释
热门文章
- struts2学习之基础笔记3
- ES6常用特性
- 在centos上安装php5.5+MySQL 5.5.32
- WCF(三)IIS寄宿
- 执行python manage.py makemigrations时报错TypeError: __init__() missing 1 required positional argument: 'on_delete'
- Java之秒杀活动解决方案
- linux防火墙查看状态firewall、iptable
- 流媒体应用程序Mobdro或存在安全隐患
- 2019-03-25 Python Pandas 基本操作
- 论wpf的设备无关性 - 简书