0

可能重复:
使用 PHP 通过 SSL 连接到 MySQL

我是 php 新手,我不确定如何使用 ssl 远程连接到数据库。使用 mysql 工作台,我只需输入数据库的 url 和主机名以及我们的密码,然后选择使用 ssl,我就可以连接。我怎样才能使用 php 做到这一点?

4

2 回答 2

1

在此处描述的 mysql 服务器端进行了一些 preaprations 之后,您可以使用 ssl 和以下 php 代码进行连接:

$db = mysqlii_init();
$db->ssl_set('server-key.pem','server-cert.pem', 'cacert.pem', NULL, NULL);
$db->real_connct("your.server.net", "test", "testpass", "yourdb");

或者使用旧的(不推荐使用的)mysql API 这个cn可以这样完成:

$link = mysql_connect("your.server.net", "test", "testpass", false, MYSQL_CLIENT_SSL) 
if(!$link) {
    die (mysql_error()));
}

笔记:

注意,PHP 5.3.3 之前的 MySQL Native Driver 不支持 SSL,所以在使用 MySQL Native Driver 时调用该函数会报错。从 PHP 版本 5.3 开始,默认情况下在 Microsoft Windows 上启用 MySQL Native Driver。

于 2012-12-19T20:35:32.877 回答
0

取决于您尝试连接到 mysql 的方法

$db = mysql_connect('your.server','username','pass',false,MYSQL_CLIENT_SSL);

但是从 5.5 开始,不推荐使用 mysql_connect [旧连接器正在消失]

$db = mysqli::init();
$db->set_ssl($key,$cert,$ca,$capath,$cipher);
$db->real_connect($host,$username,$passwd,$dbname);
于 2012-12-19T20:53:26.347 回答