🤖
さくらレンタルサーバ上のDrupalを更新する
概要
さくらレンタルサーバ上のDrupalを更新する機会がありましたので、手順のメモです。
まず、以下のサイトを参考にしました。
ただし、以下のような記載がありました。
Use Composer to manage Drupal dependencies. Drush 9 and newer no longer supports updating Drupal.
そこで、以下も参考にさせていただきました。
手順
Drupalをダウンロードしたディレクトリに移動
cd ~/www/{project_name}
準備(インストール済みの場合は不要)
composer
composer.phar
というファイルしかない場合、composer
を作成する。(mv
でもよいかと思います。)
cp composer.phar composer
drush
composer require --dev drush/drush
メンテナンスモードの有効化
./vendor/bin/drush state-set system.maintenance_mode 1
キャッシュのクリア
./vendor/bin/drush cr
バックアップ
バックアップ用のディレクトリの作成
mkdir ~/bk
sqlのバックアップ
./vendor/bin/drush sql:dump --extra-dump=--no-tablespaces > ~/bk/dump.sql
参考
以下のように、--extra-dump=--no-tablespaces
を指定しないと、エラーがメッセージが表示されました。
./vendor/bin/drush sql:dump > ~/bk/dump.sql
> mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces
ファイルのバックアップ
tar cvzf ~/bk/web.zip .
更新
事前確認
composer update "drupal/core-*" --with-all-dependencies --dry-run
更新
composer update "drupal/core-*" --with-all-dependencies
コントリビュートモジュールのアップデート
composer update
データベースの更新
./vendor/bin/drush updatedb
メンテナンスモードの無効化
./vendor/bin/drush state-set system.maintenance_mode 0
キャッシュのクリア
./vendor/bin/drush cr
更新後にキャッシュのクリアを行わないと、表示が崩れることがありました。
まとめ
間違った手順や不要な手順が含まれているかもしれませんが、参考になりましたら幸いです。
Discussion