sql >> データベース >  >> RDS >> Mysql

安全なPropel接続、リモートMySQL

    ランタイム構成ファイルの例を次に示します。

    $serviceContainer = Propel::getServiceContainer();
    $serviceContainer->setAdapterClass($db_name, 'mysql');
    $manager = new ConnectionManagerSingle();
    $manager->setConfiguration(array(
        'dsn' => 'mysql:host=' . $db_host . ';dbname=' . $db_name,
        'user' => $db_username,
        'password' => $db_password,
        'options' => [
            PDO::MYSQL_ATTR_SSL_KEY => '/etc/mysql/client-key.pem',
            PDO::MYSQL_ATTR_SSL_CERT => '/etc/mysql/client-cert.pem',
            PDO::MYSQL_ATTR_SSL_CA => '/etc/mysql/ca-cert.pem']
    ));
    $serviceContainer->setConnectionManager('mydb', $manager);
    

    そして、これがpropel設定ファイルの例です:

    propel:
        database:
            connections:
                devServer:
                    adapter: mysql
                    classname: Propel\Runtime\Connection\DebugPDO
                    dsn: mysql:host=myhost;dbname=mydb
                    user: jomedia
                    password: mypassword
                    options:
                         1010 : /etc/mysql-certs/client-key.pem
                         1011 : /etc/mysql-certs/client-cert.pem
                         1012 : /etc/mysql-certs/ca-cert.pem
    


    1. ステータスの更新と新しいレコードの挿入を処理するためのCSVファイルのアップロード

    2. フィールド値に基づいて一意の制約を追加します

    3. MySQL Auto Increment?

    4. レール内の列タイプをより長い文字列に変更する