Доброе утро всем, я пытаюсь подключиться к своему Azure серверу для MySQL, используя php, но выдает ошибку. Файл php запускается каждый день в 00:00 на сервере, где размещается мой веб-сайт, и должен подключаться к базе данных azure, чтобы выполнять запросы к базе данных Azure. Я получаю сообщение об ошибке «Превышено время ожидания соединения». Я попытался добавить в свой брандмауэр правило с ip-адресом моего сервера с помощью следующей команды: «az mysql server firewall-rule create --resource-group myresourcegroup - сервер mydemoserver --name AllowMyIP --start-ip-address 192.168.0.1 --end-ip-address 192.168.0.1 ", очевидно, меняются значения, но это не удается ... Я прилагаю код ниже:
$conAzure = mysqli_init();
mysqli_ssl_set($conAzure, NULL, NULL, "pathToSSLCert",NULL, NULL);
mysqli_real_connect($conAzure, "test.mysql.database.azure.com", "test@test", "test", "proj_sophie", 3306, MYSQLI_CLIENT_SSL);
// Check connection
if ($conAzure->connect_error) {
// THE PROGRAM STOPS HERE
die("Connection failed: " . $conAzure->connect_error);
}
echo "Connected successfully";
$sqlAzure1 = "TRUNCATE TABLE elenco_post;";
if ($conAzure->query($sqlAzure1) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sqlAzure1 . "<br>" . $conAzure->error;
}
// inserting in the selected table and fields the data (it's in a for-each so don't worry for the repetitions).
$sqlAzure2 = "INSERT INTO elenco_post ('ID', 'Titolo', 'Contenuto', 'Data', 'URL', 'Ultima_Modifica', 'URL_Immagine', 'Nome_immagine', 'Categoria') VALUES ('".get_the_ID()."',
'".get_the_title()."',
'".get_the_content()."',
'".get_the_date()."',
'".get_permalink()."',
'".get_the_modified_date()."',
'".get_the_post_thumbnail_url(get_the_ID(),'full')."',
'".get_post(get_post_thumbnail_id())->post_title."',
'".$category."');";
if ($conAzure->query($sqlAzure2) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sqlAzure2 . "<br>" . $conAzure->error;
}
Спасибо, жду поддержки!