англійськафранцузькаіспанська

Значок OnWorks

pt-table-usagep - онлайн у хмарі

Запустіть pt-table-usagep у постачальника безкоштовного хостингу OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда pt-table-usagep, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн емулятор Windows або онлайн емулятор MAC OS

ПРОГРАМА:

ІМ'Я


pt-table-usage - Аналізуйте, як запити використовують таблиці.

СИНТАКСИС


Використання: pt-table-usage [OPTIONS] [FILES]

pt-table-usage читає запити з журналу та аналізує, як вони використовують таблиці. Якщо немає FILE
зазначено, він читає STDIN. Він друкує звіт для кожного запиту.

РИЗИКИ


Percona Toolkit є зрілим, перевіреним у реальному світі та добре перевіреним, але вся база даних
інструменти можуть становити ризик для системи та сервера баз даних. Перш ніж використовувати цей інструмент,
будь ласка:

· Прочитайте документацію до інструменту

· Перегляньте відомі "ПОМИЛКИ" інструмента

· Перевірте інструмент на невиробничому сервері

· Створіть резервну копію робочого сервера та перевірте резервні копії

ОПИС


pt-table-usage читає запити з журналу та аналізує, як вони використовують таблиці. Журнал повинен
бути у форматі журналу повільних запитів MySQL.

Використання таблиці — це більше, ніж просто вказівка ​​на те, які таблиці читає чи записує запит.
Він також вказує на потік даних: дані вхідні та вихідні. Інструмент визначає потік даних
контексти, в яких відображаються таблиці. Один запит може використовувати таблицю в кількох різних
контексти одночасно. Вихід інструмента містить список усіх контекстів для кожної таблиці. Це
Список CONTEXT-TABLE вказує, як дані переміщуються між таблицями. У розділі "ВИХОД" наведено список
можливі контексти та описує, як читати звіт про використання таблиці.

Інструмент аналізує потік даних до рівня окремих стовпців, тому корисно, якщо
стовпці однозначно визначаються в запиті. Якщо запит використовує лише одну таблицю, то
всі стовпці мають бути з цієї таблиці, і немає ніяких труднощів. Але якщо запит використовує
кілька таблиць і назви стовпців не відповідають таблиці, то необхідно використовувати
"EXPLAIN EXTENDED", а потім "ПОКАЗАТИ ПОПЕРЕДЖЕННЯ", щоб визначити, до яких таблиць належать стовпці
належать.

Якщо інструмент не знає базу даних запиту за замовчуванням, що може статися, коли база даних
не надруковано в журналі, то "EXPLAIN EXTENDED" може вийти з ладу. У цьому випадку можна вказати
база даних за замовчуванням з "--database". Ви також можете використовувати "--create-table-definitions"
можливість допомогти вирішити неясності.

ВИХІД


Інструмент друкує звіт про використання для кожної таблиці в кожному запиті, подібно до такого:

Query_id: 0x1CD27577D202A339.1
ОНОВЛЕННЯ t1
ВИБЕРІТЬ DUAL
ПРИЄДНУЙТЕСЯ t1
ПРИЄДНУЙТЕСЯ t2
ДЕ t1

Query_id: 0x1CD27577D202A339.2
ОНОВЛЕННЯ t2
ВИБЕРІТЬ DUAL
ПРИЄДНУЙТЕСЯ t1
ПРИЄДНУЙТЕСЯ t2
ДЕ t1

Перший рядок містить ідентифікатор запиту, який за замовчуванням такий самий, як і в pt-
звіти з дайджестом запитів. Це контрольна сума MD5 «відбитка пальця» запиту, тобто що
залишається після видалення літералів, згортання пробілів та багатьох інших
трансформації. Ідентифікатор запиту складається з двох частин, розділених крапкою: ідентифікатор запиту та ідентифікатор запиту
номер столу. Якщо ви хочете використовувати інше значення для ідентифікації запиту, ви можете вказати
параметр "--id-attribute".

Попередній приклад показує два абзаци для одного запиту, а не для двох запитів. Зауважте, що
ідентифікатор запиту ідентичний для двох, але номер таблиці відрізняється. Номер столу
збільшується на 1 для кожної таблиці, яку оновлює запит. Лише багатотабличні запити UPDATE
може оновлювати декілька таблиць за допомогою одного запиту, тому номер таблиці дорівнює 1 для всіх інших
типи запитів. (Інструмент не підтримує багатотабличні запити DELETE.) Приклад
висновок вище отримано з цього запиту:

