久しぶりにSQLAlchemyを使って、LocalのMySQLに接続する処理を実行したら以下のようなエラー。
sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (2002, "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)") (Background on this error at: http://sqlalche.me/e/e3q8) ERROR: exit status 1
「何かな🤔?」と一瞬悩んだけど、「Can't connect to local MySQL server」って言われているので、「LocalのMySQLが立ち上がってないのでは?」と思い、立ち上げてみる。
$ mysql.server start ERROR! MySQL server process #61735 is not running! Starting MySQL .. SUCCESS!
LocalのMySQLを立ち上げた後に、改めて処理実行してみるも、ダメ。
「/tmp/mysql.sock」がないなら、作ればいいじゃないということで、作ってみる。
$ sudo touch /tmp/mysql.sock
もう一度、MySQLを起動してMySQLにつなぎに行ってみる。
$ mysql.server start ERROR! MySQL server process #61735 is not running! Starting MySQL .. SUCCESS!
これでMySQLに繋げました!
$ python test.py 処理開始... 処理完了...!
MySQLに接続するプログラムも動きました。
久しぶりにLocalのMySQLに接続するときは、MySQLのサーバー立ち上がっているか、「/tmp/mysql.sock」ファイルが存在するか確認すること。
学んだ。