从标题可以看出这是未解决上一篇遗留问题写的,现在我也不知道这个可不可以成功,方法似乎查到了一种,具体怎样还不清楚;而且,我想说的是“我踩雷了”。

这篇的主角是“Database Publishing Wizard”家族;实话我完全不知道有这个。

地点是“ C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Publishing\1.2\SqlPubWiz.exe”。从路径可以看到1.2这个数据,上面提到这是一个家族,根据这个1.2可知道这不是第一个版本;在它的前面还有一个属于Visual Studio 2005的1.1,那时它可并没有被SQL内建,只有下载才有;然后还有一个属于Visual Studio 2008 SP1的1.3;而我们知道的Visual Studio已经有了2010版了,自然也有一个属于它的1.4;因为是家族,所以它们正常都在“C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Publishing\1.2\SqlPubWiz.exe”,而且它们与Visual Studio的关系越来越密切,甚至成为了一家。
这是我找到的,可以看到我们的主角在倒数第四行。

启动方法:
1.通过Visual Studio 2008启动
2.在这里“C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Publishing\1.2\SqlPubWiz.exe”找到它,双击,按步骤来
任选一种都可以。

作用:
1.“数据库发布向导”,就如它的名字Database Publishing Wizard
2.当成“指令列工具”来使用

使用:
步骤1:双击SqlPubWiz.exe,我是第一次双击这个,出现的是一个控制台,什么也没有,只有一个定位光标在左上角闪烁;等了一会儿(30s内),出现了一个Database Publishing Wizard界面
步骤2:点击Next,得到

步骤3:继续点击Next,报错
===================================

无法连接到服务器 localhost。 (Microsoft.SqlServer.ConnectionInfo)

------------------------------
程序位置:

在 Microsoft.SqlServer.Management.Common.ConnectionManager.Connect()
在 Microsoft.SqlServer.Management.SqlManagerUI.Scripting.ScriptingDriver.ConnectToServer()
在 Microsoft.SqlServer.Management.SqlManagerUI.Scripting.ScriptingDriver..ctor(String databaseName, String serverName)
在 Microsoft.SqlServer.Management.SqlManagerUI.SelectServerWizardPage.ValidateForm()

===================================

不支持此 SQL Server 版本(10.0)。 (Microsoft.SqlServer.ConnectionInfo)

------------------------------

===================================

启动SQL2008,再点击Next,依然报错
无法连接到服务器 localhost。 (Microsoft.SqlServer.ConnectionInfo)

------------------------------
程序位置:

在 Microsoft.SqlServer.Management.Common.ConnectionManager.Connect()
在 Microsoft.SqlServer.Management.SqlManagerUI.Scripting.ScriptingDriver.ConnectToServer()
在 Microsoft.SqlServer.Management.SqlManagerUI.Scripting.ScriptingDriver..ctor(String databaseName, String serverName)
在 Microsoft.SqlServer.Management.SqlManagerUI.SelectServerWizardPage.ValidateForm()

===================================

不支持此 SQL Server 版本(10.0)。 (Microsoft.SqlServer.ConnectionInfo)

------------------------------

===================================

启动SQL2008,将localhost改为local,点击Next,会出现短暂的未响应,然后报错
无法连接到服务器 local。 (Microsoft.SqlServer.ConnectionInfo)

------------------------------
程序位置:

在 Microsoft.SqlServer.Management.Common.ConnectionManager.Connect()
在 Microsoft.SqlServer.Management.SqlManagerUI.Scripting.ScriptingDriver.ConnectToServer()
在 Microsoft.SqlServer.Management.SqlManagerUI.Scripting.ScriptingDriver..ctor(String databaseName, String serverName)
在 Microsoft.SqlServer.Management.SqlManagerUI.SelectServerWizardPage.ValidateForm()

===================================

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) (.Net SqlClient Data Provider)

------------------------------
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=53&LinkId=20476

------------------------------
错误号: 53
严重性: 20
状态: 0

------------------------------
从上面的错误看第一感觉是服务器有问题,我将SQL给关闭,重启,看到服务器的名称,拷贝;将它粘贴到向导里的服务器中;然后点击“下一步”,最终成功。

但是这里有一个问题,我登录SQL用的是SQL身份验证,而不是Windows身份验证;个人猜测如果我在向导里选择的是SQL身份验证的话,只需输入登录名和登录密码应该可以得到相同的结果;Windows身份验证相对来说要方便很多,无论哪种方式服务器名称是一样的,也不能错,格式“XX\SQLEXPRESS","XX"是你的pc名称。

步骤4:选择数据库,点击Next,报错

===================================

This wizard will close because it encountered the following error: (Microsoft SQL Server)

------------------------------
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server+Database+Publishing+Wizard&ProdVer=1.2.0.0&EvtSrc=Microsoft.SqlServer.Management.UI.WizardFrameworkErrorSR&EvtID=UncaughtException&LinkId=20476

===================================

未能加载文件或程序集“Microsoft.SqlServer.BatchParser, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91”或它的某一个依赖项。系统找不到指定的文件。 (Microsoft.SqlServer.ConnectionInfo)

------------------------------
是什么原因导致的?我想应该是我的数据库有问题,怎么说呢?因为我只是在SQL里见了一个空数据库,估计这是不行的。

