【Django】公開環境でMySQLとの連携

 今回、公開環境でMySQLと連携してみたので投稿します。

 MySQLにrootユーザーでアクセスします。


    #ターミナル
    sudo mysql -u root -p





 hogehogeという名前で新しいユーザーを作成し、パスワードをfugafugaで設定します。


    #ターミナル
    CREATE USER 'hogehoge'@'localhost' IDENTIFIED BY 'fugafuga';





 必要な情報にアクセスできるようにします。


    #ターミナル
    GRANT ALL PRIVILEGES ON * . * TO 'hogehoge'@'localhost';





 新しいユーザーに設定する権限を確定したら、必ずすべての権限をリロードします。


    #ターミナル
    FLUSH PRIVILEGES;





 Ctrl+zで抜けて mysql -u hogehoge -p を実行。パスワードを聞かれますのでfugafugaと入力し実行するとMySQL(MariaDB)に接続されます。


    #ターミナル
    mysql -u hogehoge -p





 Ctrl+zでMySQLから抜け、mysqlclientをインストールします。すでに入っている場合は必要ありません。


    #ターミナル
    #Ctrl+zでMySQLを抜ける
    pip install mysqlclient





 piyopiyoという名前の新しいデータベースを作成します。


    #ターミナル
    mysql -u hogehoge -p
    CREATE DATABASE piyopiyo;





 settings.pyを修正します。


    #プロジェクト名/settings.py
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'piyopiyo',
            'USER': 'hogehoge',
            'PASSWORD': 'fugafuga',
            'PORT': '3306',
        }
    }





 マイグレーションを実行します。


    #ターミナル
    python3 manage.py makemigrations
    python3 manage.py migrate





 ターミナルでMySQLに接続しデータベースを確認します。


    #ターミナル
    mysql -u hogehoge -p
    SHOW DATABASES;





 以上でMySQLとの連携ができたのではないかと思われます。





 分かりにくい部分などありましたらお知らせ頂けると助かります。お知らせいただいた内容は公開されることはありません。どの記事から投稿されたかは分かるようにしています。

お名前:

メールアドレス: