点击微审计关注我们
审计人员在日常审计工作中常用的SQL Server一般为2008R2版本,但在审计数据采集时偶尔会碰到采集到SQL Server2014等高版本数据,如果审计组所有审计人员都为了使用该数据而选择升级数据库软件将会异常麻烦,比较好的解决方法是由1人在安装好2008R2版本数据库软件的电脑上再安装一套高版本的数据库软件,挂载审计数据后将数据格式降低为低版本,然后把低版本数据分发给大家使用。经过一些摸索和试错,我总结了一套简便可行且可以适用于大数据量数据库文件降低数据格式版本的方法,希望可以对各审计人员有所帮助。
1、判断数据库备份文件具体版本。采集到的SQL Server备份文件(.bak格式)倘若不了解具体版本,可先尝试在SQL Server 2008 R2中使用数据还原功能恢复备份数据,然后根据弹出的错误提示窗口中现实的备份文件版本来确定备份文件具体版本,例如下图所示,网上搜索10.50.1600对应的SQL Server版本。
2、安装与备份文件对应版本的数据库软件。这里需要注意安装高版本数据库软件时实例名称要和低版本数据库软件的实例区分开,如SQL Server 2008 R2实例名称为“SQL EXPRESS”,那么高版本可命名为能看出区别的实例名称,例如安装SQL Server 2014数据库时可将实例名称命名为“SQL EXPRESS2014”。
3、将备份数据还原至SQL Server 2014并导出SQL Server 2008 R2数据脚本。在SQL Server 2014中右键单击刚还原好的数据库,依次选择“任务”、“生成脚本”、“编写整个数据库及所有数据库对象的脚本”、 “高级”。
在“高级脚本编写选项”里将为服务器编写脚本设置为SQL Server 2008 R2,将脚本数据的类型设置为“仅限架构”,执行后得到包含表、字段但不含具体数据的sql脚本文件。
3、在SQL Server 2008 R2中使用生成的sql脚本建立数据库表并导入数据。首先需要在SQL Server 2008 R2中新建一个空数据库,数据库名和SQL Server 2014导出的数据库名应完全一致,否则执行脚本后数据库表会被创建到master系统数据库中。之后在SQL Server 2008 R2中依次点击“文件”、“打开”,选择sql脚本,然后执行;或者在命令提示符界面执行SQLCMD -U sa -P 密码 -S IP -d 数据库名字 -r -i 脚本文件地址。创建好数据表结构后,在SQL Server 2014中使用数据导出功能将数据导入到SQL Server 2008 R2对应的数据表中,注意“数据源”和“导入目标”均选择SQL Server Native Client 10.0,“服务器名称”为实例名称,“数据库”为需要操作的数据库名称。
执行后,SQL Server 2014所选数据库的所有数据会对应导入到SQL Server 2008 R2。
扫码关注我们
● 微信号 : icssaudit ●