подключить виртуальную машину для вычислений на сайте, используя облачную базу данных - PullRequest
0 голосов
/ 01 марта 2019

Я работаю над простым сайтом, который состоит из базы данных для входа студентов, использующей PHP в качестве бэкэнда и MySQL в качестве базы данных.Все работает нормально.Позже я решил разместить его на виртуальной машине GCP (Linux 18.04) и облачном SQL.Может ли что-нибудь помочь мне относительно файла конфигурации базы данных для подключения к облачному SQL с моей виртуальной машины.

<?php
$host = "99.999.999.99";
$user = "root";
$password = "password";
$database = "logindb";
$port = null;
$socket = "/cloudsql/project_id:us-central1:studentlogin"
$con=mysqli_connect($host, $user,$password, $database, $port, $socket)or die ('I cannot connect to the database because: '".mysql_error());
mysqli_select_db ($con,'logindb');
?>

И как бы я вызвал функцию из другого файла PHP, например ..

<?php
    session_start();
    require_once('dbconfig/config.php');
?>

1 Ответ

0 голосов
/ 05 марта 2019

Существует несколько способов подключения к вашему экземпляру Cloud SQL с использованием экземпляра GCE, я постараюсь объяснить все из них:

1.Использование Public IP.Возможно, это самый простой из-за вашего варианта использования, ваша конфигурация PHP выглядит правильно (параметр $port должен быть 3306 между прочим).Чтобы подключиться к вашему экземпляру Cloud SQL с помощью Public IP, просто перейдите здесь , выберите свой экземпляр Cloud SQL, перейдите в раздел «Авторизованные сети», нажмите «Добавить сеть» и введите IP-адрес вашего экземпляра GCE.

2.Использование Private IP.Это похоже на предыдущий, но вам нужно принять во внимание некоторые соображения , тогда вам просто нужно отредактировать ваш экземпляр Cloud SQL, активировать частный IP и подключиться к нему из вашего экземпляра GCE

3.Использование Cloud SQL Proxy.Чтобы использовать эту опцию, просто следуйте этой документации .

4.Использование Client libraries.Но клиентская библиотека Cloud SQL для PHP в настоящее время находится в стадии бета-тестирования, поэтому я рекомендую использовать некоторые из перечисленных выше вариантов.

...