wp db
Основные операции с БД, используя учетные данные из wp-config.php.
C БД также работает wp search replace.
Смотрите также: wpdb{}
Список команды
| Список команд | Описание |
|---|---|
| wp db create | Создает новую базу данных. |
| wp db drop | Удаляет существующую базу данных. |
| wp db reset | Удаляет все таблицы из базы данных. |
| wp db clean | Удаляет из базы данных все таблицы с префиксом $table_prefix. |
| wp db check | Проверяет текущее состояние базы данных. |
| wp db optimize | Оптимизирует базу данных. |
| wp db repair | Восстанавливает базу данных (Repairs). |
| wp db cli | Открывает консоль MySQL (mysql>), используя учетные данные из wp-config.php. |
| wp db query | Выполняет запрос SQL к базе данных. |
| wp db export | Экспортирует базу данных (создает дамп) в файл или в STDOUT (стандартный вывод). |
| wp db import | Импортирует базу данных из файла или STDIN (стандартного ввода). |
| wp db tables | Отображает таблицы базы данных. По умолчанию в список попадают все таблицы, зарегистрированные в обработчике базы данных $wpdb. |
| wp db size | Отображает имя и размер базы данных. |
| wp db prefix | Отображает префикс таблицы базы данных ($table_prefix). |
| wp db search | Находит строку в базе данных. |
| wp db columns | Отображает информацию об указанной таблице. |
Примеры
# Create a new database. $ wp db create Success: Database created. # Drop an existing database. $ wp db drop --yes Success: Database dropped. # Reset the current database. $ wp db reset --yes Success: Database reset. # Execute a SQL query stored in a file. $ wp db query < debug.sql
Код класса
На Windows вы можете столкнуться с ошибкой:
'mysql' is not recognized as an internal or external command, operable program or batch file.
В этом видео показано, как решить проблему
wp db create
Создает новую базу данных.
Запускает SQL команду CREATE_DATABASE, используя учетные данные, указанные в константах DB_HOST, DB_NAME, DB_USER и DB_PASSWORD в файле wp-config.php.
Использование
wp db create
Можно указать Глобальные параметры и следующие:
- [--dbuser={value}]
- Имя пользователя для mysql. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для mysql. По умолчанию: DB_PASSWORD.
Примеры
$ wp db create Success: Database created.
wp db drop
Удаляет существующую базу данных.
Runs DROP_DATABASE SQL statement using DB_HOST, DB_NAME, DB_USER and DB_PASSWORD database credentials specified in wp-config.php.
Использование
wp db drop
Можно указать Глобальные параметры и следующие:
- [--dbuser={value}]
- Имя пользователя для mysql. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для mysql. По умолчанию: DB_PASSWORD.
- [--yes]
- Answer yes to the confirmation message.
Примеры
$ wp db drop --yes Success: Database dropped.
wp db reset
Удаляет все таблицы из базы данных.
Выполняет SQL-запросы DROP_DATABASE и CREATE_DATABASE, используя учетные данные базы данных DB_HOST, DB_NAME, DB_USER и DB_PASSWORD, указанные в wp-config.php.
Использование
wp db reset
Можно указать Глобальные параметры и следующие:
- [--dbuser={value}]
- Имя пользователя для mysql. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для mysql. По умолчанию: DB_PASSWORD.
- [--yes]
- Автоматически подтверждает удаление таблиц.
Примеры
$ wp db reset --yes Success: Database reset.
wp db clean
Удаляет из базы данных все таблицы с префиксом $table_prefix.
Запускает команду DROP_TABLE для каждой таблицы, которая имеет $table_prefix, как указано в wp-config.php.
Использование
wp db clean
Можно указать Глобальные параметры и следующие:
- [--dbuser={value}]
- Имя пользователя для mysql. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для mysql. По умолчанию: DB_PASSWORD.
- [--yes]
- Автоматически подтверждает удаление таблиц.
Примеры
# Удаляет все таблицы с текущим префиксом сайта c подтверждением действия.
$ wp db clean
Are you sure you want to drop all the tables on 'name_db' that use the current site's database prefix ('wp_')? [y/n] y
Success: Tables dropped.
# Удаляет все таблицы с текущим префиксом сайта без подтверждения действия. $ wp db clean --yes Success: Tables dropped.
wp db check
Проверяет текущее состояние базы данных.
Запускает утилиту mysqlcheck с помощью -check с использованием констант DB_HOST, DB_NAME, DB_USER и DB_PASSWORD, указанных в wp-config.php.
Дополнительную информацию об инструкции CHECK TABLE смотрите в документации.
Использование
wp db check
Можно указать Глобальные параметры и следующие:
- [--dbuser={value}]
- Имя пользователя для передачи в mysqlcheck.
По умолчанию: DB_USER - [--dbpass={value}]
- Пароль для передачи в mysqlcheck.
По умолчанию: DB_PASSWORD - [--{field}={value}]
- Дол. аргументы для передачи в mysqlcheck.
Примеры
Запустим проверку у сайта, имя базы данных которого site_db_name.
$ wp db check site_db_name.wp_commentmeta OK site_db_name.wp_comments OK site_db_name.wp_links OK site_db_name.wp_options OK site_db_name.wp_postmeta OK site_db_name.wp_posts OK site_db_name.wp_term_relationships OK site_db_name.wp_term_taxonomy OK site_db_name.wp_termmeta OK site_db_name.wp_terms OK site_db_name.wp_usermeta OK site_db_name.wp_users OK Success: Database checked.
wp db optimize
Оптимизирует базу данных.
Runs mysqlcheck utility with --optimize=true using DB_HOST, DB_NAME, DB_USER and DB_PASSWORD database credentials specified in wp-config.php.
See docs for more details on the OPTIMIZE TABLE statement.
Использование
wp db optimize
Можно указать Глобальные параметры и следующие:
- [--dbuser={value}]
- Username to pass to mysqlcheck. По умолчанию: DB_USER.
- [--dbpass={value}]
- Password to pass to mysqlcheck. По умолчанию: DB_PASSWORD.
- [--{field}={value}]
- Extra arguments to pass to mysqlcheck.
Примеры
1) Оптимизация всех таблиц в базе данных (не важно какой у них префикс):
$ wp db optimize Success: Database optimized.
2) Оптимизация отдельных таблиц Базы данных. Её можно сделать отдельным запросом:
$ wp db query "OPTIMIZE TABLE wp_options, wp_posts" +-------------------+----------+----------+-------------------------------------------------------------------+ | Table | Op | Msg_type | Msg_text | +-------------------+----------+----------+-------------------------------------------------------------------+ | holder.wp_options | optimize | note | Table does not support optimize, doing recreate + analyze instead | | holder.wp_options | optimize | status | OK | | holder.wp_posts | optimize | note | Table does not support optimize, doing recreate + analyze instead | | holder.wp_posts | optimize | status | OK | +-------------------+----------+----------+-------------------------------------------------------------------+
wp db repair
Восстанавливает базу данных (Repairs).
Runs mysqlcheck utility with --repair=true using DB_HOST, DB_NAME, DB_USER and DB_PASSWORD database credentials specified in wp-config.php.
See docs for more details on the REPAIR TABLE statement.
Использование
wp db repair
Можно указать Глобальные параметры и следующие:
- [--dbuser={value}]
- Username to pass to mysqlcheck. По умолчанию: DB_USER.
- [--dbpass={value}]
- Password to pass to mysqlcheck. По умолчанию: DB_PASSWORD.
- [--{field}={value}]
- Extra arguments to pass to mysqlcheck.
Примеры
$ wp db repair Success: Database repaired.
wp db cli
Открывает консоль MySQL (mysql>), используя учетные данные из wp-config.php.
Использование
wp db cli
Можно указать Глобальные параметры и следующие:
- [--database={database}]
- Выбирает указанную базу данных. По умолчанию: DB_NAME.
- [--default-character-set={character-set}]
- Устанавливает выбранную кодировку. По умолчанию: DB_CHARSET, если установлена.
- [--dbuser={value}]
- Имя пользователя для передачи в mysql. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для передачи в mysql. По умолчанию: DB_PASSWORD.
- [--{field}={value}]
- Дополнительные аргументы для перехода к исполняемому файлу MySQL.
Примеры
# Open MySQL console $ wp db cli mysql>
wp db query
Выполняет запрос SQL к базе данных.
Executes an arbitrary SQL query using DB_HOST, DB_NAME, DB_USER and DB_PASSWORD database credentials specified in wp-config.php.
Использование
wp db query
Можно указать Глобальные параметры и следующие:
- [{sql}]
- A SQL query. If not passed, will try to read from STDIN.
- [--dbuser={value}]
- Имя пользователя для mysql. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для mysql. По умолчанию: DB_PASSWORD.
- [--{field}={value}]
- Extra arguments to pass to mysql.
Примеры
# Execute a query stored in a file $ wp db query < debug.sql
# Check all tables in the database $ wp db query "CHECK TABLE $(wp db tables | paste -s -d, -);" +---------------------------------------+-------+----------+----------+ | Table | Op | Msg_type | Msg_text | +---------------------------------------+-------+----------+----------+ | wordpress_dbase.wp_users | check | status | OK | | wordpress_dbase.wp_usermeta | check | status | OK | | wordpress_dbase.wp_posts | check | status | OK | | wordpress_dbase.wp_comments | check | status | OK | | wordpress_dbase.wp_links | check | status | OK | | wordpress_dbase.wp_options | check | status | OK | | wordpress_dbase.wp_postmeta | check | status | OK | | wordpress_dbase.wp_terms | check | status | OK | | wordpress_dbase.wp_term_taxonomy | check | status | OK | | wordpress_dbase.wp_term_relationships | check | status | OK | | wordpress_dbase.wp_termmeta | check | status | OK | | wordpress_dbase.wp_commentmeta | check | status | OK | +---------------------------------------+-------+----------+----------+
# Pass extra arguments through to MySQL $ wp db query 'SELECT * FROM wp_options WHERE option_name="home"' --skip-column-names +---+------+------------------------------+-----+ | 2 | home | http://wordpress-develop.dev | yes | +---+------+------------------------------+-----+
Пример запуска команды из нескольких строк
$ wp db query " \ SELECT copy.meta_value, brand.meta_value \ FROM wp_postmeta copy \ LEFT JOIN wp_postmeta brand ON (copy.post_id = brand.post_id) \ WHERE copy.meta_key = 'type' AND copy.meta_value = 'copyright' \ AND brand.meta_key = 'brand' \ "
UPDATE запрос
UPDATE запрос ничего не показывает в результате, поэтмоу чтобы проверить результат запроса нужно посмотреть с каким кодом выполнилась команда, и если код не 0, то запрос был выполнен с ошибкой:
$ wp db query "UPDATE wp_postmeta SET meta_key = 'from_key' WHERE meta_key = 'to_key'" $ echo $? 0
Очистить указанную таблицу
Команда удалит все данные в таблице jdvwi_news_subscription со сбросом инкремента:
wp db query "TRUNCATE wp_news_subscription"
Команда удалит все данные в таблице wp_news_subscription без сброса инкремента:
wp-cli db query "DELETE FROM wp_news_subscription"
Прежде чем применить команду, узнайте о разнице между TRUNCATE и DELETE!
wp db export
Экспортирует базу данных (создает дамп) в файл или в STDOUT (стандартный вывод).
Запускает утилиту mysqldump, используя DB_HOST, DB_NAME, DB_USER и DB_PASSWORD учетные данные базы данных, заданные в wp-config.php.
По умолчанию дамп создается с командой DROP TABLE IF EXISTS для каждой таблицы.
Использование
wp db export
Можно указать Глобальные параметры и следующие:
- [{file}]
- Имя экспортируемого файла SQL. Если '-', то выводится в STDOUT. Если опущено, то файл будет иметь название '{dbname}-{Y-m-d}-{random-hash}.sql'.
- [--dbuser={value}]
- Имя пользователя для передачи mysqldump. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для передачи mysqldump. По умолчанию: DB_PASSWORD.
- [--{field}={value}]
- Дополнительные аргументы для передачи mysqldump.
- [--tables={tables}]
- Список экспортируемых таблиц, разделенных запятыми. Если не указать, то все таблицы попадут в дамп.
- [--exclude_tables={tables}]
- Разделенный запятыми список конкретных таблиц, которые должны быть пропущены. Если не указать, то все таблицы попадут в дамп.
- [--include-tablespaces]
- Skips adding the default
--no-tablespacesoption tomysqldump. - [--porcelain]
- Выходное имя файла для экспортированной базы данных.
- [--defaults]
- Loads the environment's MySQL option files. Default behavior is to skip loading them to avoid failures due to misconfiguration.
- Еще параметры
Смотрите в документации к mysqldump
Некоторые из полезных параметров:
Option Description Default --default-character-set Устанавливает кодировку символов по умолчанию для экспорта utf8 --add-drop-database Добавляет оператор DROP DATABASE перед каждым CREATE DATABASE off --add-drop-table Добавляет оператор DROP TABLE перед каждым CREATE TABLE off --single-transaction Начинает транзакцию для последовательного экспорта (подходит для InnoDB) off --extended-insert Использует множественный синтаксис INSERT для ускорения импорта on --quick Получает строки по одной, снижая использование памяти off --set-charset Добавляет оператор SET NAMES для обеспечения правильной кодировки on --routines Экспортирует сохранённые процедуры и функции off --triggers Экспортирует триггеры для каждой таблицы on --compact Создаёт более компактный дамп off --complete-insert Включает имена столбцов в операторы INSERT off --comments Добавляет комментарии в файл дампа on --order-by-primary Сортирует строки по первичному ключу или первому уникальному индексу off --dump-date Добавляет дату дампа в виде комментария в вывод off --hex-blob Экспортирует бинарные столбцы в шестнадцатеричном виде off --databases Экспортирует полную базу данных, включая операторы CREATE DATABASE off
Примеры
Бэкап базы данных с архивацией в .gz файл в текущую директорию.
Тут мы устанавливаем кодировку --default-character-set=utf8mb4, потому что wp-cli сам этого не делает. Если этого не сделать, то мы можем потерять некоторые символы в строках. Более того, если emoji есть в сериализованных массивах, то при импорте эти массивы будут сломаны.
Модификатор --add-drop-table добавляет инструкцию DROP TABLE перед каждым оператором CREATE TABLE . Полезно, если вы хотите заменить таблицы на сервере.
wp db export - --add-drop-table --default-character-set=utf8mb4 | gzip > ./db-dump-$(date +%Y-%m-%d-%H%M%S).sql.gz
Бэкап базы данных с архивацией в .gz файл в текущую директорию без установки кодировки.
wp db export - | gzip > ./db-dump-2025-07-05-155805.sql.gz
# Export database with drop query included $ wp db export --add-drop-table Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Export certain tables $ wp db export --tables=wp_options,wp_users Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Export all tables matching a wildcard $ wp db export --tables=$(wp db tables 'wp_user*' --format=csv) Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Export all tables matching prefix $ wp db export --tables=$(wp db tables --all-tables-with-prefix --format=csv) Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Export certain posts without create table statements $ wp db export --no-create-info=true --tables=wp_posts --where="ID in (100,101,102)" Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Export relating meta for certain posts without create table statements $ wp db export --no-create-info=true --tables=wp_postmeta --where="post_id in (100,101,102)" Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Skip certain tables from the exported database $ wp db export --exclude_tables=wp_options,wp_users Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Skip all tables matching a wildcard from the exported database $ wp db export --exclude_tables=$(wp db tables 'wp_user*' --format=csv) Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Skip all tables matching prefix from the exported database $ wp db export --exclude_tables=$(wp db tables --all-tables-with-prefix --format=csv) Success: Exported to 'wordpress_dbase-db72bb5.sql'.
# Export database to STDOUT. $ wp db export - -- MySQL dump 10.13 Distrib 5.7.19, for osx10.12 (x86_64) -- -- Host: localhost Database: wpdev -- ------------------------------------------------------ -- Server version 5.7.19 ...
wp db import
Импортирует базу данных из файла или STDIN (стандартного ввода).
Runs SQL queries using DB_HOST, DB_NAME, DB_USER and DB_PASSWORD database credentials specified in wp-config.php. This does not create database by itself and only performs whatever tasks are defined in the SQL.
Использование
wp db import
Можно указать Глобальные параметры и следующие:
- [{file}]
- The name of the SQL file to import. If
'-', then reads from STDIN. If omitted, it will look for '{dbname}.sql'. - [--dbuser={value}]
- Имя пользователя для mysql. По умолчанию: DB_USER.
- [--dbpass={value}]
- Пароль для mysql. По умолчанию: DB_PASSWORD.
- [--skip-optimization]
- When using an SQL file, do not include speed optimization such as disabling auto-commit and key checks.
- [--defaults]
- Убирает добавление флага
--no-defaults(ставиться по умолчанию) - это включает чтение конфигов. С флагом--no-defaultsклиент учитывать только опции, переданные в командной строке, т.е. игнорирует файлы конфигов:/etc/mysql/my.cnf,/etc/mysql/conf.d/*.cnf,~/.my.cnfи т.п. - Other
Other allowed mysql options:
See: https://github.com/wp-cli/db-command/blob/main/src/DB_Command.php#L1980
See: https://dev.mysql.com/doc/refman/8.4/en/mysql-command-options.htmlauto-rehash — автодополнение Tab, предварительный ре-хеш auto-vertical-output — вертикальный вывод, если шире терминала batch — пакетный режим без интерактива binary-as-hex — двоичные поля печатать в hex binary-mode — сырой двоичный ввод-вывод без преобразований bind-address — привязать исходное соединение к локальному IP character-sets-dir — каталог наборов символов column-names — выводить имена столбцов column-type-info — показывать типы столбцов в результате comments — не удалять комментарии из SQL compress — сжатие протокола клиент-сервер connect-expired-password — подключаться с истекшим паролем для его смены connect_timeout — таймаут подключения в секундах database — выбрать БД по умолчанию debug — включить отладку с заданной строкой debug-check — отчеты проверки ресурсов при выходе debug-info — вывести отладочную информацию и выйти default-auth — плагин аутентификации по умолчанию default-character-set — кодировка клиента defaults-extra-file — дополнительно читать опции из файла defaults-file — читать опции только из указанного файла defaults-group-suffix — суффикс группы опций в конфиге delimiter — задать разделитель команд enable-cleartext-plugin — разрешить cleartext auth плагин execute — выполнить команду и выйти force — продолжать при ошибках get-server-public-key — запросить RSA публичный ключ сервера help — показать помощь histignore — шаблоны игнора для истории команд host — хост сервера html — вывод в HTML-таблице ignore-spaces — игнор пробелов после имен функций init-command — SQL для выполнения при подключении line-numbers — номера строк в сообщениях об ошибках local-infile — разрешить LOAD DATA LOCAL login-path — профиль из mylogin.cnf max_allowed_packet — макс размер пакета клиента max_join_size — лимит размера результата для безопасных апдейтов named-commands — включить именованные команды клиента net_buffer_length — начальный размер сетевого буфера no-beep — отключить звук при ошибках one-database — игнорировать команды к другим БД pager — внешний пейджер для вывода pipe — подключение через именованный канал plugin-dir — каталог клиентских плагинов port — порт сервера print-defaults — вывести применимые опции и выйти protocol — протокол соединения tcp or socket or pipe or memory quick — не буферизовать результат, читать построчно raw — не экранировать спецсимволы в выводе reconnect — авто-переподключение при разрыве i-am-a-dummy — синоним safe-updates safe-updates — запрет UPDATE or DELETE без ключа и с лимитами secure-auth — запрет старой схемы паролей select_limit — дефолтный LIMIT для SELECT server-public-key-path — путь к публичному ключу сервера shared-memory-base-name — имя сегмента shared memory show-warnings — показывать предупреждения после запросов sigint-ignore — игнорировать SIGINT silent — тихий режим skip-auto-rehash — отключить авто ре-хеш skip-column-names — не печатать заголовки столбцов skip-line-numbers — не печатать номера строк в ошибках skip-named-commands — отключить именованные команды skip-pager — отключить пейджер skip-reconnect — отключить автопереподключение socket — путь к Unix socket ssl-ca — файл CA сертификата ssl-capath — каталог CA сертификатов ssl-cert — клиентский сертификат ssl-cipher — список TLS шифров ssl-crl — файл CRL ssl-crlpath — каталог CRL ssl-fips-mode — режим FIPS для TLS ssl-key — приватный ключ клиента ssl-mode — режим TLS disabled or preferred or required or verify_ca or verify_identity syslog — логировать команды клиента в syslog table — красивый табличный вывод tee — дублировать вывод в файл tls-version — разрешенные версии TLS unbuffered — немедленный вывод строк результата verbose — подробный режим version — показать версию и выйти vertical — вертикальный формат строк результата wait — ждать доступности сервера и повторять xml — вывод в XML
Примеры
Импорт MySQL из файла:
wp db import wordpress_dbase.sql > Success: Imported from 'wordpress_dbase.sql'.
Импорт из .gz арихва:
gzip -cd dump.sql.gz | wp db import -
-c, --stdout- писать результат в stdout, исходный файл не трогать.-d, --decompress- распаковать.
Заметка про ошибку с SSL-сертификатом
Если появляется ошибка вида:
Error: Failed to get current SQL modes. Reason: ERROR 2026 (HY000): TLS/SSL error: Certificate verification failure: The certificate is NOT trusted.
Это означает, что используется PHP-клиент MariaDB. Также при запуске WP-CLI выставляет флаг --no-defaults, из-за чего клиент не читает конфигурационные файлы. Чтобы в MariaDB отключить проверку SSL, нужен флаг --skip-ssl. Передать его напрямую через wp db import нельзя, потому что в WP-CLI есть проверка списка разрешенных опций, и мариевского флага --skip-ssl там нет. Даже если вы его укажете, он не будет передан в команде клиенту.
Решение: Укажите в файле конфигурации, например /etc/mysql/mariadb.conf.d/50-client.cnf или ~/.my.cnf, в секции [client] опцию skip-ssl=true. Затем запускайте команду с флагом --defaults, который отменяет --no-defaults и позволяет клиенту прочитать конфигурационные файлы. В результате опция skip-ssl применится, и импорт начнет работать корректно.
[client] skip-ssl=true
$ wp db import --defaults
wp db tables
Отображает таблицы базы данных. По умолчанию в список попадают все таблицы, зарегистрированные в обработчике базы данных $wpdb.
Использование
wp db tables
Можно указать Глобальные параметры и следующие:
- [{table}...]
- Список таблиц, основанных на поиске подстановочных знаков, например,
wp_*_optionsилиwp_post?. - [--scope={scope}]
- Могут быть all, global, ms_global, blog или старые таблицы.
По умолчанию: all - --network
- Отображает все таблицы в многопользовательской установке. Переопределяет
--scope={scope}. - --all-tables-with-prefix
- Отображает все таблицы, которые соответствуют префиксу таблицы, даже если они не зарегистрированы в
$wpdb. Переопределяет--network. - --all-tables
- Отображает все таблицы в базе данных, независимо от префикса, и даже если они не зарегистрированы в
$wpdb. Переопределяет --all-tables-with-prefix. - [--format={format}]
- Вывод информации в определенном формате. Может быть
listилиcsv.
По умолчанию: list
Примеры
# Запрос $wp db tables # Ответ wp_users wp_usermeta wp_posts wp_comments wp_links wp_options wp_postmeta wp_terms wp_term_taxonomy wp_term_relationships wp_termmeta wp_commentmeta
Список таблиц для одного сайта без общих таблиц, таких как wp_users.
# Запрос $ wp db tables --scope=blog --url=sub.example.com # Ответ wp_3_posts wp_3_comments wp_3_options wp_3_postmeta wp_3_terms wp_3_term_taxonomy wp_3_term_relationships wp_3_termmeta wp_3_commentmeta
Отобразит таблицы сайта в линию.
# Запрос $ wp db tables --format=csv # Ответ wp_users,wp_usermeta,wp_posts,wp_comments,wp_links,wp_options,wp_postmeta,wp_terms,wp_term_taxonomy,wp_term_relationships,wp_termmeta,wp_commentmeta
Экспортировать таблицы только одного сайта.
# Запрос $ wp db export --tables=$(wp db tables --url=sub.example.com --format=csv) # Ответ Success: Exported to wordpress_dbase.sql
wp db size
Отображает имя и размер базы данных.
Display the database name and size for DB_NAME specified in wp-config.php. The size defaults to a human-readable number.
Использование
wp db size
Можно указать Глобальные параметры и следующие:
- [--size_format]
Display the database size only, as a bare number.
По умолчанию: b
Может быть:- b (bytes)
- kb (kilobytes)
- mb (megabytes)
- gb (gigabytes)
- tb (terabytes)
- B (ISO Byte setting, with no conversion)
- KB (ISO Kilobyte setting, with 1 KB = 1,000 B)
- KiB (ISO Kibibyte setting, with 1 KiB = 1,024 B)
- MB (ISO Megabyte setting, with 1 MB = 1,000 KB)
- MiB (ISO Mebibyte setting, with 1 MiB = 1,024 KiB)
- GB (ISO Gigabyte setting, with 1 GB = 1,000 MB)
- GiB (ISO Gibibyte setting, with 1 GiB = 1,024 MiB)
- TB (ISO Terabyte setting, with 1 TB = 1,000 GB)
- TiB (ISO Tebibyte setting, with 1 TiB = 1,024 GiB)
- [--tables]
- Display each table name and size instead of the database size.
- [--format]
table, csv, json
По умолчанию: table
Может быть:- table
- csv
- json
- [--scope={scope}]
- Can be all, global, ms_global, blog, or old tables. По умолчанию: all.
- [--network]
- List all the tables in a multisite install.
- [--all-tables-with-prefix]
- List all tables that match the table prefix even if not registered on $wpdb. Overrides --network.
- [--all-tables]
- List all tables in the database, regardless of the prefix, and even if not registered on $wpdb. Overrides --all-tables-with-prefix.
Примеры
$ wp db size +-------------------+------+ | Name | Size | +-------------------+------+ | wordpress_default | 6 MB | +-------------------+------+
$ wp db size --tables +-----------------------+-------+ | Name | Size | +-----------------------+-------+ | wp_users | 64 KB | | wp_usermeta | 48 KB | | wp_posts | 80 KB | | wp_comments | 96 KB | | wp_links | 32 KB | | wp_options | 32 KB | | wp_postmeta | 48 KB | | wp_terms | 48 KB | | wp_term_taxonomy | 48 KB | | wp_term_relationships | 32 KB | | wp_termmeta | 48 KB | | wp_commentmeta | 48 KB | +-----------------------+-------+
$ wp db size --size_format=b 5865472
$ wp db size --size_format=kb 5728
$ wp db size --size_format=mb 6
wp db prefix
Отображает префикс таблицы базы данных ($table_prefix).
Display the database table prefix, as defined by the database handler's interpretation of the current site.
Использование
wp db prefix
Примеры
$ wp db prefix wp_
wp db search
Находит строку в базе данных.
Ищет по всем или выбранным таблицам базы данных заданную строку, выводит цветные ссылки на строку.
По умолчанию выполняет поиск по всем таблицам, зарегистрированным в $wpdb. В многосайтовой установке этот параметр по умолчанию ограничивается таблицами текущего сайта.
Использование
wp db search
Можно указать Глобальные параметры и следующие:
- {search}
- Строка для поиска. По умолчанию поиск нечувствителен к регистру.
- [{tables}...]
- Одна или несколько таблиц (через запятую), в которых нужно искать строку.
- [--network]
- Ищет во всех таблицах, зарегистрированных в $wpdb в мультисайтовой установке.
- [--all-tables-with-prefix]
- Ищет во всех таблицах, соответствующих зарегистрированному префиксу таблиц, даже если они не зарегистрированы в $wpdb. С одной стороны, иногда плагины используют таблицы без регистрации их в $wpdb. С другой стороны, это может вернуть неожиданные таблицы. Переопределяет --network.
- [--all-tables]
- Ищет во ВСЕХ таблицах базы данных, независимо от префикса и даже если они не зарегистрированы в $wpdb. Переопределяет --network и --all-tables-with-prefix.
- [--before_context={num}]
- Количество символов, отображаемое перед совпадением.
По умолчанию: 40 - [--after_context={num}]
- Количество символов, отображаемое после совпадения.
По умолчанию: 40 - [--regex]
- Выполняет поиск как регулярное выражение (без разделителей). Поиск становится чувствительным к регистру (т.е. флаги PCRE не добавляются). Разделители должны быть экранированы, если они встречаются в выражении.
- [--regex-flags={regex-flags}]
- Передаёт модификаторы PCRE в поиск по регулярному выражению (например, 'i' для нечувствительности к регистру).
- [--regex-delimiter={regex-delimiter}]
- Разделитель, используемый для регулярного выражения. Он должен быть экранирован, если присутствует в строке поиска. Значение по умолчанию — результат chr(1).
- [--table_column_once]
- Выводит строку 'table:column' один раз перед всеми совпадающими строками в таблице, а не перед каждой совпадающей строкой.
- [--one_line]
- Размещает вывод 'table:column' в одной строке с ID строки и совпадением ('table:column:id:match'). Переопределяет --table_column_once.
- [--matches_only]
- Выводит только совпадения строки (включая контекст). Строки 'table:column' и ID строк не выводятся.
- [--stats]
- Выводит статистику по количеству найденных совпадений, времени выполнения, таблицам/столбцам/строкам, по которым осуществлён поиск, и пропущенным таблицам.
- [--table_column_color={color_code}]
- Код цвета в процентах для вывода 'table:column'. Список доступных кодов см. ниже. По умолчанию '%G' (ярко-зелёный).
- [--id_color={color_code}]
- Код цвета в процентах для вывода ID строки. Список доступных кодов см. ниже. По умолчанию '%Y' (ярко-жёлтый).
- [--match_color={color_code}]
Код цвета в процентах для совпадения (если только перед и после контекст не равны 0 — в этом случае цвет не используется). Список доступных кодов см. ниже. По умолчанию '%3%k' (чёрный на фоне тёмно-жёлтого).
Доступные коды цветов в процентах:
Код Цвет %y Жёлтый (тёмный) (горчичный) %g Зелёный (тёмный) %b Синий (тёмный) %r Красный (тёмный) %m Пурпурный (тёмный) %c Голубой (тёмный) %w Белый (тёмный) (светло-серый) %k Чёрный %Y Жёлтый (яркий) %G Зелёный (яркий) %B Синий (яркий) %R Красный (яркий) %M Пурпурный (яркий) %C Голубой (яркий) %W Белый %K Чёрный (яркий) (тёмно-серый) %3 Жёлтый фон (тёмный) (горчичный) %2 Зелёный фон (тёмный) %4 Синий фон (тёмный) %1 Красный фон (тёмный) %5 Пурпурный фон (тёмный) %6 Голубой фон (тёмный) %7 Белый фон (тёмный) (светло-серый) %0 Чёрный фон %8 Инвертировать %U Подчёркнутый %F Мигающий (вряд ли будет работать) Их можно комбинировать. Например, цвет совпадения по умолчанию — чёрный на тёмно-жёлтом фоне %3%k, можно изменить на чёрный на ярко-жёлтом фоне с помощью %Y%0%8.
Примеры
# Search through the database for the 'wordpress-develop' string $ wp db search wordpress-develop wp_ Может быть: option_value 1:http://wordpress-develop.dev wp_ Может быть: option_value 1:http://example.com/foo ...
# Search through a multisite database on the subsite 'foo' for the 'example.com' string $ wp db search example.com --url=example.com/foo wp_2_comments:comment_author_url 1:http://example.com/ wp_2_ Может быть: option_value ...
# Search through the database for the 'https?://' regular expression, printing stats. $ wp db search 'https?://' --regex --stats wp_comments:comment_author_url 1:https://wordpress.org/ ... Success: Found 99146 matches in 10.752s (10.559s searching). Searched 12 tables, 53 columns, 1358907 rows. 1 table skipped: wp_term_relationships.
wp db columns
Отображает информацию об указанной таблице.
Для отображения произвольной таблицы, она должна быть добавлена в свойство $wpdb->tables.
Использование
wp db columns
Можно указать Глобальные параметры и следующие:
- [{table}]
- Имя таблицы базы данных.
- [--format]
В каком виде отобразить данные.
По умолчанию: table
Может быть:- table
- csv
- json
- yaml
Примеры
$ wp db columns wp_posts +-----------------------+---------------------+------+-----+---------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------------+---------------------+------+-----+---------------------+----------------+ | ID | bigint(20) unsigned | NO | PRI | | auto_increment | | post_author | bigint(20) unsigned | NO | MUL | 0 | | | post_date | datetime | NO | | 0000-00-00 00:00:00 | | | post_date_gmt | datetime | NO | | 0000-00-00 00:00:00 | | | post_content | longtext | NO | | | | | post_title | text | NO | | | | | post_excerpt | text | NO | | | | | post_status | varchar(20) | NO | | publish | | | comment_status | varchar(20) | NO | | open | | | ping_status | varchar(20) | NO | | open | | | post_password | varchar(255) | NO | | | | | post_name | varchar(200) | NO | MUL | | | | to_ping | text | NO | | | | | pinged | text | NO | | | | | post_modified | datetime | NO | | 0000-00-00 00:00:00 | | | post_modified_gmt | datetime | NO | | 0000-00-00 00:00:00 | | | post_content_filtered | longtext | NO | | | | | post_parent | bigint(20) unsigned | NO | MUL | 0 | | | guid | varchar(255) | NO | | | | | menu_order | int(11) | NO | | 0 | | | post_type | varchar(20) | NO | MUL | post | | | post_mime_type | varchar(100) | NO | | | | | comment_count | bigint(20) | NO | | 0 | | +-----------------------+---------------------+------+-----+---------------------+----------------+