ОНОВЛЕННЯ t1 ЯК ПРИЄДНУЄТЬСЯ t2 ЯК b ВИКОРИСТАННЯ (id)
SET a.foo="bar", b.foo="bat"
ДЕ a.id=1;

Речення "SET" вказує, що запит оновлює дві таблиці: "a" з псевдонімом "t1" і "b"
псевдонімом «t2».

Після першого рядка інструмент друкує змінну кількість рядків CONTEXT-TABLE. Можливий
контексти такі:

· ВИБІР

SELECT означає, що запит отримує дані з таблиці з однієї з двох причин. The
перший має бути повернений користувачеві як частина набору результатів. Тільки запити SELECT
повертають набори результатів, тому звіт завжди показує контекст SELECT для запитів SELECT.

Другий випадок — це коли дані надходять до іншої таблиці як частина INSERT або UPDATE.
Наприклад, запит UPDATE у прикладі вище має таке використання:

ВИБЕРІТЬ DUAL

Це стосується:

SET a.foo="bar", b.foo="bat"

Інструмент використовує DUAL для будь-яких значень, які не походять із таблиці, у цьому випадку значення
літерні значення "bar" і "bat". Якщо це положення "SET" було б замість цього "SET a.foo=b.foo",
тоді повне використання буде таким:

Query_id: 0x1CD27577D202A339.1
ОНОВЛЕННЯ t1
ВИБЕРІТЬ t2
ПРИЄДНУЙТЕСЯ t1
ПРИЄДНУЙТЕСЯ t2
ДЕ t1

Наявність контексту SELECT після іншого контексту, наприклад UPDATE або INSERT,
вказує, де UPDATE або INSERT отримує свої дані. Приклад відразу
вище відображає запит UPDATE, який оновлює рядки в таблиці "t1" даними з таблиці
"t2".

· Будь-яке інше дієслово

Будь-яке інше дієслово, наприклад INSERT, UPDATE, DELETE тощо, може бути контекстом. Ці дієслова
вказують на те, що запит певним чином змінює дані. Якщо контекст SELECT слідує за одним із
ці дієслова, тоді запит зчитує дані з таблиці SELECT і записує їх у цю
стіл. Це відбувається, наприклад, із запитами INSERT..SELECT або UPDATE, які використовують
значення з таблиць замість постійних значень.

Ці типи запитів не підтримуються: SET, LOAD і DELETE для кількох таблиць.

· ПРИЄДНУЙТЕСЯ

Контекст JOIN містить список таблиць, які об’єднані, або з явним JOIN в
FROM або неявно в реченні WHERE, наприклад "t1.id = t2.id".

· ДЕ

Контекст WHERE перелічує таблиці, які використовуються в пропозиції WHERE для фільтрації результатів.
Це не включає таблиці, які неявно об’єднані в речення WHERE; ті
перелічено як контексти JOIN. Наприклад:

ДЕ t1.id > 100 І t1.id < 200 І t2.foo НЕ Є NULL

Призводить до:

ДЕ t1
ДЕ t2

Інструмент відображає лише окремі таблиці; тому таблиця "t1" вказана лише один раз.

· TLIST

Контекст TLIST перелічує таблиці, до яких звертається запит, але які не відображаються в жодній
інший контекст. Ці таблиці зазвичай є неявним декартовим з’єднанням. Наприклад,
запит "SELECT * FROM t1, t2" призводить до:

Ідентифікатор запиту: 0xBDEB6EDA41897A8.1
ВИБЕРІТЬ t1
ВИБЕРІТЬ t2
TLIST t1
TLIST t2

Перш за все, є два контексти SELECT, тому що "SELECT *" вибирає рядки з усіх
столи; "t1" і "t2" у цьому випадку. По-друге, таблиці неявно з’єднуються, але
без будь-якої умови з'єднання, що призводить до декартового з'єднання, як зазначено
контекст TLIST для кожного.

EXIT СТАТУС


pt-table-usage виходить із 1 у разі будь-якої помилки або 0, якщо помилок немає.

ВАРІАНТИ


Цей інструмент приймає додаткові аргументи командного рядка. Зверніться до розділу «СІНОПСИС» та використання
інформацію для деталей.

--запитай-пройди
Запитувати пароль при підключенні до MySQL.

--набір символів
коротка форма: -А; тип: рядок

Набір символів за замовчуванням. Якщо значення - utf8, встановлює binmode Perl на STDOUT на utf8,
передає параметр mysql_enable_utf8 в DBD::mysql і запускає SET NAMES UTF8 після
підключення до MySQL. Будь-яке інше значення встановлює binmode на STDOUT без рівня utf8,
і запускає SET NAMES після підключення до MySQL.

--config
тип: масив

