Windows へ MySQL をインストールして自分のパソコンで WordPress を動かす

最終更新日: 公開日: 2020年10月

xserver で blog を動かしている場合に,ローカルのパソコンで同様に動かすのに必要な MySQL のインストール方法を解説する.

検索しても,64bit 版のインストールを日本語で解説しているちょうどよいページが見つからなかったためである.
64bit版はインストーラーがついていないので自分で設定する必要があるが,必要最低限の設定だけすればよいので考えようによっては簡単ともいえる.

方針としては,MySQL は localhost で動作させて,設定ファイルだけ本番のDBサーバーを設定しているところを localhost に変更することで対応する.
(基本的に wp 以下は一度変更したら変更しないという前提で進める.)

ダウンロード

Windows 版の 64 bit 用の MySQL はここからダウンロードする.

https://downloads.mysql.com/archives/community/

ダウンロードしたファイルは 2020年10月23日現在では
mysql-5.7.31-winx64.zip
となる.

インストール

これを適当な場所に解凍してディレクトリ名を mysql に変更する.

ここでは
C:\app\db
に移動するものとして進める.
つまり,インストールしたルートディレクトリは
C:\app\db\mysql
となる.

ちなみに 5.7 のインストールの説明のリンク先は
https://dev.mysql.com/doc/refman/5.7/en/windows-install-archive.html
となる.

c:/app/db/mysql 以下にフォルダを作成.
data
logs
tmp

各種設定

MySQL 設定

c:\app\db\mysql
に移動.
c:\app\db\mysql\my.ini
を作成.

[mysqld]
basedir = c:/app/db/mysql
datadir = c:/app/db/mysql/data
tmpdir = c:/app/db/mysql/tmp
character_set_server = utf8

general_log = 1
general_log_file = c:/app/db/mysql/logs/general_query_all.log
log_error = c:/app/db/mysql/logs/mysqld_error.log
log_queries_not_using_indexes = 1
log_slow_admin_statements = 1
log_syslog = 0
log_timestamps = SYSTEM
long_query_time = 3
slow_query_log = 1
slow_query_log_file = D:/dev/mysql/logs/slow_query.log

MySQL 動作までの初期設定

管理者でコマンドプロンプトを実行

分からない方は下のリンクを参考に.
管理者権限でコマンドプロンプトを起動する

c:/app/db/mysql/bin
に移動.

データベース初期化(--initialize-insecure を使うのは root にパスワードを設定していないため)

mysqld --initialize-insecure --user=mysql

サービスへの登録

mysqld --install MySQL --defaults-file=C:\app\db\mysql\my.ini

「サービス」を開いて,「MySQL」を開始する.

ユーザーとデータベースの作成

#ローカルのパソコンなので,root のパスワードはあえて設定しない.(通常は設定する.)

上で開いたコマンドプロンプトでそのまま続ける.(管理者権限はなくてもよい.)

ルートで接続.パスワードを聞かれるが無視して Enter

mysql -u root -p

ユーザーを作成

CREATE USER ユーザ名@localhost;
grant all privileges on *.* to ユーザ名@localhost identified by 'xxxxxxx' with grant option;
flush privileges;

データベースを作成

create database データベース名;

データベースにデータを流し込む

既に本番のサーバーで記事を書いている場合はバックアップを取得.

mysql -u ユーザ名 -h localhost -p データベース名 < C:\backup\バックアップファイル.sql

WordPress 関連の変更

テーブルの変更

MySQL へ接続

mysql -u ユーザ名 -h localhost -p データベース名

WordPress で使っている変数を直接変更.これをしないとサーバーがローカルにならない.

update wp_options set option_value = 'http://localhost' where option_name = 'home';
update wp_options set option_value = 'http://localhost/wp' where option_name = 'siteurl';

wp-config.php の変更

接続先ホストの変更と動作しない時にデバッグ用に表示を変更する.

define('DB_HOST', 'localhost');
define('WP_DEBUG', true);

php の設定

php をインストールしていない人は
Windows への apache インストール方法
PHP のインストールへ.

そのままだと以下のエラーが出る.

Fatal error: Uncaught Error: Call to undefined function mysql_connect() in

mysqli の拡張を読み込む必要がある.

php.ini の変更(最低限の変更箇所のみ)

extension_dir = "c:/php7/ext/"
extension=mysqli
extension=curl
extension=openssl
max_execution_time = 300

curl を使えるようにしたら,

PHP Warning:  PHP Startup: Unable to load dynamic library 'curl'

というエラーが出た場合,どうやら apache の方が古くて整合性がとれずエラーになるらしい.
php の下にある以下のファイルを

libcrypto-1_1-x64.dll
libssh2.dll
libssl-1_1-x64.dll

apache の bin にコピーすることでエラーが出ないようになる.

参考)
PHP Warning: PHP Startup: Unable to load dynamic library php_curl.dll impossibile find

apache の設定

httpd.conf ファイル

LoadModule rewrite_module modules/mod_rewrite.so

.htaccess で wordpress が使う rewrite モジュールを使えるようにする.
自分で設定した apache を使っている場合は忘れないように気を付ける.

ちなみに .htaccess にこんな記述をしていると上記の rewriteモジュールが動作していなくても一見正常に動作しているように見えるので気を付けたほうがよい.以下のような記述は避けたほうが無難.

ErrorDocument 404 /

その他細かい変更

WordPress で変更・確認するファイル

  • .htaccess
  • タグマネージャを外す.
  • インクルードしている場合のパスの変更
 タグ: , , ,  
 

Contact

ご質問等ありましたら,下のフォームからお願いします.

 
   
Apache Chrome Chrome 拡張機能 CSS Git Google HTML javascript PageSpeed Insights PHP python SEO Windows WordPress xyzzy Youtube z-index アナリティクス ウェビナー エディタ サーチコンソール サーバー管理 スライダー セミナー タグマネージャー テレワーク デザイン データベース ネットワーク フォーム ページ閲覧解析 マーケティング リッチリザルト レスポンシブ レスポンシブ対応 ログ解析 ローカル環境構築 営業 実装
contact
Pagetop