Ошибка при подключении базы данных MySQL

  • Автор темы RuslanKarpuk
  • 41
  • Обновлено
  • 12, May 2024
  • #1
Привет, ребята, я хочу спросить вас о подключении базы данных MySQL с разных хостинг-серверов с помощью php. и вот мой php-код
 

<?php

$db_host = 'myurl.com:3306'; << Usually is Localhost.

$username = 'mycpanel usernam';

$password = 'smycpanel pass';

$db_usr = 'my database users';

$db_pwd = 'db pass';

$db_db = 'database name';

$con = mysqli_connect($db_host,$db_usr,$db_pwd,$db_db);

if (mysqli_connect_errno())

die("Unable to connect to Mysql Server");

function getblogList($con,$limit=5){

$resblogData = "";

$query = mysqli_query($con, "SELECT * FROM blog_content ORDER BY id DESC LIMIT $limit");

while($row = mysqli_fetch_array($query)) {

//populate and display results data in each row

$post_title = $row['post_title'];

$posted_by = $row['posted_by'];

$post_date = $row['date'];

$post_date_raw=date_create($post_date);

$post_month = date_format($post_date_raw,"M");

$post_day = date_format($post_date_raw,"j");

$post_year = date_format($post_date_raw,"Y");

$post_url = $row['post_url'];

$resblogData .= "<li><span><a href='myurl path here'>$post_title</a></span>

<div class='blogListData'>$post_month $post_day, $post_year | Posted By $posted_by</div>

</li>";

}

return $resblogData;

}

?>

<?php echo getblogList($con,5); ?>

Код (разметка):
Предупреждение: mysqli_connect(): (HY000/1045): доступ запрещен для пользователя 'myusername'@'ajax.vivawebhost.com' (с использованием пароля: ДА) в /home/sligscom/public_html/index.php В сети 10 Невозможно подключиться к серверу Mysql

я разрешаю доступ по IP из удаленной базы данных mysql. так в чем проблема?

RuslanKarpuk


Рег
01 Jan, 2011

Тем
1

Постов
1

Баллов
11
  • 04, Jun 2024
  • #2
Вы ввели имя домена в поле имени сервера базы данных.

Это может быть направлено на ваш хост, но MySQL делает разницу между именем домена и локальным хостом.

Если ваша база данных расположена на том же сервере, используйте localhost.

В противном случае вам потребуется добавить дополнительные учетные данные для вашего имени входа (имени пользователя), чтобы связать его с именем домена. ---- Отредактировано: Извините, я не заметил, что вы сказали, что находитесь на другом хосте.

В этом случае в вашем гранте должен быть указан хост, с которого вы подключаетесь, например: предоставить все привилегии на dbname.* пользователю@"%", указанному в параметре "пароль"; Вместо подстановочного знака % вы можете ограничить доступ к IP-адресу, с которого происходит соединение.

Однако этот параметр, вероятно, отсутствует в вашей таблице пользователей в MySQL, и поэтому вы не можете войти в систему, используя свои учетные данные. ----- А вы проверили, что служба MySQL на сервере базы данных не привязана к 127.0.0.1? Это тоже часто допускаемая ошибка.

Удалите оператор привязки из /etc/my.cnf, потому что, если служба привязана к 127.0.0.1, она не будет прослушивать пакеты, поступающие с других адресов.
 

fessatgoodnet


Рег
02 Oct, 2013

Тем
1

Постов
3

Баллов
13
Тем
49554
Комментарии
57426
Опыт
552966

Интересно