LoginSignup
3
2

More than 3 years have passed since last update.

XamppのMySQLとローカルのMySQLを共存させるためにしたこと

Last updated at Posted at 2020-08-29

はじめに

タイトル通りでXamppのMySQLとローカルのMySQLの共存に困ったのでメモです。

※Windows環境です

前提


背景として仕事でXamppのMySQLを使うため設定を弄れない!!
→好きに設定を弄りたいのでローカルにMySQLをいれよう!と思ったのが発端です。

以下がXamppのMySQLの設定(弄れない)

>status
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8

実はこの設定だとWindowsのターミナルがutf8で入力されない(cp932)ため日本語をINSERTできません。

参考:mysqlで日本語を入力するとテーブル内で文字が表示されない

ローカルにとりあえずMySQLをインストール


仕事で使う設定を弄るわけにはいかないので、別環境を構築します。

公式からMySQLをインストールしてセットアップ。

サービス作成

C:\mysql-5.6.24-winx64\bin > mysqld -install
Service successfully installed.

起動
$ net start mysql
$ mysql -v
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.6.24 MySQL Community Server (GPL)
$ mysql -u root // ログイン可能

>status
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    cp932
Conn.  characterset:    cp932

→これで日本語もターミナルからインサートできるようになりました。

ただし、このままだとXamppが起動できなくなる


👇エラー内容

ためしにportを変えてみるも直らず。。。

どうやらエラーにも書いてあるようにサービスが邪魔している模様。

サービスの名前を変えて作り直す


サービスの確認 参考

👆net startするとここが実行中になります。

コマンドプロンプト(管理者権限)でサービスを削除する。

>sc delete MySQL
[SC] DeleteService SUCCESS

サービスを作り直す
>mysqld -install MySQL56

注意:サービス作る際、システム環境変数は以下のようにXamppではなくローカル側にすること。


C:\mysql-5.6.24-winx64\bin

起動
>net start mysql56
MySQL56 サービスを開始します.
MySQL56 サービスは正常に開始されました。


同時にMySQLを起動する(ポート番号を変えればOK)


Dockerでポート3306
$ docker-compose up -d mysql nginx
Recreating laradock_docker-in-docker_1 ... done
Recreating laradock_mysql_1 ... done
Recreating laradock_workspace_1 ... done
Recreating laradock_php-fpm_1 ... done
Recreating laradock_nginx_1 ... done

ローカルは3307

※my.iniのportを3307にするだけ。

>net start mysql56
MySQL56 サービスを開始します.
MySQL56 サービスは正常に開始されました。

Xamppは3308

※xampp配下のmy.iniの2か所を修正

[client]

password       = your_password

port            = 3308
socket          = "C:/xampp/mysql/mysql.sock"

Here follows entries for some specific programs

The MySQL server

[mysqld]
port= 3308

確認

👆同時に3つ起動できた◎

※Xamppのphpmyadminが使えなくってしまったので、GUIを使いたい際はWorkbenchで確認する予定です。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2