MysqlでDB作成時に、エラーが出てデータベース作成ができない ERROR 1006 Can’t create database (error no2)

▼この記事をSNSでシェアする▼

スポンサーリンク

スポンサーリンク

事象

Mac OSでMysql WorkBenchを使ってデータベースを作成しようとしたら、ERROR 1006 error no2が出て、データベース作成ができなかった。

rootユーザーでパスワード認証ありで実行しています

キャラクタセットが悪いのか?と思いutf-8などで試しましたがかわらず・・・

utf8_general_clを選択してくださいみたいな記事があったので試したがうまくいかず

環境・前提

  • mac OS 10.13.6
  • mysql ver 8.0.15 osx10.13 on x86_64 (Homebrew)

→brew install mysqlでインストールしている

  • mysql_secure_installationでrootのパスワードの設定等を行なった状態
  • 作成済みのDB(スキーマ)はsysのみ

原因調査

まずはMysql の公式ホームページでバージョンが同じページのエラーコードの説明を見てみる

エラー: 1006 SQLSTATE: HY000 (ER_CANT_CREATE_DB)

メッセージ: データベース ‘%s’ を作成できません (エラー番号: %d)

https://dev.mysql.com/doc/refman/8.0/en/server-error-reference.html

ver 5.6なら日本語で読めます

https://dev.mysql.com/doc/refman/5.6/ja/error-messages-server.html

santaka
ぱっとしねえ・・・

再びネットで調べてみると、パーミッションが不正なのでは?

/var/lib/mysqlを777にしよう的な提案がちらほら

→error no13のときはそのようになるそうだ(確証はない)

https://help.navicat.com/hc/ja/articles/217791158-1006-Can-t-create-database-xxx-errno-13-

あとはこういうのも多かった

chown -R mysql:mysql /usr/local/mysql/data

chown -R mysql.mysql /var/lib/mysql

などという記事をみたが、インストールしてから何もそのへんはいじってないし、デフォルトでひっかかるとは思えない・・・

というか上記ディレクトリをls- l  で確認して見たが存在していなかった・・・

またググっていると、stack over flowのあるページに到達

https://stackoverflow.com/questions/39045341/mysql-error-1006-hy000-cant-create-database-errno-26469527

解決策

結果この提案がおそらく正しく?

PC再起動→コマンドラインからmysql.server restartで解決しました

テレビ調子悪いから、一回オフにして起動しよう。

おっしゃ治ったーみたいな感じです。

なんとも根拠の薄い解決策で申し訳ないです。(エンジニア失格だな〜)

想定される原因

このままだと説得力無いので、なんとなくネットをみていてこれだろうと思った原因を残しておく(まちがっていたらすみません)

error no2の場合パーミッションは関係なさそう

再起動で変わってないだろうし・・・

どうやらネットでいろんなコラムを見ていると、Mysqlサーバー上で新しいDB用の領域に割り当てられる領域がないという説が有力

以下の対策でもうまくいったのかな

  • mysql.server restartでMysqlサーバープロセス再起動

スポンサーリンク


関連記事

▼この記事をSNSでシェアする▼

フォローする

メニュー・主な記事カテゴリ

おすすめ特集!




「ゆとり鳥日記」について
ITを中心に関心の赴くままに好きなように書いていく雑記ブログ!管理人が二人います。
◆フクロウ(19卒就活生)
◆トンビ(社会人1年目SE)

詳しいプロフィール
お仕事の依頼・ご要望

ゆとり鳥日記をBTCで応援する