Faq по phpmyadmin

[6.1] Не можу ні вставити нові рядки в таблицю, ні створити нову таблицю - MySQL видає SQL-помилку.
Уважно ознайомтеся з SQL-помилкою. Часто проблема викликана, неправильним завданням типу поля. Найбільш поширені помилки:
  • Використання VARCHAR без вказівки значення;
  • Використання TEXT або BLOB із зазначенням розміру;
Також, зверніться до глави "Синтаксис" в керівництві MySQL, щоб переконатися, що ваш синтаксис правильний.

[6.2] При створенні таблиці, я клікаю прапорець Index для 2 полів - і phpMyAdmin генерує тільки один індекс з цими двома полями.
У phpMyAdmin 2.2.0 і 2.2.1, таким спосіб створюється так званий складовою індекс (з декількох полів). Якщо необхідно створити два отднльних індексу, то створюєте перший, при створенні таблиці, збережіть, потім викличте властивості таблиці і натисніть посилання "Index" для створення іншого індексу.

[6.3] Як я можу вставити значення null в свою таблицю?
Починаючи з версії 2.2.3, для кожного поля, яке може бути порожнім є свій прапорець "Null". До версії 2.2.3, необхідно було вводити "null" без лапок в якості значення поля. Починаючи з версії 2.5.5, необхідно використовувати прапорець "Null", щоб отримати дійсно значення "NULL", тобто якщо ви введете "NULL" це буде означати, що ви хочете ввести слово "NULL" в поле, але не значення (це працює з PHP4).

[6.4] Як я можу резервувати (бекапіть) свою базу даних або таблицю?
Натисніть на назві бази даних або таблиці в лівому фреймі, відобразяться їх властивості. Потім в меню клікніть "Export", ви можете створювати дамп структури, даних або дамп структури з даними. Дана дія згенерує стандартне SQL вираз, яке може бути використане для відновлення вашої бази даних / таблиці.

Для того щоб phpMyAdmin міг передати створений дамп на ваш комп'ютер, виберіть "Save as file". Залежно від конфігурації PHP, Ви будете бачити варіанти компресії дампа. Див. Також конфігураційну змінну $ cfg [ 'ExecTimeLimit']

[6.5] Як я можу відновити базу даних або таблицю за допомогою дампа? Як запустити ".sql" файл?
Натисніть на імені бази даних в лівому фреймі, відобразяться її властивості. Виберіть "Import" з переліку вкладок в правому фреймі (або "SQL" якщо у вас встановлена ​​версія phpMyAdmin старше 2.7.0). У секції "Location of the text file", вкажіть шлях до файлу вашого дампа або використовуйте кнопку Browse. Потім клікніть Go.

З версії 2.7.0, був переписаний движок імпорту, тому якщо у вас стоїть більш рання версія, то її варто оновити, щоб скористатися новими можливостями.

[6.6] Як використовувати пов'язані таблиці в запитах за зразком?

CREATE TABLE REL_countries (country_code char (1) NOT NULL default '', description varchar (10) NOT NULL default '', PRIMARY KEY (country_code)) TYPE = MyISAM; INSERT INTO REL_countries VALUES ( 'C', 'Canada'); CREATE TABLE REL_persons (id tinyint (4) NOT NULL auto_increment, person_name varchar (32) NOT NULL default '', town_code varchar (5) default '0', country_code char (1) NOT NULL default '', PRIMARY KEY (id) ) TYPE = MyISAM; INSERT INTO REL_persons VALUES (11, 'Marc', 'S', ''); INSERT INTO REL_persons VALUES (15, 'Paul', 'S', 'C'); CREATE TABLE REL_towns (town_code varchar (5) NOT NULL default '0', description varchar (30) NOT NULL default '', PRIMARY KEY (town_code)) TYPE = MyISAM; INSERT INTO REL_towns VALUES ( 'S', 'Sherbrooke'); INSERT INTO REL_towns VALUES ( 'M', 'Montr? Al');

