我正在尝试为我的公司开发一个解决方案,我的目标是将我们的Web服务器(在php上,并且已经运行了一个网站)连接到我们的CRM数据库(在mssql和基于mssql上)在另一台服务器上)。我的第一个解决方案是在Web服务器中拥有此CRM数据库的副本,并且由于安全问题每天或每小时对其进行同步。但是现在我正在考虑建立直接连接,你认为这是可能的吗?如果可能的话,我可能会遇到什么样的安全问题。有没有人有这种问题的经验?
由于
J
答案 0 :(得分:0)
连接到远程数据库的速度很慢,但至少您的数据是一致的。如果速度不是一切,我建议这种方法。迁移数据可能很痛苦。
您可能希望在服务器之间创建安全(SSL)连接。有关详细信息,请咨询您的系统管理员。
答案 1 :(得分:0)
应该不鼓励每天进行同步,因为您将失去实时数据可靠性。
如果您使用的是PHP 5.1版,它仍然支持通过php_mssql.dll连接php-mssql,请确保在PHP.ini上启用它
答案 2 :(得分:0)
<?php
$serverName = "ServerName"; /// use remote server name here
$uid = "sqlusername";
$pwd = "sqlpassword";
$databaseName = "DBName";
$connectionInfo = array( "UID"=>$uid,
"PWD"=>$pwd,
"Database"=>$databaseName);
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
$tsql = "SELECT id, FirstName, LastName, Email FROM tblContact";
/* Execute the query. */
$stmt = sqlsrv_query( $conn, $tsql);
if ( $stmt )
{
echo "Statement executed.<br>\n";
}
else
{
echo "Error in statement execution.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Iterate through the result set printing a row of data upon each iteration.*/
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC))
{
echo "Col1: ".$row[0]."\n";
echo "Col2: ".$row[1]."\n";
echo "Col3: ".$row[2]."<br>\n";
echo "-----------------<br>\n";
}
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>