За последние 24 часа нас посетил 30861 программист и 1444 робота. Сейчас ищут 833 программиста ...

ubuntu server 16.04 Ошибка подключения к базе данных.

Тема в разделе "PHP для новичков", создана пользователем askanim, 17 май 2016.

  1. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002] Connection refused' in /var/www/pandajob.ru/www/app/Components/Db.php on line 23

    PDOException: SQLSTATE[HY000] [2002] Connection refused in /var/www/pandajob.ru/www/app/Components/Db.php on line 23


    Собственно строка 23

    PHP:
    1. 22. $dsn = "mysql:host={$params['host']};dbname={$params['dbname']}";
    2. 23. $db = new \PDO($dsn, $params['user'], $params['password']);
    Всё вбил перепроверил тысячу раз хост и тд. Есть такое чувство что проблема с правами доступа. Потому что перестало работать как только я снял все галки с 777 в папке с сайтом и поставил туда 770 на папки и 660 на файлы. и расшарил доступ к ним на чтинеие запись и использование для группы www-data которая группа апача. Вот и после этого где то начала вылетать ошибка чё делать подскажите. плиз.


     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    а каким боком права доступа к файлам в каталоге сказываются на попытку подключения к серверу субд? конфиг мускула и настройки пдо в студию
     
  3. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    настройки pdo ?
     
  4. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    да, настройки пдо. те самые что лежат в массиве в переменной парамс. прям вот вар_дамп(парамс) перед объявлением переменной дсн.
     
  5. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    PHP:
    1. class Dbparams {
    2.     protected $host;
    3.     protected $dbname;
    4.     protected $user;
    5.     protected $password;
    6.  
    7.     public function getDataParams () {
    8.     $this->host = 'localhost';
    9.     $this->dbname = 'pandajo';
    10.     $this->user = 'pandajob';
    11.     $this->password = '23kl89t4';
    12.  
    13.         return array(
    14.             'host' => $this->host,
    15.             'dbname' => $this->dbname,
    16.             'user' => $this->user,
    17.             'password' => $this->password
    18.         );
    19.     }
    20. }
    раньше стоял хост айпи адрес локального компьютера... Ща поставил локал хост прошёл подключение к базе данных. Но вот проблема часть запросов не работает почему то не знаю почему. В базе запросы проходят. А в коде пытаюсь их воткнуть возвращает false
    --- Добавлено ---
    Как конфиг мускуля посмотреть?
    --- Добавлено ---
    PHP:
    1. $dsn = "mysql:host={$params['host']};port=3306;dbname={$params['dbname']};charset=utf8";
    2.         $db = new \PDO($dsn, $params['user'], $params['password']);
    Помогло установка кодировки и указание порта. Всё работает !