c# - 如何与同一台机器上的其他用户共享 SQL LocalDb?

标签 c# sql-server-2012 localdb

我正在寻找使用 sqllocaldb 命令实用程序的 share 命令在用户之间访问 LocalDb 数据库的方法,但我看不到一个用户在另一个用户中创建的数据库。

这是我的步骤:

  1. 在 Windows 7 上登录到用户 User1

  2. 使用 sqlcmd 创建一个名为 test 的新数据库,如下所示

    sqlcmd -S (localdb)\v11.0 创建数据库测试

  3. 与User2共享实例v11.0如下

    sqllocaldb共享域\User2 v11.0 myinstance

  4. 切换到用户 2

  5. 登录共享实例如下

    sqlcmd -S (localdb)\.\myinstance

    从 sys.master_files 中选择名称

    以上查询不显示测试数据库。

为什么共享后在用户 1 中创建的数据库在用户 2 中看不到?

我认为它必须基于博客(方法 2)工作 http://blogs.msdn.com/b/sqlexpress/archive/2011/12/09/using-localdb-with-full-iis-part-2-instance-ownership.aspx#SharedLocalDB由 Krzysztof Kozielczyk 但事实并非如此。

感谢任何帮助/建议。

谢谢 削减

最佳答案

这不起作用的原因是您发出了错误的命令。 sqllocaldb.exe 的使用说明是:

share|h ["owner SID or account"] "private name" "shared name"

基于此,您的第二个命令应该是创建 实例的 SID 或帐户,而不是您要与之共享实例的帐户。共享与计算机上的所有 帐户共享一个实例。

假设您的帐户创建了您要共享的实例,那么您应该发出的命令是:

sqllocaldb share v11.0 myinstance

否则应该是:

sqllocaldb share "<account that created the instance>" v11.0 myinstance

在任何一种情况下,您还需要确保您运行的是提升的命令窗口,以便它可以成功共享。

关于c# - 如何与同一台机器上的其他用户共享 SQL LocalDb?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15915521/

相关文章:

c# - 保护许可证验证

c# - 以编程方式备份​​ Azure Sql 数据库

Java 连接到 SQL Server(错误)

c# - ExecuteSqlCommand 与 SqlQuery 有什么区别?什么时候做数据库访问?

c# - 为什么 Entity Framework 在删除时不重新创建我的 localdb?

javascript - 用于请求和响应的文件上传的 XHR 进度条

visual-studio-2012 - 每次执行一行时都会出现 "Loading Symbols"消息

visual-studio - Visual Studio 数据库项目不再部署在构建操作上

c# - 在 Winform 中复制 LocalDB 给我一个 'File being used by another process'

c# - 空 setter 与属性中没有 setter