zoukankan      html  css  js  c++  java
  • sql 2008 r2 迁移到 sql 2005

    背景:开发环境是 sql2008 r2, 部署环境是sql 2005,需要从08高版本迁移到05低版本

    解决步骤:

    条条大路通罗马,为了达到这个目标,我们一共试验了3种方式,从简到难依次是

    1:在sql 05服务器上附加 08数据库文件

    (奇迹,发生吧。。)

    p1

    sql 2008 r2的版本就是661,从错误消息中,我们可以看出,出错原因是08无法降级给05使用

    05向前兼容08,没戏。= .= ,方法1 pass.

    2:通过sql 2008的复制数据库功能,将数据库复制到05上

    (这个功能需要目标服务器,本文中是sql 2005服务器开启sql代理服务,并开启远程连接,如何开启远程连接请参考之前的文章《sql server 2005 开启远程连接》)

    具体的复制过程不再赘述,一直下一步下一步,知道卡在如下位置,无法再继续下一步了

    未命名

    看下问题原因出在存储格式上,VarDecimal是 sql server 2005 sp2中出现的一种存储方式,目的是为了减少数据库占用的存储空间,可是目标服务器上没打补丁包,在无法操作目标服务器的情况下, 只能寄希望于禁用 vardecimal存储格式,网上搜了下,发现有相关的命令如下

    1:查询所有开启了vardecimal服务
    exec sp_db_vardecimal_storage_format

    2:打开/关闭vardecimal
    exec sp_db_vardecimal_storage_format 'dbname', 'OFF'

    命令式执行成功了,可惜数据库的存储方式的vardecimal方式还是ON的,

    网上查了下,vardecimal是无法关闭的,所以方法2 pass

    3:通过sql 2008导出数据的功能导出表结构和数据,通过生成脚本导出触发器、存储过程等功能

    (这个功能需要目标服务器,本文中是sql 2005服务器开启sql代理服务,并开启远程连接,如何开启远程连接请参考之前的文章《sql server 2005 开启远程连接》)

    以上方法均失败之后,开始使用最原始的方式,导出数据

    tips:在实验中,发现目标数据库不需要开启sql代理和sql borwser服务,就可以导数据

    3.1 导出表结构、约束、触发器、存储过程等框架

     该功能主要是通过SQL服务器的生产脚本的功能来实现的。

    生成脚本的办法,右键要导操作的的数据库,依次点击 任务 > 生成脚本 按提示下一步。。

    3.2 导出数据

    导出数据方法,右键要导出数据的表 依次点击 任务 > 导出数据,按提示下一步。。。导出完毕。

    OK 至此,我们08的数据库就这样同步到05的数据库了

    end

  • 相关阅读:
    Lua多条件排序
    python_request 使用jsonpath取值结果,进行接口关联
    python_xlutils : python利用xlutils修改表格内容
    python_reques接口测试框架,Excel作为案例数据源
    正则表达式re模块的基础及简单应用
    linux下Rtree的安装
    du和df不一致的解决方法
    windows 版Tomcat 7.0的配置
    linux下搭建svn服务器
    【leetcode】1. Two Sums
  • 原文地址:https://www.cnblogs.com/kimmy/p/2289243.html
Copyright © 2011-2022 走看看