Прочитайте цей розділений комами список конфігураційних файлів; якщо вказано, це має бути першим
параметр у командному рядку.

--константа-значення-дані
тип: рядок; за замовчуванням: DUAL

Таблиця для друку як джерело для константних даних (літералів). Це не будь-які дані
витягується з таблиць (або підзапитів, оскільки підзапити не підтримуються). Це
включає літерні значення, такі як рядки ("foo") і числа (42), або такі функції, як
«ЗАРАЗ ()». Наприклад, у запиті "INSERT INTO t (c) VALUES ('a')" рядок "a"
є постійними даними, тому звіт про використання таблиці такий:

ВСТАВИТИ т
ВИБЕРІТЬ DUAL

Перший рядок вказує, що запит вставляє дані в таблицю "t", а другий
рядок вказує, що вставлені дані походять з деякого постійного значення.

--[no]continue-on-error
за замовчуванням: так

Продовжуйте працювати, навіть якщо є помилка.

--create-table-definitions
тип: масив

Прочитайте визначення "CREATE TABLE" з цього списку файлів, розділених комами. Якщо ви
не можна використовувати «--explain-extended» для повної кваліфікації назв таблиць і стовпців, ви можете зберегти
виведення "mysqldump --no-data" в один або кілька файлів і вкажіть ці файли з
цей варіант. Інструмент проаналізує всі визначення "CREATE TABLE" з файлів і
використовуйте цю інформацію для визначення назв таблиць і стовпців. Якщо назва стовпця з’являється в
кілька таблиць або ім'я таблиці з'являється в кількох базах даних, неоднозначності не можуть
бути вирішеним.

--демонізувати
Розділіть на задній план і від’єднайте від оболонки. Лише операційні системи POSIX.

--база даних
коротка форма: -D; тип: рядок

База даних за замовчуванням.

--defaults-файл
коротка форма: -F; тип: рядок

Читайте лише параметри mysql із зазначеного файлу. Ви повинні вказати абсолютний шлях.

--пояснити-розширити
тип: DSN

Сервер для виконання запитів EXPLAIN EXTENDED. Це може знадобитися для вирішення
неоднозначні (некваліфіковані) імена стовпців і таблиць.

--фільтр
тип: рядок

Відкидати події, для яких цей Perl-код не повертає true.

Цей параметр являє собою рядок коду Perl або файл, що містить код Perl, який компілюється
у підпрограму з одним аргументом: $event. Якщо дане значення є читаним файлом,
потім pt-table-usage зчитує весь файл і використовує його вміст як код.

Фільтри реалізовані так само, як і в інструменті pt-query-digest, тому будь ласка
зверніться до його документації для отримання додаткової інформації.

--допомога
Показати довідку та вийти.

--господар
коротка форма: -h; тип: рядок

Підключитися до хоста.

--ід-атрибут
тип: рядок

Визначте кожну подію за допомогою цього атрибута. За замовчуванням використовується ідентифікатор запиту, який є
контрольна сума MD5 відбитка пальця запиту.

-- журнал
тип: рядок

Друкувати весь вихід у цей файл при демонізації.

--пароль
коротка форма: -p; тип: рядок

Пароль для використання під час підключення. Якщо пароль містить коми, їх потрібно екранувати
із зворотною косою рискою: "іспит\,ple"

--під
тип: рядок

Створіть заданий файл PID. Інструмент не запуститься, якщо файл PID вже існує і
PID, який він містить, відрізняється від поточного PID. Однак, якщо файл PID
існує, а PID, який він містить, більше не працює, інструмент перезапише PID
файл із поточним PID. Файл PID видаляється автоматично, коли інструмент виходить.

--порт
коротка форма: -П; тип: внутр

Номер порту для підключення.

-- прогрес
тип: масив; за замовчуванням: час,30

Друкуйте звіти про прогрес на STDERR. Значенням є список із двох частин, розділений комами.
Перша частина може бути відсотком, часом або ітераціями; друга частина визначає, як
часто оновлення має бути надруковано у відсотках, секундах або кількості ітерацій.

--запит
тип: рядок

Аналізуйте вказаний запит замість читання файлу журналу.

--час очікування читання
тип: час; за замовчуванням: 0

Зачекайте так довго на подію з входу; 0 чекати вічно.

Цей параметр встановлює максимальний час очікування події від входу. Якщо подія є
не отриманий через зазначений час, інструмент припиняє зчитувати введений текст і друкує його
звіти.

Для цього параметра потрібен модуль Perl POSIX.

-- час виконання
тип: час

Скільки часу бігти до виходу. За замовчуванням виконується вічно (ви можете переривати за допомогою
CTRL-C).

