如何让多台计算机共享服务器上的单个数据库?

问题描述 投票:0回答:2

我编写了一个程序来跟踪Visual Studio中Windows窗体应用程序中员工的记录。我使用SQL Server 2017 Express进行数据存储。我的SqlConnection语句使用localhost和SQL Server身份验证,我需要知道如何让多台计算机同步到一个数据库,没有互联网,但计算机共享一个服务器,他们可以在里面存储文件和所有计算机可以访问它,我读到人们在SqlConnection语句中输入主计算机的IP地址,但我不知道这是如何工作的。

这是我目前的SqlConnection声明

new sqlConnection(@"Data source = localhost\sqlexpress; Initial catalog = database;user id =sa;password = 1234; integrated security = false")

该程序将安装在多台计算机上供人们使用

c# winforms
2个回答
1
投票

首先,您必须使用主机名或使用sql server hosting pc的ip更改localhost。这将是一件事

new sqlConnection(@"Data source = mySqlServerPcName\sqlexpress; Initial catalog = database;user id =sa;password = 1234; integrated security = false")

那么你必须在托管pc上的sql server配置管理器上启用tcp / ip。

打开SQL Server配置管理器

sql server Configuration Manager

然后转到SQL Server网络配置并单击SQLEXPRESS的协议。然后您将看到TCP / IP已禁用。双击TCP / IP并选择“是”以启用。单击确定,您将收到以下消息

Warning message

按确定,然后单击左侧的SQL Server服务。右键单击SQL Server(SQLEXPRESS)并选择restart。现在您的SQL Server已准备就绪。

现在,您要做的最后一件事是打开防火墙上的sql端口。打开命令行并运行以下命令

netsh advfirewall firewall add rule name = SQLPort dir = in protocol = tcp action = allow localport = 1433 remoteip = localsubnet profile = DOMAIN

现在您已准备好从其他计算机连接到数据库。


0
投票

确保可以从您希望应用程序工作的所有计算机访问计算机上的sql server。您也可能必须在防火墙中打开ports used by sql服务器。然后,您可以更新connection string以连接到sql实例。

注意:对store connection string in a configuration file而不是在代码中这是一个好主意。

© www.soinside.com 2019 - 2024. All rights reserved.