但是这里还是应该进行总结下:我的想法是不能实现的,为什么呢?我手边就一台电脑,装的是SQL2008,而数据库的备份是用SQL2008 r2备份的;想将这个备份在SQL2008中还原,是不可能的。而上面的方法是怎样呢?它是将Database Publishing Wizard进行降级,降到你想要的版本,然后用这个新版本的Database Publishing Wizard对你要操作的数据库进行编码,得到与新版本相适应的数据库副本,自然这个副本也可以在另一个没有经过降级的Database Publishing Wizard的SQL中执行。由此,Database Publishing Wizard它的作用规定T-SQL的编码方式。

猜想:可不可以先对Database Publishing Wizard进行升级,然后”将从SQL2008 r2里备份的数据库还原到SQL2008中“,将1.2的环境升级成为1.3的环境,继而实现操作。

最后,在上面说过SqlPubWiz.exe的启动方法有两种,应该还有第三种从控制台启动。

将从SQL2008 r2里备份的数据库还原到SQL2008中的更多相关文章

  1. SQL2008 R2 主从数据库同步设置

    一.准备工作: 主数据库服务器: OS:Windows Server 2008 R2    DB: SQL Server 2008 R2 Hostname : CXMasterDB IP: 192.1 ...

  2. paip.sql2k,sql2005,sql2008,sql2008 r2,SQL2012以及EXPRESS版本的区别

    paip.sql2k,sql2005,sql2008,sql2008 r2,SQL2012以及EXPRESS版本的区别 作者Attilax ,  EMAIL:1466519819@qq.com  来源 ...

  3. 利用百度云免费备份SQL数据库

    我们开发了一个会员管理系统,随着使用的人越来越多,异地备份数据库就显得十分重要,万一硬盘出问题了怎么办呢.所以就着手做这个工作. 首先呢,找到了几个专门用来提供备份数据库的网站,一年好几百,好贵.放弃 ...

  4. 使用xtrabackup备份mysql数据库

    数据在一个企业里非常重要,因此经常需要备份数据库,确保出线故障时,可以立刻恢复数据到最新状态,目前常见的备份工具有mysqldump和xtrabackup,数据量较少时可以使用mysqldump,但随 ...

  5. MariaDB之基于Percona Xtrabackup备份大数据库[完整备份与增量备份]

    MariaDB之基于Percona Xtrabackup备份大数据库[完整备份与增量备份] 1.Xtrabackup的安装 percona-xtrabackup-2.2.3-4982.el6.x86_ ...

  6. mysql备份恢复数据库据/表

    备份单个数据库,只备份表,如要恢复,必须先创建一个数据库[root@s]# mysqldump -u root -p dbname1 > dbname1.sql[root@s]# mysql - ...

  7. Windows Server 2012 R2里十个极好的新功能

    Windows Server 2012 R2具备的众多新特点大大的增强了操作系统的功能性,同时也是在Windows Server 2012原有功能上的拓展.这里整理出Windows Server 20 ...

  8. 使用Navicat定时备份mysql数据库和创建报表并邮件自动发送

    数据库备份在现代计算机高速发展的今日变得日益重要,程序员往往因为不重视而忽略备份数据,导致数据丢失,造成非常严重的后果.定时备份无疑是解决备份的最好的途径,本文主要使用Navicat来自动备份数据库和 ...

  9. Linux下定时备份MySQL数据库的Shell脚本

    Linux下定时备份MySQL数据库的Shell脚本   对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间 ...

随机推荐

  1. git 系统中 post-receive 钩子不能正常执行 git pull 解决方法

    有一个需求是本地git在push到远程 git repo 之后,在远程服务器上自动在/dir/foo下执行 git pull 的操作.想来是一个很简单的需求,不就是在远程的 foo.git 仓库中的 ...

  2. 01 mybatis框架整体概况(2018.7.10)-

    01 mybatis框架整体概况(2018.7.10)- F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10) maven用的是3.39的版本 ...

  3. LeetCode: 258 Add Digits(easy)

    题目: Given a non-negative integer num, repeatedly add all its digits until the result has only one di ...

  4. VS Supercharger插件

    一.前言 Supercharger 是 VS 的一款插件,针对代码进行优化和着色,便于观察和区分. 二.下载及安装 下载的 URL 如下:Supercharger 下载地址 点击下载,下载完成以后,那 ...

  5. Swift3.0 键盘高度监听获取

    方法:通过通知监听键盘的动态 1.键盘的动态有四种: public static let UIKeyboardWillShow: NSNotification.Name public static l ...

  6. Codevs 1976 Queen数列

    1976 Queen数列  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 将1到N的整数数列(1,2,3,… ...

  7. Phpstorm建立连接Wampserver的数据库

    phpstorm是一款php集成开发环境软件,集成了很多功能,不但有强大的代码编辑及调试功能,还能连接数据库.本文写的就是如何用phpstorm来建立访问wampserver数据库,查询输出数据,方便 ...

  8. Syncd-开源自动化部署工具

    官网地址:https://gitee.com/dreamans/syncd/issues syncd是一款开源的代码部署工具,它具有简单.高效.易用等特点,可以提高团队的工作效率. 目前只支持类Lin ...

  9. SpringBlade 2.0-RC3 发布,全新的微服务开发平台

    经过了十天的艰苦奋斗,SpringBlade 2.0-RC3发布了,此版本增加了很多有用的功能,距离正式版本更近一步! SpringBlade简介: SpringBlade 2.0 是一个基于 Spr ...

  10. Java语言和虚拟机规范下载