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

  • Автор темы I AM
  • Обновлено
  • 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. так в чем проблема?

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 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

Тем
78

Постов
197

Баллов
617
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно