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

MySQLを使用するようにDjangoを設定する

    MySQLサポート 追加は簡単です。 DATABASES 辞書には、次のようなエントリがあります:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql', 
            'NAME': 'DB_NAME',
            'USER': 'DB_USER',
            'PASSWORD': 'DB_PASSWORD',
            'HOST': 'localhost',   # Or an IP Address that your DB is hosted on
            'PORT': '3306',
        }
    }
    

    MySQL オプションファイルを利用するオプションもあります 、Django1.7以降。これは、DATABASESを設定することで実現できます。 そのような配列:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'OPTIONS': {
                'read_default_file': '/path/to/my.cnf',
            },
        }
    }
    

    /path/to/my.cnfも作成する必要があります 上から同様の設定でファイル

    [client]
    database = DB_NAME
    host = localhost
    user = DB_USER
    password = DB_PASSWORD
    default-character-set = utf8
    

    Django 1.7で接続するこの新しい方法では、接続が確立されている順序を知ることが重要です。

    1. OPTIONS.
    2. NAME, USER, PASSWORD, HOST, PORT
    3. MySQL option files.
    

    つまり、OPTIONSでデータベースの名前を設定すると、これはNAMEよりも優先され、MySQLオプションファイルのすべてが上書きされます。

    ローカルマシンでアプリケーションをテストするだけの場合は、

    を使用できます。
    python manage.py runserver
    

    ip:portを追加する 引数を使用すると、自分以外のマシンが開発アプリケーションにアクセスできます。アプリケーションをデプロイする準備ができたら、デプロイに関する章を参照することをお勧めします。 Django djangobook

    Mysqlのデフォルトの文字セットは多くの場合utf-8ではないため、必ず次のSQLを使用してデータベースを作成してください。

    CREATE DATABASE mydatabase CHARACTER SET utf8 COLLATE utf8_bin
    

    OracleのMySQLコネクタ あなたのENGINE 行は次のようになります:

    'ENGINE': 'mysql.connector.django',
    

    最初にOSにmysqlをインストールする必要があることに注意してください。

    brew install mysql (MacOS)
    

    また、Python 3のmysqlクライアントパッケージが変更されました(MySQL-Client Pythonでのみ機能します2)

    pip3 install mysqlclient
    


    1. VARCHARからINTへのキャスト-MySQL

    2. データベースメールアカウントをプロファイルに追加する(T-SQL)

    3. ADO.NETプロバイダーの「Oracle.ManagedDataAccess.Client」がマシンまたはアプリケーションの構成ファイルに登録されていないか、ロードできませんでした

    4. トップ一般的なMySQLクエリ