小编Dan*_*har的帖子

无法开始分布式事务:链接服务器 - > Access数据库

眼镜:

  • Sql Server 2008
  • Server 2008 R2 64位
  • MS Access数据库

什么有效:

  • 我通过安装Office访问数据组件并创建系统DSN等来配置到Access数据库的链接服务器连接.它驻留在同一服务器上的目录中.
  • 我已成功通过openquery查询数据.

    SELECT*FROM OPENQUERY(LINKEDHELL,'SELECT*FROM [D:\ path\mordor.mdb] .Orcs')

  • 我可以通过openquery插入/更新/删除(从Sql Management Studio内部)

什么行不通:

我创建了一个数据库,它公开了一个包含openquery表达式的视图.这允许我的应用程序不知道它通过链接服务器连接查询并允许我使用ORM的事实.例证:实体框架.

但是,在检索数据时,更新/插入/删除不会.我花了很多时间确保MSDTC配置正确,但没有骰子.

我尝试了什么

MSDTC

  • 启用网络DTC访问
  • 允许入站/出站
  • 配置防火墙
  • 启用XA事务
  • 给DTC工作的帐户访问.mdb
  • 进行这些设置后重新启动Sql Server

其他

  • 配置的链接服务器安全性:在sql用户和本地管理员帐户之间创建映射,这样当我使用该sql用户登录时,它使用本地管理员帐户连接到访问数据库.
  • 启用RPC的分布式事务升级:False

我得到的错误:

OLE DB provider "MSDASQL" for linked server "LINKEDHELL" returned message "[Microsoft][ODBC Microsoft Access Driver]Invalid attribute/option identifier ".
Msg 7391, Level 16, State 2, Line 4
The operation could not be performed because OLE DB provider "MSDASQL" for linked server "LINKEDHELL" was unable to …
Run Code Online (Sandbox Code Playgroud)

ms-access msdtc odbc linked-server sql-server-2008

6
推荐指数
1
解决办法
3219
查看次数

SQL Server迁移数据库性能更好

一些背景:

客户已经向认证SQL Server顾问询问了他从sql server 2005迁移到sql server 2008的意见.

他最重要的建议之一是使用备份/恢复,而是使用迁移向导将所有数据复制到新数据库中.

他说,这将确保数据库的内部结构采用SQL 2008格式,最终将带来更好的性能.

客户对此持怀疑态度,因为他们无法在白皮书中找到任何文字或以其他方式证实顾问的陈述.

所以他们提出了这个问题:

给定一个最初在SQL Server 2000上启动的SQL数据库,并使用备份/恢复迁移到较新版本的SQL Server.(最后是在SQL Server 2005上)

使用迁移向导迁移到SQL Server 2008,实际上将所有原始数据复制到新数据库中会产生更好的性能特征.那么他们是否会再次使用备份/恢复方法?

sql sql-server migration performance sql-server-2008

2
推荐指数
1
解决办法
882
查看次数