sql2000和sql2005装在一台机器上和两版本之间的转换

sql2000和sql2005装在一台机器上是需要加实例名的!

 
我是先安装的sql2005,后安装的sql2000。
如果sql2005默认,那么sql2000安装时就不能选“默认实例”,而要有实例名。
例如: sql2005   ap2
        sql2000   ap2\sql2000  (sql2000为实例名)

<addname="ConnKu"connectionString="Data Source=.;Initial Catalog=tongjinet;User ID=sa;Password=315bolixh0808"providerName="System.Data.SqlClient" /> 访问的是sql2005中的数据库

<addkey="ConnNew"value=".\sql2000;uid=sa;pwd=123;database=GlassDB"/> 访问的是sql2000中的数据库
 
如果安装数据库版本不是默认实例名,需要在连接字符串上添加实例名value=".\sql2000,就像如果使用的是简版的要在连接字符串上添加数据库版本一样。
------------------------------------------------

先装2000,装的时候改实例名.sqlserver_2000
再装2005,装的时候改实例名.sqlserver_2005

就是说,装的时候区别实例名即可.

----------------------------------------------
在同一服务器上安装SQL2000和SQL2005过程:

1,因为SQL2000安装过程中无法修改实例名称,故安装过程中必须先安装SQL2000,然后在安装SQL2005.安装SQL2005时必须修改SQL实例名称,否则将和SQL2000的实例名称冲突.

 
2,安装完SQL2005后,开始准备用SQL2000客户端工具连接SQL2005,结果报告不能用SQL2000客户端工具连接,只能用SQL2005客户端工具连接,后证明SQL2005客户端工具可以同时连接SQL2000和SQL2005.

 
3,服务器上安装完成后,准备用远程连接SQL服务器试试,结果始终连接不上SQL2005,只能连接上SQL2000.原来SQL2000服务器用的端口始终是1433端口,而SQL2005使用的是动态端口.那如果用程序连接SQL20005服务器的时候,程序如何知道SQL2005服务器用的是什么端口呢?原来SQL2005提供了一个SQL BROWER服务,开启这个服务后,就可以通过查询SQL BROWER服务就可以知道SQL2005现在正在使用哪个端口.因为项目需要,需要把这个SQL2005的动态端口改成静态的,修改过程如下:

运行SQL配置管理程序,找到SQL的实例名称下面的协议,双击右边的TCP/IP协议,在第二选项卡中IPALL里面输入SQL运行的端口就可以了(注意不能同时填写动态端口和静态端口,否则SQL下次将无法启动),修改完成后重新启动SQL服务即可生效.

 
4,修改端口后在连接发现仍然不能连接,原来还需要开启SQL2005的远程登陆服务.

在Microsoft SQL Server 2005中默认的是不允许远程登录的,会出现【provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错】的错误,下面的方法可以打开:

配置工具->sql server外围应用配置器->服务和连接的外围应用配置器->打开MSSQLSERVER节点下的Database Engine 节点,先择"远程连接",接下建议选择"同时使用TCP/IP和named pipes",确定后,重启数据库服务就可以。

 
5,远程登陆服务和端口都修改之后连接应该没有问题了吧,结果远程连接SQL2000的时候发现没有问题,但是连接SQL20005依然不行,在SQL2005的客户端连接工具里面需要输入你要连接的SQL服务,SQL2000的直接输入服务器的IP地址即可,那如何输入才能让客户端工具连接到SQL2005的服务呢?既然SQL2005修改了端口,那按照常规的录入格式应该是输入:IP地址+冒号+端口号应该就可以了.结果试了一下发现依然不行.后又修改了客户端的连接的默认端口,结果仍然不行.没办法了只有到网上GOOGLE了一翻,结果终于在一篇英文文章中找到了连接的方法,原来按照常规的格式录入是错误的,需要改成:IP地址+逗号+端口号才行。

 

SQL Server 的默认实例

此实例由运行它的计算机的网络名称标识。使用以前版本 SQL Server 客户端软件的应用程序可以连接到默认实例。SQL Server 6.5 版或 SQL Server 7.0 版服务器可作为默认实例操作。但是,一台计算机上每次只能有一个版本作为默认实例运行。 SQL Server 的命名实例 该实例通过计算机的网络名称加上实例名称以<计算机名称>\<实例名称>格式进行标识。绝大多数应用程序必须使用 SQL Server 2000 客户端组件连接到命名实例。然而,可以使用 SQL Server 7.0 版客户端网络实用程序配置服务器别名,以便 SQL Server 7.0 版客户端组件可使用该名称连接到 SQL Server 2000 的命名实例。 计算机可以同时运行任意数目的 SQL Server 命名实例。同时,命名实例还可作为现有的 SQL Server 6.5 版或 SQL Server 7.0 版安装运行。该实例名不能超过 16 个字符。 新实例名称必须以字母、"和"符号(&)或下划线 (_) 开头,可以包含数字、字母或其它字符。SQL Server 系统名称和保留名称不能用作实例名称。例如,"default"一词不能用作实例名称,因为它是安装程序使用的保留名称。 在使用 SQL Server 2000 个人版、SQL Server 2000 标准版或 SQL Server 2000 企业版时,单个和多个 SQL Server 2000 实例(默认或命名)都是可用的。

 


 sql2000和sql2005转换的一些问题:

1.SQL Sever2000安装时默认是允许远程连接,混合身份验证(Window验证和SQL Sever验证)。

2.SQL Sever2005和SQL Sever2000的转换?

  1)数据库的生成一个表一个表的新建查询》执行》生成
  
  2)将2005中的字段后的[AIContent] [nvarchar](max) 后的max去掉有没有影响?
     解答:有影响,去掉max的话,该字段就长度就变为1,在SQL Sever2000中nvarchar类型的长度在1到4000之间,所以将长度改为4000即可

,也可以根据需要来填写长度。

  3)如何将2005中的数据导入到2000中?(数据库框架一样)

3.新建的2000数据库需要添加的数据,哪个表需要添加哪些数据?数据之间的联系?

4.电脑上本来安装有SQL Sever2000数据库,然后再安装完整版的SQL Sever 2005数据库,当连接上SQL Sever2005时,原来2000中的数据库显

示在2005版本中切无法分离。

  原因:两个版本用的实例名一样,都是本地连接,所以会出现这种问题,如果要解决这个问题需要修改一个版本的实例名。

  解决;两个版本不能用相同的实例名和端口,需要修改一个版本的实例名和端口。

  同一台电脑上安装两个版本会不会冲突,会不会出现问题?
 
  解答:不会起冲突,不过如果实例名一样,就会出现上面的问题。
  
  济源安装不知道是否影响到原有的网站?

  解答:不会,因为后来安装了SQL Sever2005,附加了新的数据库。

 

5.SQL Sever2000和2005如何查看和修改实例名?

  SQL Sever2000查看实例名:

  可以在查询分析器中用以下sql语句查看实例名称select convert(varchar(30),@@SERVICENAME) as shili

  如果要修改实例名最好重装,在安装的时候不要选择“默认实例”,选择自定义的。

  SQL Sever2005查看实例名:

  开始菜单下的  sqlserver配置管理器  -----sqlserver服务-------你看sqlserver() 括号里的为实例名。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值