解剖SQLSERVER 第十篇 OrcaMDF Studio 发布+ 特性重温(译)
解剖SQLSERVER 第十篇 OrcaMDF Studio 发布+ 特性重温(译)
http://improve.dk/orcamdf-studio-release-feature-recap/
自从我上次作了一个OrcaMDF特性概述之后,两个半月过去了。
只是两个半月过去了自从我上次一个OrcaMDF特性概述。从那时起我一直在忙着参加SQLSERVER的最顶级的三个会议:SQLBits、SQLPASS、SQL Rally
大家对OrcaMDF的交流都很热烈,并且从他们身上获得了一些反馈,感谢您们所有人!
虽然一直比较忙,但是我尽量保证不丢下OrcaMDF 的开发工作
相比起国内,SQLSERVER的相关会议实在太少了
新特性
下面是一个简单的列表自上次发布的特性开始
支持多数据文件数据库
通过标准SQLSERVER DMVs 暴露元数据
优化性能:字节数组使用更轻型,同时共享单一实例表模式之间的所有行
另外,我还添加了对一些额外的数据类型的支持
money
smallmoney
uniqueidentifier
用户定义类型
这些新特性只是一些小事情,接下来有个更大的事情 OrcaMDF Studio
OrcaMDF Studio
从这些反馈中我获得一些信息:太厉害的项目了!我绝对想试用一下这个软件,但是我还没有时间去使用
老实说,试用OrcaMDF会比较麻烦,你必须下载源代码,并且编译他,还要用自己写的程序去调用OrcaMDF
我没有考虑到直接最终的用户,这不是我所关注的。然而,为了得到更多的对OrcaMDF的使用反馈我必须对OrcaMDF进行改进
因此,我决定创建OrcaMDF Studio-这是一个UI 构建在OrcaMDF之上 允许你查询用户表,DMVs,系统表而不需要直接看源代码了
下面你看到的是OrcaMDF为你显示的一个标准的AdventureWorks 2008数据库中的Product表内容:
系统表
OrcaMDF Studio展示了所有的系统表(当前支持的 和能够解析的),就像普通表一样
用户表,索引和架构
最后,OrcaMDF 也展示了所有的用户表,包括他们的架构,索引和索引架构
错误报告
无论是OrcaMDF还是OrcaMDF Studio,距离投入生产环境依然是比较遥远的,你可能会遇到不支持的场景或者一些常见的错误
如果你遇到了,OrcaMDF Studio会将他报告出来,并且保存堆栈信息在程序目录里面。下面是一个典型错误的例子
尝试打开一个不受支持的XML数据类型列的表
如果你查看在程序目录里面的ErrorLog.txt文件,你会看到下面的异常
25-11-2011 00:41:21
----------
System.ArgumentException: Unsupported type: xml(-1)
at OrcaMDF.Core.MetaData.DataColumn..ctor(String name, String type, Boolean nullable) in D:ProjectsOrcaMDFsrcOrcaMDF.CoreMetaDataDataColumn.cs:line 135
at OrcaMDF.Core.MetaData.DataColumn..ctor(String name, String type) in D:ProjectsOrcaMDFsrcOrcaMDF.CoreMetaDataDataColumn.cs:line 20
at OrcaMDF.Core.MetaData.DatabaseMetaData.GetEmptyDataRow(String tableName) in D:ProjectsOrcaMDFsrcOrcaMDF.CoreMetaDataDatabaseMetaData.cs:line 155
at OrcaMDF.Core.Engine.DataScanner.ScanTable(String tableName) in D:ProjectsOrcaMDFsrcOrcaMDF.CoreEngineDataScanner.cs:line 31
at OrcaMDF.OMS.Main.loadTable(String table) in D:ProjectsOrcaMDFsrcOrcaMDF.OMSMain.cs:line 158
弹出一个完全匿名的错误提示,如果你遇到错误,我会很感激你将ErrorLog.txt file文件发给我以便调试有潜在问题的程序
所有的问题,错误报告,软件要求都可以发电邮给我
数据库版本支持
OrcaMDF 一开始对 SQL Server 2008 R2进行开发和测试,一些操作也能够在SQLSERVER2005上使用
不过会有很多错误,因为SQLSERVER2005的系统表结构跟SQL Server 2008 R2系统表结构有些不一样
OrcaMDF 对于不同版本的SQLSERVER并没有区别对待,当你使用不同版本的时候,稍后我会添加一个抽象层支持其他版本的SQLSERVER
打开正在运行的数据库
OrcaMDF Studio必须获得数据库文件的读锁。SQLSERVER在数据文件上持有排他锁,这意味着你不能打开一个正在运行的数据库
你只有分离数据库,使数据库脱机,备份-还原-分离或者 使用一个还未附加的数据库。
对于后续版本,我会添加一个自动VSS快照功能
系统运行要求
OrcaMDF建立在.NET 4.0之上,因此,你需要安装.NET 4.0 OrcaMDF Studio才能运作,OrcaMDF Studio可以运行在32位和64位机器上
免责声明
再一次,OrcaMDF 和OrcaMDF Studio 是实验用途的软件。对于使用他的任何风险不做任何担保。
OrcaMDF不会写任何东西进去你的磁盘,因此也不会以任何方式修改你的数据库文件。然而,我强烈建议你不要将他使用在生产数据库上
OrcaMDF 不知道也不关心信息安全,OrcaMDF 没有权限系统,无论谁拥有架构和对象,OrcaMDF 都会对他进行解析
而这个解析是不需要用户名和密码。但是,OrcaMDF 不支持对数据库做了透明数据加密TDE的数据,所以对TDE库里的数据是不支持的
下载
你可以从Github 的项目页面下载OrcaMDF Studio的二进制发布代码。请不要从其他地方下载OrcaMDF ,因为这些地方上面的
OrcaMDF 源代码有可能已经被别人修改过了。你应该总是从Github 的项目页面上获取源代码
一旦你下载了OrcaMDF,你需要执行OrcaMDF.OMS.exe程序
注意:这是debug模式下的调试版本,PDB文件。调试版本略低于发布版本,不过他允许我获取完全的堆栈跟踪当异常发生的时候。
一旦OrcaMDF 稳定下来了,我会提供调试版本和发布版本
第十篇完
解剖SQLSERVER 第十篇 OrcaMDF Studio 发布+ 特性重温(译)的更多相关文章
- 解剖SQLSERVER 第七篇 OrcaMDF 特性概述(译)
解剖SQLSERVER 第七篇 OrcaMDF 特性概述(译) http://improve.dk/orcamdf-feature-recap/ 时间过得真快,这已经过了大概四个月了自从我最初介绍我 ...
- 解剖SQLSERVER 第八篇 OrcaMDF 现在支持多数据文件的数据库(译)
解剖SQLSERVER 第八篇 OrcaMDF 现在支持多数据文件的数据库(译) http://improve.dk/orcamdf-now-supports-databases-with-mult ...
- 解剖SQLSERVER 第四篇 OrcaMDF里对dates类型数据的解析(译)
解剖SQLSERVER 第四篇 OrcaMDF里对dates类型数据的解析(译) http://improve.dk/parsing-dates-in-orcamdf/ 在SQLSERVER里面有几 ...
- 解剖SQLSERVER 第五篇 OrcaMDF里读取Bits类型数据(译)
解剖SQLSERVER 第五篇 OrcaMDF里读取Bits类型数据(译) http://improve.dk/reading-bits-in-orcamdf/ Bits类型的存储跟SQLSERVE ...
- 解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译)
解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译) http://improve.dk/orcamdf-rawdatabase-a-swiss-a ...
- 解剖SQLSERVER 第十二篇 OrcaMDF 行压缩支持(译)
解剖SQLSERVER 第十二篇 OrcaMDF 行压缩支持(译) http://improve.dk/orcamdf-row-compression-support/ 在这两个月的断断续续的开发 ...
- 解剖SQLSERVER 第十四篇 Vardecimals 存储格式揭秘(译)
解剖SQLSERVER 第十四篇 Vardecimals 存储格式揭秘(译) http://improve.dk/how-are-vardecimals-stored/ 在这篇文章,我将深入研究 ...
- 解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译)
解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译) http://improve.dk/where-does-sql-server-store-the-sourc ...
- 解剖SQLSERVER 第十七篇 使用 OrcaMDF Corruptor 故意损坏数据库(译)
解剖SQLSERVER 第十七篇 使用 OrcaMDF Corruptor 故意损坏数据库(译) http://improve.dk/corrupting-databases-purpose-usin ...
随机推荐
- TDDL DataSource
TDDL DataSource 分为 AtomDataSource GroupDatasource 他们两者没有依赖关系, 都实现了 JDBC 规范, 可以作为独立的 datasource 单独使用 ...
- 【python】将一个正整数分解质因数
def reduceNum(n): '''题目:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5''' print '{} = '.format(n), : print 'Pleas ...
- HMC V7.9.0升级至SP2版本
补丁下载地址:http://www-933.ibm.com/support/fixcentral/ 选择补丁版本 MH01405是和ftp://ftp.software.ibm.com/softwar ...
- 运费模版源码(.net)
之前写了一篇关于nop商城系统中运费模版模块相关的随笔,说要把源码贴出来,一直没有贴,现在我把源码贴出来,有任何问题欢迎留言讨论. 源码是在nop上写的,所以文件夹结构和nop的文件夹对应,源码包含的 ...
- Jquery插件开发学习
一:导言 有些WEB开发者,会引用一个JQuery类库,然后在网页上写一写$("#"),$("."),写了几年就对别人说非常熟悉JQuery.我曾经也是这样的人 ...
- 【转载】Java中的回车换行符/n /r /t
source:http://hane00.blog.163.com/blog/static/1600615220126204446809/ '\r'是回车,'\n'是换行,前者使光标到行首,后者使光标 ...
- G.Interference Signal---河南省第八届程序设计大赛(dp)
G.Interference Signal 时间限制: 2 Sec 内存限制: 128 MB提交: 47 解决: 18[提交][状态] 题目描述 Dr.Kong’s laboratory moni ...
- 《数据结构》 java的一维数组的内存结构与其特性
1{数组的概念: 数组是相同类型变量的集合,可以使用共同的名字引用它.数组也可以被定义为任何类型,可以是一维或者二维的.数组的访问时通过其对应的下标来实现的.数组提供了一种将有联系的信息便利分组的方式 ...
- Android adb常用指令
Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或 ...
- CodeForces 743A Vladik and flights (水题)
题意:sb要从a到b,然后要乘坐飞机,只有两家有飞机,如果乘坐同一家的,就免费,如果不是就收到abs(j-i) 的费用,问你最少花费是多少. 析:直接考虑a和b是不是同一家的,如果是,花费为0,如果不 ...