Как подключить db мои скрипты php на сервере A и подключиться к базе данных MySQL на сервере B?
$conn = new mysqli($servername, $username, $password);
Это должно работать нормально.
$conn = new mysqli(223.122.212.2:90, 'root', 'root');
где 223.122.212.2
- это ip
для сервера B, запуск сервера mysql и прослушивание на порту 90. Убедитесь, что сервер B запускает mysql на порту 90 (или любой другой порт, который вы хотите), и брандмауэр, если таковой имеется, настроен таким образом что позволяет удаленное соединение.
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
Вам нужно сделать несколько шагов:
Предположим, что первым сервером является www.firstserver.com
а второй - www.secondserver.com
(из которого вы хотите получить доступ к базе данных).
Войдите в cpanel второго сервера и перейдите на удаленный mysql (вы можете найти это в подпапке Databases) и добавьте% в разделе Добавить хост доступа и нажмите кнопку добавления хоста.
На первом сервере (откуда вы хотите получить доступ к базе данных) php-скрипт: используйте данные mysql, как показано ниже:
Host: www.secondserver.com
Username: dbuseronsecondserver
password: dbpwdonsecondserver
db_name: dbnameonsecondserver
Ваш скрипт:
<?php
$servername = "www.secondserver.com";
$username = "dbuseronsecondserver";
$password = "dbpwdonsecondserver";
$dbname = "dbnameonsecondserver";
// Create connection
if (!function_exists('mysql_init') && !extension_loaded('mysql'))
{
echo 'We don\'t have mysqli!!!';
}
else
{
echo 'Phew we have it!';
}
$conn = mysqli_connect($servername, $username, $password, $dbname);
mysql_select_db($dbname); // Check connection
if (!$conn) {
echo '{"status":"error"}';
}
?>
Надеюсь, это поможет вам.