无法从 PHP 连接到 Planetscale 云 Mysql 数据库。 我尝试用 mysqli 做:
$hostname = "secret";
$dbName = "secret";
$port = "3306";
$ssl = "/etc/ssl/certs/ca-certificates.crt";
$user="secret";
$passs="pscale_pw_xxx";
$mysqli = mysqli_init();
$mysqli->ssl_set(NULL, NULL, $ssl, NULL, NULL);
$mysqli->real_connect($hostname,$user, $passs, $dbName, $port);
if ($mysqli->connect_error) {
echo 'not connected to the database';
} else {
echo "Connected successfully";
$mysqli->query("create table test(TOTO text)");
}
我有错误消息:“
Warning:mysqli::real_connect():此流不支持 SSL”
以及类似“
Warning:mysqli::real_connect():无法使用 SSL 连接到 MySQL”以及“
Warning:mysqli::query():无效对象或资源 mysqli”之类的消息
等等……
我已经尝试过 PDO 解决方案,但没有成功,下面是我的代码
function Connect_Planet($HOST, $LOGIN, $PASS, $DB_NAME)
{
try {
$dsn = 'mysql:host=' . $HOST . ';dbname=' . $DB_NAME;
$user = "";
$dbP = "";
$options = array(
1009 => "/etc/ssl/certs/ca-certificates.crt",
1014 => false,
PDO::MYSQL_ATTR_SSL_CA => "/etc/ssl/certs/ca-certificates.crt"
);
$this->CONN = new PDO($dsn, $LOGIN, $PASS,$options);
$this->CONN->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
$this->MSG= $e->getMessage();
$this->IS_OPEN=0;
return 0;
}
$this->VAR_HOST=$HOST;
$this->VAR_LOGIN=$LOGIN;
$this->VAR_PASS=$PASS;
$this->VAR_DBNAME=$DB_NAME;
$this->IS_OPEN=1;
return 1;
}
如果有人成功使用 php 和 planetscale 数据库正常工作,请告诉我你是怎么做到的。 提前致谢,