sql >> Database teknologi >  >> RDS >> Mysql

Tilslutning til AWS RDS via PDO

Har fået koden til at virke nu, selvom jeg ret frustrerende nok aldrig kom til bunds i, hvorfor den ikke virkede i første omgang! Jeg formoder, at det var noget at gøre med ikke at opfange portnummeret ordentligt - måske en tastefejl et eller andet sted, der 'ved et uheld' blev rettet (i stedet for bevidst), da jeg prøvede tingene af. Denne kode virker nu (kun for MySQL):

      $dsn = null;
      $options = null;
      $this->host = SYSTEM_CONFIG["database"]["host"];
      $this->type = SYSTEM_CONFIG["database"]["type"];
      $this->name = SYSTEM_CONFIG["database"]["name"];
      $this->user = SYSTEM_CONFIG["database"]["user"];
      $this->pass = SYSTEM_CONFIG["database"]["pass"];
      $this->port = SYSTEM_CONFIG["database"]["port"];

      switch ($this->type) {
         case "SQLSRV":
            // Other untested code...
            break;
         default: 
            $dsn = "mysql:host={$this->host};port={$this->port};dbname={$this->name};charset=utf8";
            $options = [
               PDO::ATTR_PERSISTENT => false,
               PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
               PDO::ATTR_EMULATE_PREPARES => false,
               PDO::ATTR_STRINGIFY_FETCHES => false
            ];
      }
      try {
         $this->pdo = new PDO($dsn, $this->user, $this->pass, $options);
      } catch (PDOException $e) {
         $this->logError($e);
      } catch (Exception $e) {
         $this->logError($e);
      }



  1. Gruppér ved at forårsage en enorm stigning i forespørgsels eksekveringstid

  2. Laravel 4:brugerdefineret login og tjek adgangskode

  3. Bestil efter "updated_at" og "created_at", selvom de er NULL

  4. Sådan klynges Odoo 12 med PostgreSQL-streamingreplikering for høj tilgængelighed