Часто используемая мной информация в едином месте

Выпишу её сюда для своего удобства, чтобы всегда была под рукой онлайн.

Архивация сайта

Тестовые адреса для некоторых стран

Устранение сбоя «Can’t create directory ‘generated/code’»

chmod -R -v 777 generated

Удаление кэша

bin/magento cache:clean

или

cd var/log 
rm -rf {,.[!.],..?}* ../cache ../page_cache ../view_preprocessed ../../generated/* ../generation ../di ../.cachestates.json

Удаление кэша + автосоздаваемых файлов PHP + конечных браузерных файлов

find var/* -type f -or -type d | grep -v 'session' | xargs rm -rf && 
rm -rf pub/static/* generated/*

Убийство PHP в Windows

taskkill /F /IM php.exe 2>/dev/null

Перезапуск Apache

net stop "Apache2.4" && net start "Apache2.4"

Создание конечных браузерных файлов

bin/magento setup:static-content:deploy -f

Для конкретной локали, области кода и оформительской темы:

bin/magento setup:static-content:deploy -f pt_BR --area frontend --theme Magento/luma

или

rm -rf pub/static/* && bin/magento setup:static-content:deploy -f pt_BR --area frontend --theme Magento/luma

Перезапуск Nginx

taskkill /F /IM nginx.exe 2>/dev/null && 
./nginx

Обновление программного кода модулей из внешних репозиториев

composer self-update &&
composer update --prefer-source

Обновление модулей в Magento

Логическое продолжение предыдущей команды: Magento узнаёт об изменениях версий модулей, регистрирует/удаляет их, меняет схему БД.

bin/magento cache:clean && bin/magento setup:upgrade && rm -rf generated var/generation/*

Обновление сайта

rm -rf var/cache var/log && git pull && sudo /etc/init.d/php5-fpm restart

Компиляция кода PHP

bin/magento setup:di:compile

Создание резервной копии базы данных

mysqldump имя_БД > $(date '+%Y-%m-%d-%H-%M').sql
mysqldump \
    --default-character-set=utf8 \
    --host=<value> \
    --password=<value> \
    --user=<value> \
    <database> | gzip > ~/_backup/$(date '+%Y-%m-%d-%H-%M').sql.gz

Дамп структуры базы данных Magento для сравнения и отладки

mysqldump --no-data <database> | sed 's/ AUTO_INCREMENT=[0-9]*\b//g' > <database>.sql

Дамп настроек Magento для сравнения и отладки

mysqldump \
    --complete-insert \
    --skip-compact \
    --skip-extended-insert \
    --where="1 ORDER BY path" \
    <database> core_config_data > core_config_data.sql

Восстановление базы данных из резервной копии

mysql -e "DROP DATABASE имя_БД; CREATE DATABASE имя_БД;" && mysql имя_БД < имя_файла.sql

Удаление DEFINER из дампа базы данных

grep DEFINER имя_файла.sql
sed -i 's/DEFINER=`<name>`@`<host>`//g' имя_файла.sql

Выполнение запланированных задач

bin/magento cron:run --bootstrap=standaloneProcessStarted=1

Перестройка расчётных таблиц

UPDATE indexer_state SET status = 'valid';
bin/magento indexer:reindex

Валидация файлов XML в IntelliJ IDEA

bin/magento dev:urn-catalog:generate ../.idea/01/.idea/misc.xml && \
bin/magento dev:urn-catalog:generate ../.idea/03/.idea/misc.xml && \
bin/magento dev:urn-catalog:generate ../.idea/04/.idea/misc.xml && \
bin/magento dev:urn-catalog:generate ../.idea/05/.idea/misc.xml

Отмена изменений файлов

git checkout -- composer.lock
git checkout -- composer.json

Узнаём, когда файл был удалён

git log -1 -- app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Attributes.php

Узнаём всю историю изменений файла

git log -- app/code/Magento/Catalog/Block/Adminhtml/Category/Tab/Attributes.php

Узнаём внешний адрес IP своего сервера

wget -qO- http://ipecho.net/plain ; echo

Узнаём значение опции интерпретатора PHP

php -i | grep <option name>

Создание учётной записи администратора с командной строки

chmod u+x bin/magento && 
bin/magento admin:user:create --admin-user="Dmitrii Fediuk" --admin-password="Za1112Uj" --admin-email="admin@mage2.pro" --admin-firstname="Dmitrii" --admin-lastname="Fediuk"

Изменение пароля покупателя

Узнаём папку установки Magento 2

find / -name "CHANGELOG.md" -print 2>/dev/null

Узнаём параметры подключения к базе данных

grep -E "host|dbname|username|password|table_prefix" app/etc/env.php

Узнаём корневой URL магазина

mysql --host=<host> --user=<user> --password=<password> -D <database> -e "SELECT value FROM core_config_data WHERE path IN ('web/secure/base_url', 'web/unsecure/base_url');"

Узнаём корневой URL административной части

grep "frontName" app/etc/env.php

Узнаём расположение главного настроечного файла веб-сервера Apache (httpd.conf)

find / -name "httpd.conf" -print 2>/dev/null

Узнаём используемый веб-сервер

wget -SO- <website url> 2>&1 >/dev/null | grep "Server"

Увеличиваем продолжительность сессий

Быстрая компиляция Less для конкретного модуля

Исправляем настройки доступа к файлам в домашней папке

sudo chown ${USER:=$(/usr/bin/id -run)}:$USER ~

Удаление кэша Composer’a

composer clear-cache

Отключение / включение стороннего модуля

bin/magento module:disable <module name> && bin/magento setup:upgrade

Русификация

Измеряет полноту перевода:

bin/magento dfr:translation:state

Пополняет русскоязычные словари новыми фразами из ядра (эта команда предназначена только для разработчиков):

bin/magento dfr:translation:update

Настройки Magento для разработки

Дополнительные настройки Magento ≥ 2.2 для демонстрации клиентам их сайта на моем сервере

Поиск паролей Composer’a

find / -name "auth.json" -print 2>/dev/null
find ~ -name "auth.json" -print 2>/dev/null

Читаем зашифрованное значение из БД

wget https://files.magerun.net/n98-magerun2.phar
php ./n98-magerun2.phar config:store:get --decrypt <path>

Например, так читаем параметры аутентификации в PayPal:

php ./n98-magerun2.phar config:store:get --decrypt paypal/wpp/api_username
php ./n98-magerun2.phar config:store:get --decrypt paypal/wpp/api_password
php ./n98-magerun2.phar config:store:get --decrypt paypal/wpp/api_signature

magento.stackexchange.com/a/233078

Поиск конфликтующих модулей

bin/magento maintenance:enable
composer require magefan/module-conflict-detector:*
bin/magento setup:upgrade
rm -rf var/di var/generation generated/code && bin/magento setup:di:compile
rm -rf pub/static/* && bin/magento setup:static-content:deploy en_US <additional locales, e.g.: de_DE>
bin/magento maintenance:disable

Определяем операционную систему

cat /etc/*-release

Расшифровка пароля из настроек Magento

\Magento\Framework\App\ObjectManager::getInstance()
    ->get(\Magento\Framework\Encryption\EncryptorInterface::class)
	    ->decrypt('<value>');

Как в разы уменьшить размер базы данных

Какие модули я использую почти в каждом проекте?

Находим самые большие таблицы

SELECT table_name, table_rows, round(((data_length + index_length) / 1024 / 1024),2) "Size in MB"
FROM information_schema.tables
WHERE "<database name>" = table_schema
ORDER BY (data_length + index_length) DESC;

Сокращаем размер БД в Magento 1

SET FOREIGN_KEY_CHECKS=0;
TRUNCATE dataflow_batch_import;
DELETE FROM index_event;
TRUNCATE index_process_event;
TRUNCATE core_session;
TRUNCATE dataflow_batch_export;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE report_compared_product_index;
TRUNCATE report_event;
TRUNCATE report_viewed_product_aggregated_daily;
TRUNCATE report_viewed_product_index;
SET FOREIGN_KEY_CHECKS=1;

Отключаем предустановленный мусор

bin/magento module:disable Dotdigitalgroup_Chat
bin/magento module:disable Dotdigitalgroup_Email
bin/magento module:disable Vertex_AddressValidation
bin/magento module:disable Vertex_Tax
bin/magento module:disable Temando_Shipping
bin/magento module:disable Yotpo_Yotpo
bin/magento module:disable Magento_Signifyd
bin/magento module:disable Magento_NewRelicReporting
DELETE FROM `eav_attribute` WHERE `source_model` LIKE '%Temando%'

Добавил бы еще суда установку М2 из командной строки( иногда подвисает устрановка из браузера)
php bin/magento setup:install --base-url=“http:///” --db-host=“mysql” --db-name=“magento2” --db-user=“magento2” --db-password=“magento2” --admin-firstname=“Magento” --admin-lastname=“User” --admin-email="example@example.com" --admin-user=“MagentoAdmin” --admin-password=“Magento@#123K” --language=“en_US” --currency=“USD” --timezone=“America/Chicago” --use-rewrites=“1”
//
и возможно стоит добавить суда небольшой гайд по “netz98 magerun CLI tools for Magento 2”, штука здорово облeгчает жизнь)