Як приклад використовуємо таблиці persons, towns і countries, всі вони розташовані в БД mydb. Якщо таблиця pma_relation ще не створена, то створіть її так, як описано в секції "Конфігурація". Потім створіть таблиці, які ми використовуємо в якості прикладу:

Див. Також FAQ 6.21 для ознайомлення з додатковими можливостями, які надає "display field": список, що випадає можливих значень.

[6.8] Як створити PDF схему моєї бази даних?
Для початку, конфігураційні змінні "relation", "table_coords" і "pdf_pages" повинні бути заповнені. Потім, Ви повинні продумати макет вашої схеми. Які таблиці будуть представлені на схемі?
  • Виберіть вашу базу даних в лівому фреймі
  • Виберіть "Operations" з навігаційній панелі у верхній частині.
  • Виберіть "Edit PDF Pages" в нижній частині сторінки.
  • Введіть ім'я для першої PDF сторінки і натисніть Go. Якщо вам подобається, Ви можете використовувати "automatic layout," яке помістить всі ваші пов'язані таблиці на нову сторінку.
  • Виберіть ім'я нової сторінки (переконайтеся що селектор "Edit" обраний) і клікайте Go.
  • Виберіть таблицю зі списку, введіть її координати і натисніть Save.

[6.10] Що відбувається з нижнім підкресленням в назві бази даних при створенні привілеїв?
Якщо ви не ставили зворотні слеші перед нижніми підкресленнями, це є груповим символом надання, і в цьому випадку нижнє підкреслення означає "будь-які символи". Таким чином, якщо ім'я бази даних "john_db", користувач отримає права на john1db, john2db.

Якщо ж перед нижніми підкресленнями стоять зворотні слеші, це означає що ім'я бази даних дійсно містить символ нижнього підкреслення.

[6.11] Що за незвичайний символ. на сторінках статистики (statistics pages)?
Він позначає середнє значення ( "average").

[6.14] Як налаштувати SQL Validator?
Щоб використовувати його, вам потрібна версія PHP не молодше 4.3.0, з підтримкою XML, PCRE і PEAR. У командному рядку запустіть "pear install Net_Socket Net_URL HTTP_Request Mail_Mime Net_DIME SOAP" щоб отримати необхідні PEAR модулі.

У свіжій версії pear, є проблема з режимом в Net_DIME, яка вирішується єдиною командою "pear -d preferred_state = beta install -a SOAP". яка встановлює всі необхідні модулі.

Якщо ви використовуєте валідатор, Ви повинні бути впевнені, що будь-який відправляється SQL оператор буде збережений анонімно (імена БД / таблиць / стовпців, записи, значення заміщені загальними значеннями). Власне в phpMyAdmin використовується клас Mimer SQL Validator, який позиціонується як "free SOAP service".

[6.15] Я хочу додати поле BLOB і зробити його індексом, але MySQL повідомляє "BLOB column '.' Used in key specification without a key length".
Правильним рішенням буде створення поля без індексів, потім відобразити структуру таблиці і використовувати діалог "Створення індексу (Create an index)". На цій сторінці Ви зможете вибрати BLOB-поле, і встановити розмір індексу, що є необхідною умовою створення індексу для BLOB поля.

[6.16] Як найефективніше переміщатися по сторінках, що містить безліч полів редагування?
Ви можете використовувати комбінації клавіш Ctrl + arrows (Option + Arrows в Safari) для переміщення по більшості сторінок, що містять безліч редагованих полів (зміна структури таблиці, редагування рядків, і т.д.). Дана опція повинна бути дозволена в конфігурації - см. $ Cfg [ 'CtrlArrowsMoving']). Рекомендується також звернути увагу на директиву $ cfg [ 'DefaultPropDisplay'] ( 'vertical'). вона може зробити редагування більш комфортним.

[6.18] Закладки (Bookmarks): Де я можу зберігати закладки? Чому я не можу бачити деякі закладки нижче вікна запитів? Що є змінною?
Будь виконаний запит може бути збережений як закладка на сторінці, де відображаються результати за допомогою кнопки 'Bookmark this query' (зробити закладку на цей запит) в нижній частині сторінки.

