zoukankan      html  css  js  c++  java
  • 搞定rainbow的数据迁移!

    新找了rainbow来做公司的门户,使用起来还算可以,但是是在我的测试机器上。突然想起来如何才能把握的测试结果或者以后的开发实例搬到新的服务器上。数据迁移阿。本以为是普通的asp程序,原搬就可以,后来想到好多东西他都是和sharepoint一样配置在数据库中,于是把他们一同restore到新的机器上。没有什么异样,但是运行网站的时候他会监测出是新的数据库。需要重新运行脚本。但是完全失败!!!头疼。他不像sharepoint那样有自己的备份命令。!!!这样开始查阅了官方网站。上面只是说要backup然后restore。看来原来import是不起作用的阿。
    这样我又重新back一次。还是失败。无意中我看到了How to make an SQL readable backup 文章,下面有个连接如何更改dbowner的这才启发我,需要更改这个。试验一下,将aspnet的名字换了服务器的机器名。失败!!!
    最后改成了dbo,这才成功!
    贴出脚本文件,更改owner的时候table使用
    DECLARE @oldOwner sysname, @newOwner sysname, @sql varchar(1000)

    SELECT
      @oldOwner = 'PC\ASPNET'
      , @newOwner = 'dbo'
      , @sql = '
      IF EXISTS (SELECT NULL FROM INFORMATION_SCHEMA.TABLES
      WHERE
          QUOTENAME(TABLE_SCHEMA)+''.''+QUOTENAME(TABLE_NAME) = ''?''
          AND TABLE_SCHEMA = ''' + @oldOwner + '''
      )
      EXECUTE sp_changeobjectowner ''?'', ''' + @newOwner + ''''

    EXECUTE sp_MSforeachtable @sql

    更改存储过程的:
    DECLARE @oldOwner sysname, @newOwner sysname
    SELECT
    @oldOwner = 'PC\ASPNET'
    , @newOwner = 'dbo'
    select 'EXECUTE sp_changeobjectowner '''+QUOTENAME(a.SPECIFIC_SCHEMA)+'.'+QUOTENAME(a.ROUTINE_NAME)+''','''+@newOwner+''''
    from
    INFORMATION_SCHEMA.ROUTINES a
    where
    a.ROUTINE_TYPE = 'PROCEDURE'
    AND a.SPECIFIC_SCHEMA = @oldOwner
    AND
    OBJECTPROPERTY(OBJECT_ID(QUOTENAME(a.SPECIFIC_SCHEMA)+'.'+QUOTENAME(a.ROUTINE_NAME)), 'IsMSShipped') = 0
    运行这个脚本后得到每个更改的命令。粘贴结果再次运行。

  • 相关阅读:
    Android 中日期对话框的应用
    Unity3d 生命周期
    C#读写txt文件的两种方法介绍
    C# 获取文件夹下的所有文件夹及其文件
    NPOI 导出Excel
    SqlParameter 参数化模糊查询
    项目中的一个分页功能pagination
    MVC ---- ckeditor 循环遍历并绑定blur事件
    JQUERY链式操作实例分析
    mvc ---- ajax 提交过来的Json格式如何处理(解析)
  • 原文地址:https://www.cnblogs.com/Mint/p/295459.html
Copyright © 2011-2022 走看看