--set-varis
тип: масив

Встановіть змінні MySQL у цьому списку пар "змінна=значення", розділених комами.

За замовчуванням інструмент встановлює:

час очікування=10000

Змінні, зазначені в командному рядку, замінюють ці значення за замовчуванням. Наприклад,
зазначення "--set-vars wait_timeout=500" замінює значення за замовчуванням 10000.

Інструмент друкує попередження та продовжує роботу, якщо не вдається встановити змінну.

--розетка
коротка форма: -S; тип: рядок

Файл сокета для підключення.

--користувач
коротка форма: -у; тип: рядок

Користувач для входу, якщо не поточний користувач.

-- версія
Показати версію та вийти.

dsn ВАРІАНТИ


Ці параметри DSN використовуються для створення DSN. Кожна опція задається як "option=value".
Параметри чутливі до регістру, тому P і p не є однаковими параметрами. Не може бути
пробіл перед або після "=", і якщо значення містить пробіли, його потрібно взяти в лапки.
Параметри DSN розділяються комами. Для отримання повної інформації див.

· А

dsn: набір символів; копія: так

Набір символів за замовчуванням.

· Д

копія: ні

База даних за замовчуванням.

· Ф

dsn: mysql_read_default_file; копія: ні

Читайте лише параметри за замовчуванням із заданого файлу

· Год

dsn: хост; копія: так

Підключитися до хоста.

· с

dsn: пароль; копія: так

Пароль для використання під час підключення. Якщо пароль містить коми, їх потрібно екранувати
із зворотною косою рискою: "іспит\,ple"

· П

dsn: порт; копія: так

Номер порту для підключення.

· С

dsn: mysql_socket; копія: ні

Файл сокета для підключення.

· у

dsn: користувач; копія: так

Користувач для входу, якщо не поточний користувач.

НАВКОЛИШНЄ СЕРЕДОВИЩЕ


Змінна середовища "PTDEBUG" дозволяє вивести детальний налагодження в STDERR. Для того, щоб
налагодження та захоплення всього результату у файл, запустіть інструмент, як:

PTDEBUG=1 використання pt-таблиці ... > ФАЙЛ 2>&1

Будьте обережні: результат налагодження об’ємний і може генерувати кілька мегабайт.

SYSTEM ВИМОГИ


Вам потрібен Perl, DBI, DBD::mysql і деякі основні пакети, які слід встановити в будь-якому
досить нова версія Perl.

Використовуйте pt-table-usagep онлайн за допомогою служб onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

  • 1
    Веб-фреймворк Gin
    Веб-фреймворк Gin
    Gin — це неймовірно швидкий веб-фреймворк
    написаний на Голанг, який може виконувати до
    Завдяки йому в 40 разів швидше
    API, подібний до мартіні, і спеціальна версія
    http-вихід...
    Завантажте Gin Web Framework
  • 2
    CEREUS LINUX
    CEREUS LINUX
    CEREUS LINUX базується на MX LINUX con
    varios entornos de escritorios. Це
    додаток, який також можна отримати
    від
    https://sourceforge.net/projects/cereu...
    Завантажити CEREUS LINUX
  • 3
    Завдання тренера
    Завдання тренера
    Task Coach - Ваше дружнє завдання
    менеджер. Task Coach є безкоштовним відкритим
    менеджер завдань джерела. Воно виросло з
    розчарування з приводу інших програм немає
    поводження з композитом...
    Завантажити Task Coach
  • 4
    Механізм баз даних HyperSQL (HSQLDB)
    Механізм баз даних HyperSQL (HSQLDB)
    HSQLDB — механізм реляційної бази даних
    написаний на Java з драйвером JDBC,
    відповідає ANSI SQL:2016. Невеликої,
    швидкий, багатопотоковий механізм і сервер
    з мною...
    Завантажити HyperSQL Database Engine (HSQLDB)
  • 5
    БАТІК-ВІДНОВЛЕННЯ
    БАТІК-ВІДНОВЛЕННЯ
    Проект Recovery, розроблений Batik
    Recovery Teamwork з Індонезії, це
    Batik Recovery є похідною від
    Офіційний TWRP, який був змінений
    розвивати ...
    Завантажити BATIK-RECOVERY
  • 6
    TightVNC
    TightVNC
    TightVNC - це покращена версія VNC,
    чудовий безкоштовний інструмент для віддаленого робочого столу. The
    покращення включають зручну пропускну здатність
    «Тісне» кодування, передача файлів
    в...
    Завантажте TightVNC
  • Детальніше »

Команди Linux

Ad