При збереженні закладка зв'язується з базою даних, на якій запускається даний запит. Тепер можна отримати доступ до закладки за допомогою списку на кожній сторінці, блок запитів з'являється для активної бази даних.

Починаючи з phpMyAdmin 2.5.0 Ви також можете зберігати змінні для закладок. Для цього слід використовувати рядок / * [VARIABLE] * / де-небудь у вашому запиті. Все що поміщено в значення блоку введення на сторінці блоку запиту замінить рядок "/ * [VARIABLE] * /" в вашому збереженому запиті. Переконайтеся, що створений запит валиден, інакше Ваш клопотання не буде збережений в базі даних.

Також пам'ятайте, що все інше всередині рядка / * [VARIABLE] * / залишиться у Вашому запиті, але буде звільнена від символів / ** /. Таким чином, можна використовувати:

/ *, [VARIABLE] AS myname * / яка буде приведена до. VARIABLE as myname

в запиті, де VARIABLE це рядок, веденная в блоці введення. Якщо рядок порожня ніякого заміщення проведено не буде.

Більш складний приклад. Припустимо, Ви зберігаєте цей запит:

SELECT Name, Address FROM addresses WHERE 1 / * AND Name LIKE '% [VARIABLE]%' * /

Скажімо, тепер Ви введете "phpMyAdmin" як назва змінної для зберігається запиту, повний запит буде виглядати:

SELECT Name, Address FROM addresses WHERE 1 AND Name LIKE '% phpMyAdmin%'

Ви можете неодноразово використовувати / * [VARIABLE] * / в окремому рядку. ЗВЕРНІТЬ УВАГУ НА відсутність пробілів у конструкції "/ ** /". Будь-які прогалини, вставлені там пізніше будуть виставлені як прогалини у вашому запиті і можуть привести до небажаних результатів, особливо, в разі використання в вираженні "LIKE".

Запит, який повинен бути збережений в ятати обов'язково повинен повертати хоча б один рядок.

[6.19] Як я можу створити простий LaTeX документ щоб включити експортовану таблицю?
Ви можете просто включити таблицю в Ваш LaTeX документ, мінімальний типовий документ може виглядати як показано нижче (мається на увазі, що ви маєте таблицю, експортовану в файл table.tex):

\ Documentclass% або інший клас, який Ви задасте
\ Usepackage% для відображення таблиці
\ Begin% початок документа
\ include

% Включення експортованої таблиці
\ End% кінець документа

[6.20] В MySQL 4, Я бачу безліч баз даних, які мені не належать, і я не можу отримати доступ до них.
Оновлення до MySQL 4 зазвичай дає користувачам глобальні привілеї: CREATE TEMPORARY TABLES, SHOW DATABASES, LOCK TABLES. Ці привілеї також дозволяють користувачам бачити все імена баз даних. Див. Даний баг репорт.

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

[6.21] Як я можу побачити, працюючи в режимі редагування / вставки, список можливих значень для поля, заснованого на зовнішньої таблиці?
Ви повинні встановити відповідні зв'язки між таблицями, а також встановити "display field" у зовнішній таблиці. Для прикладу див. FAQ 6.6. Потім, якщо число значень у зовнішній таблиці - 200 або менше, доступний випадає значень. Ви побачите два списки значень: перший список містить ключі і відображає поля, другий список відображає поля і ключі. Для відображення досить ввести перші символи ключа або поля.

Для 200 значень і більше, з'явиться окреме вікно, що дозволяє переглядати значення зовнішніх ключів і вибирати потрібний.

pear -d preferred_state = beta install -a Spreadsheet_Excel_Writer

Перша частина задає, що ми встановлюємо beta версію даного модуля (ще недоступна стабільна версія) а потім ми повідомляємо сховища назву інсталюється модуля.

Якщо у вас PHP запущений в безпечному режимі (safe mode), Вам необхідно встановити в php.ini для safe_mode_include_dir де розташовані папки модулів PEAR, наприклад:

Для створення тимчасових директорій на UNIX-системах, Ви повинні виконати:

cd phpMyAdmin
mkdir tmp
chmod o + rwx tmp