За последние 24 часа нас посетили 22628 программистов и 1020 роботов. Сейчас ищут 678 программистов ...

Ошибка соединения с базой из backend (из frontend работает отлично)

Тема в разделе "Yii", создана пользователем justquestion, 2 сен 2016.

  1. justquestion

    justquestion Новичок

    С нами с:
    17 янв 2014
    Сообщения:
    6
    Симпатии:
    0
    Приветствую всех.
    Есть advanced-приложение. В frontend и backend настройки к базе одинаковые и хранятся в /common/config/main.php и /common/config/main.local.php
    В /frontend/config/main.php и /backend/config/main.php (main и main-local) никаких настроек базы нет.

    Локально все работает. Но когда скопировал на сервер, то при попытке обращении к БД backend-отказывается работать и пишет ошибку (frontend работает отлично):

    Код (Text):
    1. Database Exception – yii\db\Exception
    2.  
    3. SQLSTATE[HY000] [2002] No such file or directory
    4. Caused by: PDOException
    5.  
    6. SQLSTATE[HY000] [2002] No such file or directory
    7.  
    8. in /homepages/9/d600525307/htdocs/website/vendor/yiisoft/yii2/db/Connection.php at line 600
    Из-за чего такое? Единственный момент: таблица к которой обращается frontend с подчеркиванием имеет вид: name_name, соответственно модель ActiveRecord для работы с ней называется NameName. Пробовал убирать подчеркивание в названии таблицы - все то же самое.
    Перерыл в гугле многие форумы и не нашем ответа на вопрос. Из-за чего такое может быть?
     
  2. denis01

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

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    Это точно весь текст ошибки? Проследи какие там данные и куда попадают для подключения.
    Отладку сделай.
     
  3. justquestion

    justquestion Новичок

    С нами с:
    17 янв 2014
    Сообщения:
    6
    Симпатии:
    0
    Вот весь код (не могу понять куда смотреть):

    upload_2016-9-2_16-51-39.png
    Database Exception – yii\db\Exception
    SQLSTATE[HY000] [2002] No such file or directory

    Caused by: PDOException
    SQLSTATE[HY000] [2002] No such file or directory
    in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Connection.php at line 600

    • 1. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Connection.phpat line 547




















      538539540541542543544545546547548549550551552553554555556
      $token = 'Opening DB connection: ' . $this->dsn;
      try {
      Yii::info($token, __METHOD__);
      Yii::beginProfile($token, __METHOD__);
      $this->pdo = $this->createPdoInstance();
      $this->initConnection();
      Yii::endProfile($token, __METHOD__);
      } catch (\PDOException $e) {
      Yii::endProfile($token, __METHOD__);
      throw new Exception($e->getMessage(), $e->errorInfo, (int) $e->getCode(), $e);
      }
      }

      /**
      * Closes the currently active DB connection.
      * It does nothing if the connection is already closed.
      */
      public function close()
      {

    • 2. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Connection.php at line 861– yii\db\Connection::eek:pen()
    • 3. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Connection.php at line 848– yii\db\Connection::getMasterPdo()
    • 4. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Schema.php at line 480– yii\db\Connection::getSlavePdo()
    • 5. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Connection.php at line 757– yii\db\Schema::quoteValue('ykytktyk')
    • 6. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Command.php at line 175– yii\db\Connection::quoteValue('ykytktyk')
    • 7. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Command.php at line 869– yii\db\Command::getRawSql()
    • 8. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Command.php at line 376– yii\db\Command::queryInternal('fetch', null)
    • 9. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/Query.php at line 247– yii\db\Command::queryOne()
    • 10. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/ActiveQuery.php at line 290– yii\db\Query::eek:ne(null)
    • 11. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/db/BaseActiveRecord.php at line 107– yii\db\ActiveQuery::eek:ne()
    • 12. in /homepages/9/d600525307/htdocs/ursmuinfo/backend/models/LoginForm.php at line 45– yii\db\BaseActiveRecord::findOne(['username' => 'ykytktyk'])













      394041424344454647484950
      }

      }

      public function getUser() {

      return UsersAdmin::findOne(['username'=>$this->username]);

      }


      }

    • 13. in /homepages/9/d600525307/htdocs/ursmuinfo/backend/models/LoginForm.php at line 31– backend\models\LoginForm::getUser()














      25262728293031323334353637
      }

      public function validatePassword($attribute, $params) {

      if (!$this->hasErrors()) {

      $user = $this->getUser();

      if (!$user || !$user->validatePassword($this->password)) {

      $this->addError($attribute, 'Пароль или пользователь введены неверно!');

      }

    • 14. backend\models\LoginForm::validatePassword('password', null)
    • 15. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/validators/InlineValidator.php at line 69– call_user_func([backend\models\LoginForm,'validatePassword'], 'password', null)
    • 16. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/validators/Validator.php at line 252–yii\validators\InlineValidator::validateAttribute(backend\models\LoginForm, 'password')
    • 17. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/base/Model.php at line 356–yii\validators\Validator::validateAttributes(backend\models\LoginForm, ['username', 'password'])
    • 18. in /homepages/9/d600525307/htdocs/ursmuinfo/backend/controllers/UserController.php at line 54– yii\base\Model::validate()














      48495051525354555657585960
      if ($model->load(Yii::$app->request->post())) {

      // $model->attributes = (int)Yii::$app->request->post('LoginForm');

      $rememberMe = Yii::$app->request->post('rememberMe');

      if ($model->validate()) {

      Yii::$app->user->login($model->getUser(), $rememberMe ? 3600*24*30 : 0);

      return $this->goHome();

      }

    • 19. backend\controllers\UserController::actionLogin()
    • 20. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/base/InlineAction.php at line 55– call_user_func_array([backend\controllers\UserController,'actionLogin'], [])
    • 21. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/base/Controller.php at line 154– yii\base\InlineAction::runWithParams([])
    • 22. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/base/Module.php at line 454– yii\base\Controller::runAction('login', [])
    • 23. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/web/Application.php at line 84– yii\base\Module::runAction('user/login', [])
    • 24. in /homepages/9/d600525307/htdocs/ursmuinfo/vendor/yiisoft/yii2/base/Application.php at line 375– yii\web\Application::handleRequest(yii\web\Request)
    • 25. in /homepages/9/d600525307/htdocs/ursmuinfo/backend/web/index.php at line 18– yii\base\Application::run()








      12131415161718
      require(__DIR__ . '/../../common/config/main-local.php'),
      require(__DIR__ . '/../config/main.php'),
      require(__DIR__ . '/../config/main-local.php')
      );

      $application = new yii\web\Application($config);
      $application->run();
    $_POST = [
    '_csrf' => 'LUJidWo5NER.Bk85AkBfPH1zLxgDc2ABQBszHgxBZ2l0EDYdLE9wDA==',
    'LoginForm' => [
    'username' => 'ykytktyk',
    'password' => 'tykyk',
    'rememberMe' => '0',
    ],
    'login-button' => '',
    ];

    $_COOKIE = [
    'PHPSESSID' => '6097d5204b4afcca9a8116ba0b98eb2d',
    '_csrf' => '43c25edad02d91830abb5e1321c9c537cff9ebaed2f4c44442f13c569d15cf49a:2:{i:0;s:5:"_csrf";i:1;s:32:"SD-LhykxP1MmiJTEmYQkfxS-YRThFvDH";}',
    ];

    $_SESSION = [
    '__flash' => [],
    ];
    upload_2016-9-2_16-51-39.png
    2016-09-02, 11:47:30

    Apache

    Yii Framework/2.0.8
     
    #3 justquestion, 2 сен 2016
    Последнее редактирование модератором: 2 сен 2016
  4. denis01

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

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    можно тут посмотреть, какую он dsn использует, там сервер, логин, пароли и т. д.