💡

mixhostのdbにpythonからアクセスする

2021/10/07に公開
  • mixhostはmysql系のmariaDBなので、とりあえずpip install mysql-connector-pythonする
  • python3系を使いたいのでそれを事前にインストールしておいて、そこからpip3使ってインストールした

※事前にcPanelからMySQL® データベース ウィザードでデータベース作っておく。
このときにpasswordやuser名、データベース名を決めるので控えておく

ざっくりとしたコード

import mysql.connector as mydb

conn = mydb.connect(
    host='localhost',
    user='xxx_test',
    password='password',
    database='xxx_test_db'
)

cur = conn.cursor()

table = 'test_table'
cur.execute(f"DROP TABLE IF EXISTS {table}")
cur.execute(
    f"""
    CREATE TABLE IF NOT EXISTS {table} (
    `id` int auto_increment primary key,
    `name` varchar(50) not null,
    `price` int(11) not null
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
    """
)

cur.close()
conn.close()

※カーソルという概念が抽象的すぎてよくわからないけど、厳密に定義しようとしたら沼っぽいので、まあなんかしら操作するための何かぐらいの理解度

  • このファイルを任意のディレクトリにファイルマネージャーあたりでアップロードして実行する
  • 実行方法とかは下記記事を読むと良い
  • 実行したら多分テーブルが作成される

備考

  • mixhostのhost名はlocalhostで固定
  • xxxにはmixhostのユーザー名が入る
  • closeはとりあえず使ったら閉じるの精神(DBに接続が残り続けたりしたら面倒なので)

Discussion