カテゴリー
SQL

Workbench 起動しない

開発環境作る際にハマったのでメモ

バージョン:MySQL Workbench 8.0.19

windows10 Home 64bit

windows10でインストール後起動しない

インストール後にアイコンをクリックしても起動しない

アンインストールして入れ直しもダメ

ネットで検索しても解決にならない

必殺技!レバフレンズ(^_-)-☆

現場には以前一回お昼行ったことのある「レバテックフレンド」2人がいるんです‼

作業しているパソコンを確認!

一人目、、、Mac

二人目、、、「Windows」(/・ω・)/

よし!お昼誘って聞いてみよう!

エンジニア同士の食事は楽しい(*´▽`*)

午後の作業に入り、15分ぐらいしたらコバッチが教えに来てくれた(*ノωノ)

Windowsにインストールする際は、〇〇〇が必要

このページ見て―!!
全部英語、、、
これ入れないと動かないってー(/・ω・)/

さらっと英語できる人なんだなと羨ましく思った瞬間でした(;・∀・)

これを調べれば他にも対応できる

workbenchダウンロードページ

workbenchダウンロードページ01

英語苦手でもインフォメーションは確認すべき

workbenchダウンロードページ02

危険!デフォルトの文字コード

mwbファイルが開けなくなる

MySQLの文字コードちゃんと「utf8-general-ci」にしましょう。

多分これで mwbファイル が開けるようになった(;^ω^)

macで起動しなくなった

2020/07/06
いつも起動していたのにオプションバーしか表示されなくなった。

↑ この表示のみ

Quit MySQl Workbenchで停止し、開き直せば問題なく起動できるようになった。

カテゴリー
SQL システム開発技術

【SQL】MySQLメモ

初回設定

日本語を使用する際は、文字コードを「utf8-general-ci」へ設定しましょう。
XAMPPのPHPMyadmin?初期値が文字化けするのになっているΣ(・ω・ノ)ノ

【MySQL】コマンド

ターミナルで実行するコマンド

dump:バックアップ

STGサーバーと本番サーバーは、バッチで自動バックアップしている会社さんは多いんですけど、開発環境は、バックアップしていない会社もありますので一週間に一回ぐらい自分でバックアップしておきましょう(^_-)-☆

Windowsコマンドプロンプトでの区切り文字は「\」です。

  • データベース全体
  mysqldump -u ユーザー名@ホスト名 -p -h ホスト名 データベース名 < 保存場所/ファイル名
  • 単体テーブル
  mysqldump -u ユーザー名@ホスト名 -p -h ホスト名 データベース名 テーブル名 < 保存場所/ファイル名
  • 複数テーブル
  mysql -u ユーザー名@ホスト名 -p -h ホスト名 データベース名 テーブル名 テーブル名 < 保存場所/ファイル名

dump:復元

  • dumpデータの読込み
  mysql -u ユーザー名@ホスト名 -p -h ホスト名 データベース名 < 保存場所/読込みファイル名

CRUD:create,read,update,delete

SQLの基本操作

【DROP TABLE】テーブル削除

※全テーブル削除は大変危険な為、コマンドはエディタで作成してから使いましょう。

  • 全テーブル削除

  DROP TABLE

  • 指定のテーブル削除

  DROP TABLE テーブル名, テーブル名

【 INSERT 】レコード作成

INSERT

INSERT INTO User (name, age) VALUE ('kenshi', 30);

BULK INSERT

BULK INSERT User VALUES ('sato', 32),  ('kenshi', 30),  ('yoshi', 24)  ; 

INSERTとBULK INSERTの速度チェック

今回は、データ新規登録時の実行速度を検証する。

検証内容

  • WindowsCommandPrompt(CMD)

   CMDからMySQLを起動し、SQL文を直接実行

  • ファイル読込み

   SQL文を記述したファイルをCMDから実行

  • 検証データ

   マスタ系10000件(9項目、ID,更新日,作成日…etc)で検証

検証結果

登録方法CMDファイル読込み
INSERT20分16分
BULK INSERT2分5秒

※CMDは、Windowsコマンドプロンプトから、MySQLを起動しQueryをペーストし実行

BULK INSERTをファイルに記述し、MySQLへ流し込む方法が早いことがわかった。

プレースホルダのエラー

2018/12時点
MySQLのプレースホルダの上限が「65535」個となっている。

7項目の10000データをPHPよりインサートした際に、出現したエラー

良い解決策が見つからず、1000行単位で分割し登録する方法にした。

便利なやつ

タイトルは気にしないでくれ!!

オートインクリメントのリセット

テストデータ作成している時に使う事がある。
・サンプルデータを削除
・テストデータを作成したり削除したりする時

ALTER TABLE `tablename` auto_increment = 1;

1を変更して1000にして、開発環境とSTGでIDを意図的に被らせないで作ったりできます。

外部制約を外す

これね!ミスったデータ消すのに本当面倒ですよね、、、

一旦外部キーを無効化

SET FOREIGN_KEY_CHECKS = 0

削除した後に戻す。

SET FOREIGN_KEY_CHECKS = 1

以上٩(•̤̀ᵕ•̤́๑)ᵒᵏᵎᵎᵎᵎ

テーブルの文字コード変更

テーブル定義の文字コード変更

ALTER TABLE 「テーブル名」 CHARSET = utf8mb4;

既存のカラムの文字コード変更

ALTER TABLE 「テーブル名」 CONVERT TO CHARSET utf8mb4