Ласкаво просимо до phpMyAdmin документації!¶
Зміст:
Вступ¶
phpMyAdmin - це безкоштовний програмний інструмент, написаний на PHP, який призначений для адміністрування сервера баз даних MySQL або MariaDB. Ви можете використовувати phpMyAdmin для виконання більшості завдань адміністрування, включаючи створення бази даних, запуск запитів і додавання облікових записів користувачів.
Підтримуються наступні функції¶
В даний час PhpMyAdmin може:
- створювати, переглядати, редагувати та видаляти бази даних, таблиці, перегляди, стовпці та індекси
- відобразити кілька наборів результатів за допомогою збережених процедур або запитів
- створювати, копіювати, видаляти, перейменовувати і змінювати бази даних, таблиці, стовпці та індекси
- обслуговувати сервер, бази даних і таблиці, з пропозиціями про конфігурацію сервера
- виконувати, редагувати і робити закладки любого SQL-оператора, навіть пакетних запитів
- завантажувати текстові файли в таблиці
- створити [1] і читати дампи таблиць
- експорт [1] даних в різні формати: CSV, XML, PDF, ISO/IEC 26300 - OpenDocument текст і електронна таблиця, Microsoft Word 2000, і LATEX формати
- імпорт даних і MySQL структури з OpenDocument електронних таблиць, як і XML, CSV, і SQL файлів
- адміністрування декількох серверів
- додавати, редагувати та видаляти облікові записи та права користувачів MySQL
- перевірити цілісність даних в таблицях MyISAM
- створити PDF графічний макет бази даних
- глобальний пошук в базі даних чи її підмножинах
- перетворення збережених даних в будь-який формат, використовуючи набір стандартних функцій, відображення BLOB-data у вигляді зображення або посилання на завантаження
- відстеження змін в базах даних, таблицях і поданнях
- підтримка таблиць InnoDB та зовнішніх ключів
- підтримка mysqli, поліпшення MySQL розширень, дивись 1.17 Яку версію баз даних підтримує phpMyAdmin?
- створити, редагувати, виклик, експорт та видалення збережених процедур і функцій
- створити, редагувати, експортувати і видалення подій і тригерів
- спілкуватися на 80 різних мовах
Швидкі клавіші¶
В даний час PhpMyAdmin підтримує такі клавішні комбінації:
- k - Перемикання консолі
- h - Перейти на головну сторінку
- s - Відкрити параметри
- d + s - Перейти до структури бази даних (За умови, що ви перебуваєте на сторінці бази даних)
- d + f - Пошук в базі даних (За умови, що ви перебуваєте на сторінці бази даних)
- t + s - Перехід до структури таблиці (За умови, що ви перебуваєте на сторінці таблиці)
- t + f - Пошук в таблиці (За умови, що ви перебуваєте на сторінці таблиці)
- backspace - Вернутись на попередню сторінку.
До користувачів¶
Багато людей відчувають труднощі в розумінні концепції управління користувачами в PhpMyAdmin. Коли користувач реєструється в PhpMyAdmin, то ім’я користувача та пароль передаються безпосередньо в MySQL. Сам phpMyAdmin не здійснює управління обліковими записами (окрім управління інформацію облікового запису користувача MySQL); всі користувачі повинні бути дійсними користувачами MySQL.
Виноски
[1] | (1, 2) phpMyAdmin can compress (ZIP, GZip or RFC 1952
formats) dumps and CSV exports if you use PHP with
Zlib support (--with-zlib ).
Proper support may also need changes in php.ini . |
Вимоги¶
Веб-сервер¶
Оскільки інтерфейс PhpMyAdmin базується повністю в вашому браузері, вам потрібен веб-сервер (наприклад Apache, nginx, IIS) для інсталяції файлів phpMyAdmin.
PHP¶
- You need PHP 8.1.2 or newer, with
session
support, the Standard PHP Library (SPL) extension, hash, ctype, and JSON support. - Розширення
mbstring
(дивитися mbstring) настійно рекомендується з міркувань продуктивності. - Для підтримки завантаження файлів ZIP, вам потрібно в PHP
zip
розширення. - Вам потрібна підтримка GD2 в PHP для відображення вбудованих мініатюр з файлів JPEGs («image/jpeg: inline») з їх вихідним співвідношенням сторін.
- When using the cookie authentication (the default), the openssl extension is strongly suggested.
- Для підтримки прогрес бару завантаження, дивитися 2.9 Перегляд панелі прогресу завантаження.
- To support XML and Open Document Spreadsheet importing, you need the libxml extension.
- To support reCAPTCHA on the login page, you need the openssl extension.
- To support displaying phpMyAdmin’s latest version, you need to enable
allow_url_open
in yourphp.ini
or to have the curl extension.
База даних¶
phpMyAdmin підтримує MySQL-сумісні бази даних.
- MySQL 5.5 або більш пізньої версії
- MariaDB 5.5 або більш пізньої версії
Дивись також
Веб-браузер¶
Щоб отримати доступ до PhpMyAdmin вам потрібен веб-браузер з ввімкненими cookies і JavaScript.
You need a browser which is supported by Bootstrap 4.5, see <https://getbootstrap.com/docs/4.5/getting-started/browsers-devices/>.
Змінено в версії 5.2.0: You need a browser which is supported by Bootstrap 5.0, see <https://getbootstrap.com/docs/5.0/getting-started/browsers-devices/>.
Встановлення¶
PhpMyAdmin не застосовує жодних спеціальних методів безпеки для сервера баз даних MySQL. Це як і раніше робота системного адміністратора правильно надавати дозволи на бази даних MySQ. phpMyAdmin,: guilabel: „Користувачі“ сторінки можуть бути використані для цього.
Дистрибутиви Linux¶
phpMyAdmin входить у більшість дистрибутивів Linux. Рекомендується використовувати пакети поширення, коли це можливо - вони, як правило, забезпечують інтеграцію вашого дистрибутива і ви будете автоматично отримувати оновлення безпеки від вашого дистрибутива.
Debian та Ubuntu¶
Most Debian and Ubuntu versions include a phpMyAdmin package, but be aware that
the configuration file is maintained in /etc/phpmyadmin
and may differ in
some ways from the official phpMyAdmin documentation. Specifically, it does:
- Конфігурація веб-сервера (працює з Apache і Lighttpd).
- Створити Зберігання конфігурації phpMyAdmin використовуючи dbconfig-common.
- Забезпечення сценарію установки, дивитися Сценарій установки на Debian, Ubuntu і похідних.
Додаткові відомості про встановлення пакетів Debian або Ubuntu доступні на нашій вікі.
Дивись також
Докладніші відомості можна знайти в README.Debian (встановлено як /usr/share/doc/phpmyadmin/README.Debian
з пакета).
OpenSUSE¶
OpenSUSE вже поставляється з пакетом phpMyAdmin, просто встановіть пакети з openSUSE Build Service.
Gentoo¶
Gentoo надає phpMyAdmin пакет з базової конфігурації, а також webapp-config
конфігурації. Використовуйте emerge dev-db/phpmyadmin
для встановлення.
Mandriva¶
Mandriva поставляє пакет phpMyAdmin в своїх contrib
гілках і може бути встановлений за допомогою звичайного Control Center.
Fedora¶
Fedora поставляє пакет phpMyAdmin, але майте на увазі, що конфігураційний файл зберігається в /etc/phpMyAdmin/
і може відрізнятися в деякій мірі від офіційної документації PhpMyAdmin.
Red Hat Enterprise Linux¶
Red Hat Enterprise Linux itself and thus derivatives like CentOS don’t
ship phpMyAdmin, but the Fedora-driven repository
Extra Packages for Enterprise Linux (EPEL)
is doing so, if it’s
enabled.
But be aware that the configuration file is maintained in
/etc/phpMyAdmin/
and may differ in some ways from the
official phpMyAdmin documentation.
Установка на Windows¶
Найпростіший спосіб встановити phpMyAdmin на Windows це використати продукти сторонніх виробників, які включають в себе phpMyAdmin разом з базою даних і веб-сервером, таких як XAMPP.
Ви можете дізнатися більше про такі параметри в Wikipedia.
Встановлення з Git¶
Щоб встановити програму Git, вам знадобляться кілька підтримуючих програм:
- Git щоб завантажити джерело, або ви можете завантажити останнє джерело безпосередньо з Github
- Composer
- Node.js (version 14 or higher)
- Yarn
Ви можете клонувати поточне джерело phpMyAdmin з https://github.com/phpmyadmin/phpmyadmin.git
:
git clone https://github.com/phpmyadmin/phpmyadmin.git
Крім того, вам необхідно встановити залежності за допомогою Composer:
composer update
Якщо ви не маєте наміру розробляти, ви можете пропустити установку інструментів розробника, посилаючись на:
composer update --no-dev
Нарешті, вам доведеться використовувати Yarn для встановлення деяких залежностей JavaScript:
yarn install --production
Установка за допомогою Composer¶
Ви можете встановити phpMyAdmin за допомогою Composer tool, починаючи з 4.7.0 версії автоматично відображаються, за замовчанням Packagist репозиторій.
Примітка
Зміст сховища Composer автоматично генерується окремо з випусків, так що зміст не має бути 100% таким же, як при завантаженні tar-архіву.
Для установки phpMyAdmin просто запустіть:
composer create-project phpmyadmin/phpmyadmin
В якості альтернативи ви можете використовувати свій власний composer репозиторій, який містить випуски tar-архівів і доступний на <https://www.phpmyadmin.net/packages.json>:
composer create-project phpmyadmin/phpmyadmin --repository-url=https://www.phpmyadmin.net/packages.json --no-dev
Установка з використанням Docker¶
phpMyAdmin comes with a Docker official image, which you can easily deploy. You can download it using:
docker pull phpmyadmin
phpMyAdmin використовує порт 80. Він підтримує кілька способів конфігурації зв’язку з сервером бази даних, функцією зв’язку Docker, пов’язуючи ваш контейнер бази даних з db
для phpMyAdmin (вказавши --link your_db_host:db
) або змінними оточення (в даному випадку це до вашого налаштування мережі в Docker щоб дозволити phpMyAdmin контейнеру доступ до бази даних контейнера по мережі).
Змінні оточення Docker¶
Ви можете налаштувати декілька функцій phpMyAdmin з використанням змінних оточення:
-
PMA_ARBITRARY
¶ Дозволяє вам ввести назву хоста сервера бази даних в формі авторизації.
Дивись також
-
PMA_HOST
¶ Ім’я хоста або IP-адрес сервера бази даних для використання.
Дивись також
-
PMA_HOSTS
¶ Розділені комами імена хостів або IP-адреси серверів баз даних для використання.
Примітка
Використовується тільки якщо
PMA_HOST
є пустий.
-
PMA_VERBOSE
¶ Багатомовне ім’я сервера бази даних.
Дивись також
-
PMA_VERBOSES
¶ Розділені комами багатомовне ім’я серверів баз даних.
Примітка
Використовується тільки якщо
PMA_VERBOSE
є пустий.
-
PMA_USER
¶ Ім’я користувача для Конфігурація режиму автентифікації.
-
PMA_PASSWORD
¶ Паспорт користувача для Конфігурація режиму автентифікації.
-
PMA_PORT
¶ Порт сервера бази даних до використання.
-
PMA_PORTS
¶ Розділені комами порти сервера баз даних для використання.
Примітка
Використовується тільки якщо
PMA_PORT
є пустий.
-
PMA_SOCKET
¶ Socket file for the database connection.
-
PMA_SOCKETS
¶ Comma-separated list of socket files for the database connections.
Примітка
Used only if
PMA_SOCKET
is empty.
-
PMA_ABSOLUTE_URI
¶ Повний шлях (
https://pma.example.net/
) де реверсивний проксі-сервер робить phpMyAdmin доступним.Дивись також
-
PMA_QUERYHISTORYDB
¶ When set to true, enables storing SQL history to
$cfg['Servers'][$i]['pmadb']
. When false, history is stored in the browser and is cleared when logging out.Дивись також
Дивись також
-
PMA_QUERYHISTORYMAX
¶ When set to an integer, controls the number of history items.
Дивись також
-
PMA_CONTROLHOST
¶ When set, this points to an alternate database host used for storing the «Зберігання конфігурації phpMyAdmin» database.
Дивись також
-
PMA_CONTROLUSER
¶ Defines the username for phpMyAdmin to use for the «Зберігання конфігурації phpMyAdmin» database.
Дивись також
-
PMA_CONTROLPASS
¶ Defines the password for phpMyAdmin to use for the «Зберігання конфігурації phpMyAdmin» database.
Дивись також
-
PMA_CONTROLPORT
¶ When set, will override the default port (3306) for connecting to the control host.
Дивись також
-
PMA_PMADB
¶ When set, define the name of the database to be used for the «Зберігання конфігурації phpMyAdmin» database. When not set, the advanced features are not enabled by default: they can still potentially be enabled by the user when logging in with the Нульова конфігурація feature.
Примітка
Рекомендовані значення: phpmyadmin або pmadb
Дивись також
-
HIDE_PHP_VERSION
¶ If defined, this option will hide the PHP version (expose_php = Off). Set to any value (such as HIDE_PHP_VERSION=true).
-
UPLOAD_LIMIT
¶ If set, this option will override the default value for apache and php-fpm (this will change
upload_max_filesize
andpost_max_size
values).Примітка
Format as [0-9+](K,M,G) default value is 2048K
-
MEMORY_LIMIT
¶ If set, this option will override the phpMyAdmin memory limit
$cfg['MemoryLimit']
and PHP’s memory_limit.Примітка
Format as [0-9+](K,M,G) where K is for Kilobytes, M for Megabytes, G for Gigabytes and 1K = 1024 bytes. Default value is 512M.
-
MAX_EXECUTION_TIME
¶ If set, this option will override the maximum execution time in seconds for phpMyAdmin
$cfg['ExecTimeLimit']
and PHP’s max_execution_time.Примітка
Format as [0-9+]. Default value is 600.
-
PMA_CONFIG_BASE64
¶ If set, this option will override the default config.inc.php with the base64 decoded contents of the variable.
-
PMA_USER_CONFIG_BASE64
¶ If set, this option will override the default config.user.inc.php with the base64 decoded contents of the variable.
-
PMA_UPLOADDIR
¶ If set, this option will set the path where files can be saved to be available to import (
$cfg['UploadDir']
)
-
PMA_SAVEDIR
¶ If set, this option will set the path where exported files can be saved (
$cfg['SaveDir']
)
-
APACHE_PORT
¶ If set, this option will change the default Apache port from 80 in case you want it to run on a different port like an unprivileged port. Set to any port value (such as APACHE_PORT=8090).
За замовчуванням, Cookie режим автентифікації використовується, але якщо PMA_USER
і PMA_PASSWORD
встановлені, він переключається на Конфігурація режиму автентифікації.
Примітка
Ваші облікові дані необхідні для авторизації зберігаються на сервері MySQL, у випадку з Docker image, існують різні способи, щоб встановити їх (наприклад MYSQL_ROOT_PASSWORD
при запуску MySQL контейнер). Будь ласка, перегляньте документацію MariaDB container або MySQL container.
Настроювання конфігурації¶
Крім того, конфігурація може бути змінена шляхом /etc/phpmyadmin/config.user.inc.php
. Якщо файл існує, він буде завантажений після того, як конфігурація з генерується з вищевказаної змінної середовища, так що ви можете перевизначити будь-які змінні конфігурації. Ця конфігурація може бути додана в якості тому при виклику docker за допомогою -v /some/local/directory/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php параметрів.
Зверніть увагу, що доданий файл конфігурації застосовується після того, як Змінні оточення Docker, але ви можете перевизначити будь-яке з значень.
Наприклад, щоб змінити за замовчуванням характеристики експорту CSV ви можете використовувати наступний файл конфігурації:
<?php
$cfg['Export']['csv_columns'] = true;
Ви також можете використовувати його для визначення конфігурації сервера замість використання змінних середовища, перелічених у Змінні оточення Docker:
<?php
/* Override Servers array */
$cfg['Servers'] = [
1 => [
'auth_type' => 'cookie',
'host' => 'mydb1',
'port' => 3306,
'verbose' => 'Verbose name 1',
],
2 => [
'auth_type' => 'cookie',
'host' => 'mydb2',
'port' => 3306,
'verbose' => 'Verbose name 2',
],
];
Дивись також
Дивитися Конфігурація для докладного опису опцій конфігурації.
Томи Docker¶
Ви можете використовувати наступні томи для налаштування характеристик зображення:
/etc/phpmyadmin/config.user.inc.php
Може використовуватися для додаткових налаштувань, дивитися попередню главу для більш докладної інформації.
/sessions/
Каталог зберігання PHP сесій. Ви можете спільно використовувати це, наприклад, при використанні Signon режим автентифікації.
/www/themes/
Каталог, де phpMyAdmin шукає теми. За умовчанням включені лише ті, що постачаються разом із phpMyAdmin, але ви можете включити додаткові теми phpMyAdmin (дивіться Користувацькі теми) з допомогою томів Docker.
Приклади Docker¶
Для підключення phpMyAdmin до вказаного сервера, використовуйте:
docker run --name phpmyadmin -d -e PMA_HOST=dbhost -p 8080:80 phpmyadmin:latest
Для підключення phpMyAdmin до декількох серверів використовуйте:
docker run --name phpmyadmin -d -e PMA_HOSTS=dbhost1,dbhost2,dbhost3 -p 8080:80 phpmyadmin:latest
Щоб використовувати опцію довільного сервера:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 -e PMA_ARBITRARY=1 phpmyadmin:latest
Ви також можете пов’язати контейнер бази даних використовуючи Докер:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 phpmyadmin:latest
Запуск з додатковою конфігурацією:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 -v /some/local/directory/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php phpmyadmin:latest
Робота з додатковими темами:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 -v /some/local/directory/custom/phpmyadmin/themeName/:/var/www/html/themes/themeName/ phpmyadmin:latest
Використання docker-compose¶
В якості альтернативи, ви можете також використовувати docker-compose з docker-compose.yml з <https://github.com/phpmyadmin/docker>. Це буде запускати phpMyAdmin з довільним сервером - дозволяючи вам вказати MySQL/MariaDB сервер на сторінці авторизації.
docker compose up -d
Налаштування файлу конфігурації за допомогою docker-compose¶
Ви можете використовувати зовнішній файл для налаштування конфігурації PhpMyAdmin і передати його за допомогою директиви томів:
phpmyadmin:
image: phpmyadmin:latest
container_name: phpmyadmin
environment:
- PMA_ARBITRARY=1
restart: always
ports:
- 8080:80
volumes:
- /sessions
- ~/docker/phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php
- /custom/phpmyadmin/theme/:/www/themes/theme/
Дивись також
Працюють у фоновому режимі haproxy в підкаталозі¶
Кали ви хочете запускати phpMyAdmin у Docker контейнері в підкаталозі, вам потрібно переписати шлях запиту на сервері проксінг запитів.
Наприклад, використовуючи haproxy це може бути зроблено, як:
frontend http
bind *:80
option forwardfor
option http-server-close
### NETWORK restriction
acl LOCALNET src 10.0.0.0/8 192.168.0.0/16 172.16.0.0/12
# /phpmyadmin
acl phpmyadmin path_dir /phpmyadmin
use_backend phpmyadmin if phpmyadmin LOCALNET
backend phpmyadmin
mode http
reqirep ^(GET|POST|HEAD)\ /phpmyadmin/(.*) \1\ /\2
# phpMyAdmin container IP
server localhost 172.30.21.21:80
При використанні traefik, щось на зразок повинно працювати:
defaultEntryPoints = ["http"]
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
regex = "(http:\\/\\/[^\\/]+\\/([^\\?\\.]+)[^\\/])$"
replacement = "$1/"
[backends]
[backends.myadmin]
[backends.myadmin.servers.myadmin]
url="http://internal.address.to.pma"
[frontends]
[frontends.myadmin]
backend = "myadmin"
passHostHeader = true
[frontends.myadmin.routes.default]
rule="PathPrefixStrip:/phpmyadmin/;AddPrefix:/"
Потім ви повинні вказати PMA_ABSOLUTE_URI
в docker-compose конфігурації:
version: '2'
services:
phpmyadmin:
restart: always
image: phpmyadmin:latest
container_name: phpmyadmin
hostname: phpmyadmin
domainname: example.com
ports:
- 8000:80
environment:
- PMA_HOSTS=172.26.36.7,172.26.36.8,172.26.36.9,172.26.36.10
- PMA_VERBOSES=production-db1,production-db2,dev-db1,dev-db2
- PMA_USER=root
- PMA_PASSWORD=
- PMA_ABSOLUTE_URI=http://example.com/phpmyadmin/
IBM Cloud¶
One of our users has created a helpful guide for installing phpMyAdmin on the IBM Cloud platform.
Швидка установка¶
- Choose an appropriate distribution kit from the phpmyadmin.net
Downloads page. Some kits contain only the English messages, others
contain all languages. We’ll assume you chose a kit whose name
looks like
phpMyAdmin-x.x.x-all-languages.tar.gz
. - Переконайтеся, що ви завантажили справжній архів, дивіться Перевірка релізів phpMyAdmin.
- Розмістіть розпаковані tar або zip (не забудьте розпакувати підкаталоги):
tar -xzvf phpMyAdmin_x.x.x-all-languages.tar.gz
в кореневому каталозі документів мережевого сервера. Якщо ви не маєте прямого доступу до кореневого каталогу документів, помістіть файли в каталог на локальному комп’ютері, і, після кроку 4, перенесіть каталог на ваш веб-сервер, використовуючи, наприклад, FTP. - Переконайтеся, що всі скрипти мають відповідного власника (якщо PHP працює в безпечному режимі, маючи кілька скриптів з власником, відмінними від власника інших скриптів, буде проблема). Дивіться 4.2. Який спосіб зробити phpMyAdmin захищеним від доступу зловмисників? and 1.26 Я тільки встановив phpMyAdmin в корені документа IIS, але при спробі запустити phpMyAdmin я отримую помилку «Не вказано вхідний файл». для пропозицій.
- Тепер ви повинні налаштувати вашу установку. Є два методи, які можуть бути використані. Традиційний, користувачі вручну редагують копію
config.inc.php
, але тепер майстер стилю установки призначений для тих, хто вважає за краще графічну установку. Створенняconfig.inc.php
як і раніше найшвидший спосіб, щоб почати роботу і необхідний для деяких додаткових функцій.
Cтворення файлу вручну¶
To manually create the file, simply use your text editor to create the
file config.inc.php
(you can copy config.sample.inc.php
to get
a minimal configuration file) in the main (top-level) phpMyAdmin
directory (the one that contains index.php
). phpMyAdmin first
loads the default configuration values and then overrides those values
with anything found in config.inc.php
. If the default value is
okay for a particular setting, there is no need to include it in
config.inc.php
. You’ll probably need only a few directives to get going; a
simple configuration may look like this:
<?php
// The string is a hexadecimal representation of a 32-bytes long string of random bytes.
$cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
$i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
// if you insist on "root" having no password:
// $cfg['Servers'][$i]['AllowNoPassword'] = true;
Або, якщо ви вважаєте за краще не авторизуватися щораз при вході:
<?php
$i=0;
$i++;
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'changeme'; // use here your password
$cfg['Servers'][$i]['auth_type'] = 'config';
Попередження
Зберігати паролі в конфігурації небезпечно, оскільки будь-хто зможе маніпулювати вашою базою даних.
Для докладного пояснення можливих значень конфігурації, дивіться Конфігурація цього документа.
Використання сценарію установки¶
Замість ручного редагування config.inc.php
, ви можете використати функцію установки phpMyAdmin. Файл може бути створений використовуючи установку і ви можете завантажити його для завантаження на сервер.
Потім відкрийте браузер і відвідайте розташування де ви встановили phpMyAdmin, з /setup
суфікс. Зміни не зберігаються на сервері, ви повинні використовувати Download кнопку, щоб зберегти їх на свій комп’ютер і потім завантажити на сервер.
Now the file is ready to be used. You can choose to review or edit the file with your favorite editor, if you prefer to set some advanced options that the setup script does not provide.
- Якщо ви використовуєте
auth_type
«config», рекомендується вам захистити каталог установки PhpMyAdmin, тому що при використанні конфігурації не потрібно користувачеві вводити пароль для доступу до установки PhpMyAdmin. Використовуйте альтернативний метод перевірки автентичності, рекомендується, наприклад, використовувати HTTP–AUTH в .htaccess файлі або включити використанняauth_type
cookie чи http. Дивіться Інтернет провайдери, багатокористувацькі установки для отримання додаткової інформації, особливо 4.4 phpMyAdmin завжди дає «Доступ заборонено» при використанні автентифікації HTTP.. - Відкрийте основний каталог phpMyAdmin в вашому браузері. phpMyAdmin повинен тепер показувати на екрані привітання і ваші бази даних, або діалогове вікно авторизації при використанні HTTP або режиму cookie аутентифікації.
Сценарій установки на Debian, Ubuntu і похідних¶
Debian і Ubuntu змінили спосіб увімкнення та вимкнення сценарію налаштування таким чином, що одна команда повинна бути виконана для будь-якого з них.
Щоб дозволити редагування конфігурації викличте:
/usr/sbin/pma-configure
Для того, щоб заблокувати редагування конфігурації викличте:
/usr/sbin/pma-secure
Сценарій установки на OpenSUSE¶
Деякі випуски OpenSUSE не включають сценарій установки в пакеті. У разі, якщо ви хочете створити конфігурацію на них, ви можете завантажити вихідний пакет з <https://www.phpmyadmin.net/> або використати налаштування сценарію на нашому демо-сервері: <https://demo.phpmyadmin.net/master/setup/>.
Перевірка релізів phpMyAdmin¶
З липня 2015 року всі релізи phpMyAdmin криптографічно підписуються рилізинг розробником, яким до січня 2016 року був Marc Delisle. Його ідентифікаційний ключ 0xFEFC65D181AF644A, його PGP відбиток:
436F F188 4B1A 0C3F DCBF 0D79 FEFC 65D1 81AF 644A
і ви можете отримати більш детальну інформацію про ідентифікацію від <https://keybase.io/lem9>.
Починаючи з січня 2016 року, менеджер релізу Isaac Bennetch. Його ідентифікаційний ключ 0xCE752F178259BD92, його PGP відбиток:
3D06 A59E CE73 0EB7 1B51 1C17 CE75 2F17 8259 BD92
і ви можете отримати більш детальну інформацію про ідентифікацію від <https://keybase.io/ibennetch>.
Деякі додаткові завантаження (наприклад теми) можуть бути підписані Michal Čihař. Його ідентифікаційний ключ 0x9C27B31342B7511D, його PGP відбиток:
63CB 1DF1 EF12 CF2A C0EE 5A32 9C27 B313 42B7 511D
і ви можете отримати детальнішу інформацію про ідентифікацію від <https://keybase.io/nijel>.
Ви повинні переконатися в тому, що підпис відповідає архіву який ви завантажили. Таким чином, ви можете бути впевнені, що ви використовуєте один і той же код, який був випущений. Ви повинні також перевірити дату підпису, щоб переконатися, що ви завантажили останню версію.
Each archive is accompanied by .asc
files which contain the PGP signature
for it. Once you have both of them in the same folder, you can verify the signature:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: Can't check signature: public key not found
As you can see gpg complains that it does not know the public key. At this point, you should do one of the following steps:
- Завантажити keyring з нашого сервера завантаження, потім імпортуйте його з:
$ gpg --import phpmyadmin.keyring
- Завантажити та імпортувати ключ з одного з ключових серверів:
$ gpg --keyserver hkp://pgp.mit.edu --recv-keys 3D06A59ECE730EB71B511C17CE752F178259BD92
gpg: requesting key 8259BD92 from hkp server pgp.mit.edu
gpg: key 8259BD92: public key "Isaac Bennetch <bennetch@gmail.com>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
Це трохи покращить ситуацію - в цей момент ви можете перевірити, що підпис від даного ключа є правильним, але ви все ще не можете довіряти імені, яке використовується в ключі:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: Good signature from "Isaac Bennetch <bennetch@gmail.com>"
gpg: aka "Isaac Bennetch <isaac@bennetch.org>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 3D06 A59E CE73 0EB7 1B51 1C17 CE75 2F17 8259 BD92
The problem here is that anybody could issue the key with this name. You need to ensure that the key is actually owned by the mentioned person. The GNU Privacy Handbook covers this topic in the chapter Validating other keys on your public keyring. The most reliable method is to meet the developer in person and exchange key fingerprints, however, you can also rely on the web of trust. This way you can trust the key transitively though signatures of others, who have met the developer in person.
Після того, як ключ є довірений, попередження не буде відбуватися:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: Good signature from "Isaac Bennetch <bennetch@gmail.com>" [full]
Якщо підпис недійсний (архів був змінений), ви отримаєте чітку помилку, незалежно від того, що ключ є довірений чи ні:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: BAD signature from "Isaac Bennetch <bennetch@gmail.com>" [unknown]
Зберігання конфігурації phpMyAdmin¶
Змінено в версії 3.4.0: До PhpMyAdmin 3.4.0 це називалося Linked Tables Infrastructure, але назву було змінено через тривалий обсяг зберігання.
Для цілого набору додаткових функцій (Закладки, коментарі, SQL- історія, механізм відстеження, PDF-генерація, Перетворення, Відносини etc.) вам потрібно створити набір спеціальних таблиць. Ці таблиці можуть бути розташовані у власній базі даних, або в основній базі даних для багатокористувацької установки (ця база даних потім буде доступна для controluser, тому ніякий інший користувач не повинен мати прав на неї).
Нульова конфігурація¶
In many cases, this database structure can be automatically created and
configured. This is called “Zero Configuration” mode and can be particularly
useful in shared hosting situations. “ZeroConf” mode is on by default, to
disable set $cfg['ZeroConf']
to false.
Наступні три сценарії охоплюють режим нульової конфігурації:
- При вході в базу даних, де таблиці для зберігання конфігурації немає, phpMyAdmin пропонує створити її перейшовши по вкладці Операції.
- При вході в базу даних, де таблиці вже існують, програмне забезпечення автоматично виявляє це і починає використовувати їх. Це найбільш поширена ситуація; після того, як таблиці спочатку створюються автоматично вони постійно використовуються, не заважаючи користувачеві; це також найкорисніше на віртуальному хостингу, де користувач не може редагувати
config.inc.php
і, як правило, користувач має доступ тільки до однієї бази даних. - При наявності доступу до кількох баз даних, якщо користувач вперше входить в базу даних, що містять таблиці для зберігання конфігурації потім переходять на іншу базу даних, phpMyAdmin продовжить використовувати таблиці з першої бази даних; користувачу не буде виводитись підказка для створення кількох таблиць в новій базі даних.
Настроювання вручну¶
Будь ласка, подивіться ваш ./sql/
каталог, де ви повинні знайти файл з ім’ям create_tables.sql. (Якщо ви використовуєте сервер для Windows, зверніть особливу увагу на 1.23 Я запускаю MySQL на машині Win32. Кожного разу, коли я створюю нову таблицю, імена стовпців та таблиць змінюються на нижній регістр!).
Якщо ви вже мали цю інфраструктуру і:
- оновити до MySQL 4.1.2 або новішої, будь ласка, використовуйте
sql/upgrade_tables_mysql_4_1_2+.sql
. - оновити до phpMyAdmin 4.3.0 або новішої з 2.5.0 або новішої (<= 4.2.x), будь ласка, використовуйте
sql/upgrade_column_info_4_3_0+.sql
. - оновити phpMyAdmin до 4.7.0 або новішої з 4.3.0 або новішої, будь ласка, використовуйте
sql/upgrade_tables_4_7_0+.sql
.
а потім створити нові таблиці з допомогою імпорту sql/create_tables.sql
.
Ви можете використовувати phpMyAdmin для створення таблиць для вас. Зверніть увагу, що вам може знадобитися спеціальний (адміністратор) привілей для створення бази даних і таблиць, і що сценарію можуть знадобитися деякі налаштування, в залежності від імені бази даних.
Після того, як імпортований sql/create_tables.sql
файл, ви повинні вказати імена таблиць у вашому config.inc.php
файлі. Директиви, які використовуються для цього можна знайти в Конфігурація.
Ви також повинні мати controluser ($cfg['Servers'][$i]['controluser']
і $cfg['Servers'][$i]['controlpass']
настройки) з відповідними правами на ці таблиці. Наприклад, ви можете створити його, використовуючи наступний оператор:
І для будь-якої версії MariaDB:
CREATE USER 'pma'@'localhost' IDENTIFIED VIA mysql_native_password USING 'pmapass';
GRANT SELECT, INSERT, UPDATE, DELETE ON `<pma_db>`.* TO 'pma'@'localhost';
Для MySQL 8.0 і новіших версій:
CREATE USER 'pma'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'pmapass';
GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';
Для MySQL старше 8.0:
CREATE USER 'pma'@'localhost' IDENTIFIED WITH mysql_native_password AS 'pmapass';
GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';
Note that MySQL installations with PHP older than 7.4 and MySQL newer than 8.0 may require using the mysql_native_password authentication as a workaround, see 1.45 Під час спроби входу я отримую повідомлення про невідомий метод автентифікації caching_sha2_password for details.
Оновлення зі старішої версії¶
Попередження
Ніколи не розпаковуйте нову версію поверх існуючої установки phpMyAdmin, завжди спочатку видаліть старі файли зберігши тільки конфігурацію.
This way, you will not leave any old or outdated files in the directory, which can have severe security implications or can cause various breakages.
Просто скопіюйте config.inc.php
від попередньої установки в недавно розпаковану. Конфігураційні файли зі старих версій можуть знадобитися для налаштувань, так як деякі параметри були змінені або видалені.
The complete upgrade can be performed in a few simple steps:
- Завантажте останню версію phpMyAdmin від <https://www.phpmyadmin.net/downloads/>.
- Перейменуйте теку phpMyAdmin, що існує (наприклад, в
phpmyadmin-old
). - Unpack freshly downloaded phpMyAdmin to the desired location (for example
phpmyadmin
). - Copy
config.inc.php`
from old location (phpmyadmin-old
) to the new one (phpmyadmin
). - Перевірте, що все працює належним чином.
- Remove backup of a previous version (
phpmyadmin-old
).
Якщо ви оновили свій сервер MySQL з версії, що передує 4.1.2 до версії 5.x або новішої і якщо ви використовуєте сховище конфігурації PhpMyAdmin, ви повинні запустити SQL сценарій в sql/upgrade_tables_mysql_4_1_2+.sql
.
Якщо ви оновили ваш phpMyAdmin до 4.3.0 або новішої з 2.5.0 або новішої (<= 4.2.x) і якщо ви використовуєте сховище конфігурації phpMyAdmin, ви повинні запустити SQL сценарій в sql/upgrade_column_info_4_3_0+.sql
.
Не забудьте очистити кеш браузера, очистити стару сесію вийшовши з системи і повторного ввійшовши.
Використання режиму перевірки автентичності¶
HTTP and cookie authentication modes are recommended in a multi-user environment where you want to give users access to their own database and don’t want them to play around with others. Nevertheless, be aware that MS Internet Explorer seems to be really buggy about cookies, at least till version 6. Even in a single-user environment, you might prefer to use HTTP or cookie mode so that your user/password pair are not in clear in the configuration file.
HTTP і cookie автентифікації режим є безпечнішим: інформація про вхід в MySQL не повинні бути встановлені у файлі конфігурації phpMyAdmin (крім, можливо, $cfg['Servers'][$i]['controluser']
). Однак, майте на увазі, що пароль переміщається у вигляді звичайного тексту, якщо ви не використовуєте протокол HTTPS. У режимі cookie, пароль зберігаються, шифрується за допомогою алгоритму AES, в тимчасовому cookie.
Then each of the true users should be granted a set of privileges on a set of particular databases. Normally you shouldn’t give global privileges to an ordinary user unless you understand the impact of those privileges (for example, you are creating a superuser). For example, to grant the user real_user with all privileges on the database user_base:
GRANT ALL PRIVILEGES ON user_base.* TO 'real_user'@localhost IDENTIFIED BY 'real_password';
Те, що користувач тепер може зробити, це повністю контролюється системою управління користувачами MySQL. З HTTP або cookie режим автентифікації, не потрібно заповнювати поля користувач/пароль всередині $cfg['Servers']
.
Дивись також
1.32 Чи можу я використовувати HTTP-аутентифікацію за допомогою IIS?, 1.35 Чи можу я використовувати HTTP-аутентифікацію з Apache CGI?, 4.1 Я Інтернет-провайдер. Чи можу я налаштувати одну центральну копію phpMyAdmin або мені потрібно встановити його для кожного клієнта?, 4.2. Який спосіб зробити phpMyAdmin захищеним від доступу зловмисників?, 4.3 Я отримую помилки про неможливість включення файлу в /lang або в /libraries.
HTTP режим автентифікації¶
Використовуючи HTTP Основний метод аутентифікації що дозволяє вам увійти в систему як будь-який дійсний користувач MySQL.
Підтримується з більшістю конфігурацій PHP. Для IIS (ISAPI) підтримка за допомогою CGI PHP бачити 1.32 Чи можу я використовувати HTTP-аутентифікацію за допомогою IIS?, для використання з Apache CGI бачити 1.35 Чи можу я використовувати HTTP-аутентифікацію з Apache CGI?.
Коли PHP працює під управлінням веб-сервера Apache mod_proxy_fcgi (наприклад з PHP-FPM),
Authorization
заголовки не передаються до основного додатка FCGI, таким чином, що ваші облікові дані не досягнуть додатка. У цьому випадку, ви можете додати наступну директиву конфігурації:SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
Бачити також 4.4 phpMyAdmin завжди дає «Доступ заборонено» при використанні автентифікації HTTP. про невикористання .htaccess механізм поряд з „HTTP“ режим автентифікації.
Примітка
There is no way to do proper logout in HTTP authentication, most browsers will remember credentials until there is no different successful authentication. Because of this, this method has a limitation that you can not login with the same user after logout.
Cookie режим автентифікації¶
- Ім’я користувача і пароль зберігаються в cookies під час сеансу і пароль буде видалений, коли він закінчиться.
- У цьому режимі, користувач може дійсно вийти з phpMyAdmin і знову увійти в систему з тим же ім’ям (це не представляється можливим з HTTP режим автентифікації).
- Якщо ви хочете, щоб дозволити користувачам вводити будь-яке ім’я хоста для підключення (а не тільки на серверах, які налаштовані в
config.inc.php
), бачити$cfg['AllowArbitraryServer']
директиви. - Як вже згадувалось в Вимоги розділ, що має
openssl
розширення прискорить доступ значно, але не є обов’язковим.
Signon режим автентифікації¶
- This mode is a convenient way of using credentials from another application to authenticate to phpMyAdmin to implement a single signon solution.
- Інша програма має зберігати реєстраційну інформацію в даних сеансу (бачити
$cfg['Servers'][$i]['SignonSession']
і$cfg['Servers'][$i]['SignonCookieParams']
) або вам потрібно реалізувати сценарій, щоб повернути повноваження (бачити$cfg['Servers'][$i]['SignonScript']
). - Якщо облікові дані не доступні, користувач перенаправляється до
$cfg['Servers'][$i]['SignonURL']
, де ви повинні управляти процесом входу в систему.
Дуже простий приклад збереження облікових даних в сесії доступний як examples/signon.php
:
<?php
/**
* Single signon for phpMyAdmin
*
* This is just example how to use session based single signon with
* phpMyAdmin, it is not intended to be perfect code and look, only
* shows how you can integrate this functionality in your application.
*/
declare(strict_types=1);
/* Use cookies for session */
ini_set('session.use_cookies', 'true');
/* Change this to true if using phpMyAdmin over https */
$secureCookie = false;
/* Need to have cookie visible from parent directory */
session_set_cookie_params(0, '/', '', $secureCookie, true);
/* Create signon session */
$sessionName = 'SignonSession';
session_name($sessionName);
// Uncomment and change the following line to match your $cfg['SessionSavePath']
//session_save_path('/foobar');
@session_start();
/* Was data posted? */
if (isset($_POST['user'])) {
/* Store there credentials */
$_SESSION['PMA_single_signon_user'] = $_POST['user'];
$_SESSION['PMA_single_signon_password'] = $_POST['password'];
$_SESSION['PMA_single_signon_host'] = $_POST['host'];
$_SESSION['PMA_single_signon_port'] = $_POST['port'];
/* Update another field of server configuration */
$_SESSION['PMA_single_signon_cfgupdate'] = ['verbose' => 'Signon test'];
$_SESSION['PMA_single_signon_HMAC_secret'] = hash('sha1', uniqid(strval(random_int(0, mt_getrandmax())), true));
$id = session_id();
/* Close that session */
@session_write_close();
/* Redirect to phpMyAdmin (should use absolute URL here!) */
header('Location: ../index.php');
} else {
/* Show simple form */
header('Content-Type: text/html; charset=utf-8');
echo '<?xml version="1.0" encoding="utf-8"?>' . "\n";
echo '<!DOCTYPE HTML>
<html lang="en" dir="ltr">
<head>
<link rel="icon" href="../favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon">
<meta charset="utf-8">
<title>phpMyAdmin single signon example</title>
</head>
<body>';
if (isset($_SESSION['PMA_single_signon_error_message'])) {
echo '<p class="error">';
echo $_SESSION['PMA_single_signon_error_message'];
echo '</p>';
}
echo '<form action="signon.php" method="post">
Username: <input type="text" name="user" autocomplete="username" spellcheck="false"><br>
Password: <input type="password" name="password" autocomplete="current-password" spellcheck="false"><br>
Host: (will use the one from config.inc.php by default)
<input type="text" name="host"><br>
Port: (will use the one from config.inc.php by default)
<input type="text" name="port"><br>
<input type="submit">
</form>
</body>
</html>';
}
Alternatively, you can also use this way to integrate with OpenID as shown
in examples/openid.php
:
<?php
/**
* Single signon for phpMyAdmin using OpenID
*
* This is just example how to use single signon with phpMyAdmin, it is
* not intended to be perfect code and look, only shows how you can
* integrate this functionality in your application.
*
* It uses OpenID pear package, see https://pear.php.net/package/OpenID
*
* User first authenticates using OpenID and based on content of $AUTH_MAP
* the login information is passed to phpMyAdmin in session data.
*/
declare(strict_types=1);
if (false === @include_once 'OpenID/RelyingParty.php') {
exit;
}
/* Change this to true if using phpMyAdmin over https */
$secureCookie = false;
/**
* Map of authenticated users to MySQL user/password pairs.
*/
$authMap = ['https://launchpad.net/~username' => ['user' => 'root', 'password' => '']];
// phpcs:disable PSR1.Files.SideEffects,Squiz.Functions.GlobalFunction
/**
* Simple function to show HTML page with given content.
*
* @param string $contents Content to include in page
*/
function Show_page(string $contents): void
{
header('Content-Type: text/html; charset=utf-8');
echo '<?xml version="1.0" encoding="utf-8"?>' . "\n";
echo '<!DOCTYPE HTML>
<html lang="en" dir="ltr">
<head>
<link rel="icon" href="../favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon">
<meta charset="utf-8">
<title>phpMyAdmin OpenID signon example</title>
</head>
<body>';
if (isset($_SESSION['PMA_single_signon_error_message'])) {
echo '<p class="error">' . $_SESSION['PMA_single_signon_message'] . '</p>';
unset($_SESSION['PMA_single_signon_message']);
}
echo $contents;
echo '</body></html>';
}
/**
* Display error and exit
*
* @param Exception $e Exception object
*/
function Die_error(Throwable $e): void
{
$contents = "<div class='relyingparty_results'>\n";
$contents .= '<pre>' . htmlspecialchars($e->getMessage()) . "</pre>\n";
$contents .= "</div class='relyingparty_results'>";
Show_page($contents);
exit;
}
// phpcs:enable
/* Need to have cookie visible from parent directory */
session_set_cookie_params(0, '/', '', $secureCookie, true);
/* Create signon session */
$sessionName = 'SignonSession';
session_name($sessionName);
@session_start();
// Determine realm and return_to
$base = 'http';
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
$base .= 's';
}
$base .= '://' . $_SERVER['SERVER_NAME'] . ':' . $_SERVER['SERVER_PORT'];
$realm = $base . '/';
$returnTo = $base . dirname($_SERVER['PHP_SELF']);
if ($returnTo[strlen($returnTo) - 1] !== '/') {
$returnTo .= '/';
}
$returnTo .= 'openid.php';
/* Display form */
if ((! count($_GET) && ! count($_POST)) || isset($_GET['phpMyAdmin'])) {
/* Show simple form */
$content = '<form action="openid.php" method="post">
OpenID: <input type="text" name="identifier"><br>
<input type="submit" name="start">
</form>';
Show_page($content);
exit;
}
/* Grab identifier */
$identifier = null;
if (isset($_POST['identifier']) && is_string($_POST['identifier'])) {
$identifier = $_POST['identifier'];
} elseif (isset($_SESSION['identifier']) && is_string($_SESSION['identifier'])) {
$identifier = $_SESSION['identifier'];
}
/* Create OpenID object */
try {
$o = new OpenID_RelyingParty($returnTo, $realm, $identifier);
} catch (Throwable $e) {
Die_error($e);
}
/* Redirect to OpenID provider */
if (isset($_POST['start'])) {
try {
$authRequest = $o->prepare();
} catch (Throwable $e) {
Die_error($e);
}
$url = $authRequest->getAuthorizeURL();
header('Location: ' . $url);
exit;
}
/* Grab query string */
if (! count($_POST)) {
[, $queryString] = explode('?', $_SERVER['REQUEST_URI']);
} else {
// Fetch the raw query body
$queryString = file_get_contents('php://input');
}
/* Check reply */
try {
$message = new OpenID_Message($queryString, OpenID_Message::FORMAT_HTTP);
} catch (Throwable $e) {
Die_error($e);
}
$id = $message->get('openid.claimed_id');
if (empty($id) || ! isset($authMap[$id])) {
Show_page('<p>User not allowed!</p>');
exit;
}
$_SESSION['PMA_single_signon_user'] = $authMap[$id]['user'];
$_SESSION['PMA_single_signon_password'] = $authMap[$id]['password'];
$_SESSION['PMA_single_signon_HMAC_secret'] = hash('sha1', uniqid(strval(random_int(0, mt_getrandmax())), true));
session_write_close();
/* Redirect to phpMyAdmin (should use absolute URL here!) */
header('Location: ../index.php');
If you intend to pass the credentials using some other means than, you have to
implement wrapper in PHP to get that data and set it to
$cfg['Servers'][$i]['SignonScript']
. There is a very minimal example
in examples/signon-script.php
:
<?php
/**
* Single signon for phpMyAdmin
*
* This is just example how to use script based single signon with
* phpMyAdmin, it is not intended to be perfect code and look, only
* shows how you can integrate this functionality in your application.
*/
declare(strict_types=1);
// phpcs:disable Squiz.Functions.GlobalFunction
/**
* This function returns username and password.
*
* It can optionally use configured username as parameter.
*
* @param string $user User name
*
* @return array<int,string>
*/
function get_login_credentials(string $user): array
{
/* Optionally we can use passed username */
if (! empty($user)) {
return [$user, 'password'];
}
/* Here we would retrieve the credentials */
return ['root', ''];
}
Конфігурація режиму автентифікації¶
- Цей режим є іноді менш безпечним, оскільки вимагає від вас заповнити
$cfg['Servers'][$i]['user']
і$cfg['Servers'][$i]['password']
поля (і, як наслідок, будь-хто, хто може читати вашconfig.inc.php
може знайти ваше ім’я користувача та пароль). - В Інтернет провайдери, багатокористувацькі установки розділі, є запис, що пояснює, як захистити свій файл конфігурації.
- Для забезпечення додаткової безпеки в цьому режимі, ви можете розглянути питання аутентифікації хоста
$cfg['Servers'][$i]['AllowDeny']['order']
і$cfg['Servers'][$i]['AllowDeny']['rules']
директив конфігурації. - На відміну від куки і HTTP, не вимагає, щоб користувач увійшов при першому завантаженні сайту phpMyAdmin. Цей дизайн може дозволити будь-якому користувачеві отримати доступ до вашої установки. Пропонується використати деякий метод обмеження, можливо буде достатньо .htaccess файл з директивою HTTP-AUTH або заборонити вхідні HTTP запити на свій маршрутизатор чи брандмауер, (обидва методи виходять за рамки даного керівництва, але це легко знайти за допомогою Google).
Забезпечення безпеки установки phpMyAdmin¶
Команда phpMyAdmin жорстко намагається забезпечити безпеку застосування, однак завжди є способи, щоб зробити вашу установку безпечнішою:
Дотримуйтесь нашої Інформація про безпеку і оновлювати phpMyAdmin щоразу, коли нова уразливість опублікована.
Обслуговувати phpMyAdmin тільки на HTTPS. Переважно, ви повинні використовувати HSTS також, щоб бути захищеним з протоколом зниження атак.
Ensure your PHP setup follows recommendations for production sites, for example display_errors should be disabled.
Remove the
test
directory from phpMyAdmin, unless you are developing and need a test suite.Видалити
setup
каталог з phpMyAdmin, ви ймовірно не будете використовувати його після початкової установки.Правильно вибрати метод аутентифікації - Cookie режим автентифікації це, ймовірно, кращий вибір для загального хостингу.
Заборонити доступ до допоміжних файлів в
./libraries/
або./templates/
вкладених теках в конфігурації веб-сервера. Така конфігурація запобігає від можливих шляхів впливу і взаємовідносин з сценаріями, які можуть виникнути в цьому коді. В веб-сервері Apache це часто відбувається з файлом .htaccess у цих каталогах.Заборонити доступ до тимчасових файлів, дивитися
$cfg['TempDir']
(якщо це знаходиться в вашому веб кореневому каталозі, дивіться також Веб-сервер щоб завантажити/зберегти/імпортувати каталоги.It is generally a good idea to protect a public phpMyAdmin installation against access by robots as they usually can not do anything good there. You can do this using
robots.txt
file in the root of your webserver or limit access by web server configuration, see 1.42 Як я можу запобігти доступу роботів до phpMyAdmin?.У разі, якщо ви не хочете, щоб всі користувачі MySQL мали можливість отримати доступ до phpMyAdmin, ви можете використати
$cfg['Servers'][$i]['AllowDeny']['rules']
обмежити їх або$cfg['Servers'][$i]['AllowRoot']
відмовити у доступі супер користувачеві.Увімкнути Двофакторна аутентифікація для вашого облікового запису.
Розглянути питання про приховування phpMyAdmin позаду проксі аутентифікації, так що користувачі повинні пройти попередню автентифікацію для забезпечення облікових даних MySQL для phpMyAdmin. Ви можете домогтися цього шляхом настройки веб-сервера для запиту аутентифікації HTTP. Наприклад, в Apache це можна зробити за допомогою:
AuthType Basic AuthName "Restricted Access" AuthUserFile /usr/share/phpmyadmin/passwd Require valid-user
Після того, як ви змінили конфігурацію, вам потрібно створити список користувачів, які можуть автентифікуватися. Це може бути зроблено за допомогою htpasswd utility:
htpasswd -c /usr/share/phpmyadmin/passwd username
Якщо ви боїтеся автоматизованих атак, включіть Captcha
$cfg['CaptchaLoginPublicKey']
і$cfg['CaptchaLoginPrivateKey']
може бути прийнятним варіантом.Невдалі спроби входу записуються в системний журнал (якщо такі є, див.
$cfg['AuthLog']
). Це може дозволити за допомогою такого інструменту, як Fail2ban, блокувати спроби грубої сили. Зверніть увагу, що файл журналу використовує системний журнал і це не те ж саме, що файли журналу помилок або доступу Apache.In case you’re running phpMyAdmin together with other PHP applications, it is generally advised to use separate session storage for phpMyAdmin to avoid possible session-based attacks against it. You can use
$cfg['SessionSavePath']
to achieve this.
Використання SSL для підключення до сервера баз даних¶
Рекомендовано використовувати SSL під час підключення до віддаленого сервера баз даних. У налаштуваннях SSL присутні декілька параметрів налаштування:
$cfg['Servers'][$i]['ssl']
- Визначає, чи використовувати SSL взагалі. Якщо ви ввімкнете лише це, з’єднання буде зашифроване, але там немає автентифікації зв’язку - ви не зможете перевірити, що ви взаємодієте з потрібним сервером.
$cfg['Servers'][$i]['ssl_key']
і$cfg['Servers'][$i]['ssl_cert']
- Використовується для автентифікації клієнта на сервері.
$cfg['Servers'][$i]['ssl_ca']
і$cfg['Servers'][$i]['ssl_ca_path']
- Органи сертифікації, яким ви довіряєте, для серверних сертифікатів. Це використовується для гарантії, щоб ви взаємодієте з надійним сервер.
$cfg['Servers'][$i]['ssl_verify']
- Ця конфігурація вимикає перевірку сертифіката сервера. Використовуйте з обережністю.
When the database server is using a local connection or private network and SSL can not be configured
you can use $cfg['MysqlSslWarningSafeHosts']
to explicitly list the hostnames that are considered secure.
Відомі проблеми¶
Користувачі привілеїв конкретних стовпців не в змозі використовувати «Огляд»¶
Якщо користувач має привілеї тільки на деякі конкретні стовпці ,але не на всі стовпці в таблиці, «Огляд» зазнає невдачі з повідомленням про помилку.
В якості тимчасового рішення, закладка запит з тим же ім’ям, що і таблиця може бути створена, це буде запускатися під час використання » Перегляд» замість посилання. Issue 11922.
Проблема входу назад після виходу з системи з використанням „http“ аутентифікації¶
При використанні „http“ auth_type
, може бути неможливо знову увійти в систему (коли вихід з системи приходить вручну або після певного періоду бездіяльності). Issue 11898.
Конфігурація¶
Всі дані конфігурації містяться в config.inc.php
каталозі верхнього рівня phpMyAdmin. Якщо цей файл не існує, будь ласка, зверніться до Встановлення розділу, щоб створити його. Цей файл повинен містити тільки ті параметри, які ви хочете змінити з відповідного значення за замовчуванням.
Дивись також
Приклади приклади конфігурацій
Якщо директива відсутня в вашому файлі, ви можете просто додати ще один рядок в файлі. Цей файл призначений для перезапису за замовчуванням; якщо ви хочете використовувати значення за замовчуванням, немає необхідності додавати рядок тут.
Параметри, що стосуються проєктування (наприклад, колір) поміщаються в themes/themename/layout.inc.php
. Ви також можете створити config.footer.inc.php
і config.header.inc.php
файли і додати спеціальний код на свій сайт для включення на початку і в кінці кожної сторінки.
Примітка
Деякі дистрибутиви (наприклад, Debian або Ubuntu) зберігають config.inc.php
в /etc/phpmyadmin
а не в межах джерел phpMyAdmin.
Базові налаштування¶
-
$cfg['PmaAbsoluteUri']
¶ Тип: рядок Значення за замовчуванням: ''
Змінено в версії 4.6.5: Цей параметр не доступний в phpMyAdmin 4.6.0 - 4.6.4.
Встановіть тут повний URL (повний шлях) до свого каталогу установки phpMyAdmin. Наприклад
https://www.example.net/path_to_your_phpMyAdmin_directory/
. Слід також зазначити, що URL на більшості веб-серверів чутливий до регістру (навіть на Windows). Не забувайте слеш в кінці.Починаючи з версії 2.3.0, доцільно спробувати залишити це поле порожнім. У більшості випадків phpMyAdmin автоматично визначає правильну установку. Користувачам для переадресації порту або комплексу налаштувань зворотного проксі, може знадобитися встановити це.
Гарним тестом є перегляд таблиці, редагування рядка та збереження. Зазвичай буде повідомлення про помилку, якщо в phpMyAdmin виникнуть проблеми автоматичного виявлення належного значення. Якщо з’являється повідомлення про помилку про те, що це треба встановити, або якщо код автовизначення не може визначити ваш шлях, будь ласка, відправте повідомлення про помилку на наш bug tracker щоб ми могли поліпшити код.
Дивись також
1.40 При доступі до phpMyAdmin через зворотний проксі-сервер Apache, ім’я користувача cookie не працює., 2.5 Кожного разу, коли я хочу вставити або змінити рядок або скинути базу даних або таблицю, з’являється повідомлення про помилку 404 (сторінку не знайдено) або, при спробі HTTP або аутентифікації cookie, мені пропонують знову ввійти. Що не так?, 4.7. Вікно автентифікації відображається неодноразово, чому?, 5.16 В Internet Explorer я отримую «Доступ заборонено» Javascript помилки. Або я не можу зробити phpMyAdmin працювати під Windows.
-
$cfg['PmaNoRelation_DisableWarning']
¶ Тип: boolean Значення за замовчуванням: false Починаючи з версії 2.3.0 phpMyAdmin пропонує безліч функцій для роботи з майстром / foreign – tables (дивіться
$cfg['Servers'][$i]['pmadb']
).Якщо ви намагалися настроїти це, але не працює, подивіться сторінку Structure бази даних, де ви хотіли це використовувати. Ви знайдете посилання, де буде аналіз, чому були відключені ці функції.
Якщо ви не хочете використовувати ці функції, встановіть змінну в
true
, щоб зупинити появу цього повідомлення.
-
$cfg['AuthLog']
¶ Тип: рядок Значення за замовчуванням: 'auto'
Нове в версії 4.8.0: Підтримується з phpMyAdmin 4.8.0.
Налаштувати запис реєстрації аутентифікації. Помилка (або все, залежить від
$cfg['AuthLogSuccess']
) спроби автентифікації будуть зареєстровані відповідно до цієї директиви:auto
- Дозволити phpMyAdmin автоматично вибирати між
syslog
іphp
. syslog
- Використання системного журналу реєстрації, використовуючи функцію AUTH, в більшості систем це закінчується в
/var/log/auth.log
. php
- Реєстрація у журналі помилок PHP.
sapi
- Використання журналу реєстрації SAPI в PHP.
/path/to/file
- Будь-яке інше значення розглядається як ім’я файлу, і записи журналу записуються там.
Примітка
При вході в файл, переконайтеся, що його права правильно встановлені для користувача веб-сервера, установка повинна точно відповідати інструкціям, описаним у
$cfg['TempDir']
:
-
$cfg['AuthLogSuccess']
¶ Тип: boolean Значення за замовчуванням: false Нове в версії 4.8.0: Підтримується з phpMyAdmin 4.8.0.
Чи потрібно реєструвати успішні спроби автентифікації в
$cfg['AuthLog']
.
-
$cfg['SuhosinDisableWarning']
¶ Тип: boolean Значення за замовчуванням: false Попередження відображається на головній сторінці, якщо Suhosin виявлений.
Ви можете встановити цей параметр в
true
щоб зупинити появу цього повідомлення.
-
$cfg['LoginCookieValidityDisableWarning']
¶ Тип: boolean Значення за замовчуванням: false Попередження відображається на головній сторінці, якщо session.gc_maxlifetime параметр PHP нижче чим термін дії cookie налаштований в PhpMyAdmin.
Ви можете встановити цей параметр в
true
щоб зупинити появу цього повідомлення.
-
$cfg['ServerLibraryDifference_DisableWarning']
¶ Тип: boolean Значення за замовчуванням: false Застаріло починаючи з версії 4.7.0: Цей параметр був видалений так само, як було видалене попередження.
Попередження відображаються на головній сторінці, якщо є різниця між бібліотекою MySQL і версією сервера.
Ви можете встановити цей параметр в
true
щоб зупинити появу цього повідомлення.
-
$cfg['ReservedWordDisableWarning']
¶ Тип: boolean Значення за замовчуванням: false Це попередження відображається на сторінці Структура таблиці, якщо одне або кілька імен стовпців збігаються зі зарезервованими словами MySQL.
Якщо ви хочете відключити це попередження, ви можете встановити його в
true
і попередження більше не буде відображатися.
-
$cfg['TranslationWarningThreshold']
¶ Тип: integer Значення за замовчуванням: 80 Показати попередження про неповні переклади на певний поріг.
-
$cfg['SendErrorReports']
¶ Тип: рядок Значення за замовчуванням: 'ask'
Допустимі значення:
ask
always
never
Задає поведінку за замовчуванням для повідомлень про помилки JavaScript.
Всякий раз, коли знаходять помилку у виконанні JavaScript, повідомлення про помилку може бути відправлено до phpMyAdmin команди якщо користувач погоджується.
Значення за замовчуванням
'ask'
буде запитувати у користувача кожного разу, коли є новий звіт про помилку. Однак ви можете встановити цей параметр в'always'
відправляти звіти про помилки без запиту підтвердження або'never'
ніколи не відправляти звіти про помилки.Ця директива доступна як в файлі конфігурації так і в налаштуваннях користувача. Якщо особа, відповідальна за багатокористувацьку установку віддає перевагу, щоб відключити цю функцію для всіх користувачів, слід настроїти в
'never'
значення, і$cfg['UserprefsDisallow']
директива повинна містити'SendErrorReports'
в одному зі своїх значень масиву.
-
$cfg['ConsoleEnterExecutes']
¶ Тип: boolean Значення за замовчуванням: false Установка в
true
дозволяє користувачеві виконувати запити, натиснувши Enter замість Ctrl + Enter. Новий рядок можна вставити, натиснувши Shift+Enter.Поведінка консолі може бути тимчасово змінено за допомогою налаштування інтерфейсу консолі.
-
$cfg['AllowThirdPartyFraming']
¶ Тип: логічне значення|рядок Значення за замовчуванням: false Встановлення цього параметра в
true
дозволяє phpMyAdmin бути включеним у фрейм, і є потенційною дірою в безпеці дозволяючи атаки сценаріїв cross-frame або clickjacking. Встановлення цього параметра у „sameorigin“ перешкоджає включенню phpMyAdmin з іншого документа в фрейм, якщо цей документ не належить до того самого домену.
Параметри підключення сервера¶
-
$cfg['Servers']
¶ Тип: масив Значення за замовчуванням: один масив сервера з настройками перерахованими нижче Since version 1.4.2, phpMyAdmin supports the administration of multiple MySQL servers. Therefore, a
$cfg['Servers']
-array has been added which contains the login information for the different servers. The first$cfg['Servers'][$i]['host']
contains the hostname of the first server, the second$cfg['Servers'][$i]['host']
the hostname of the second server, etc. You can put as many sections for server definition as you need inconfig.inc.php
, copy that block or needed parts (you don’t have to define all settings, just those you need to change).Примітка
The
$cfg['Servers']
array starts with $cfg[„Servers“][1]. Do not use $cfg[„Servers“][0]. If you want more than one server, just copy following section (including $i increment) several times. There is no need to define full server array, just define values you need to change.
-
$cfg['Servers'][$i]['host']
¶ Тип: рядок Значення за замовчуванням: 'localhost'
Ім’я хоста або IP адреса вашого $i-th MySQL-сервера. Наприклад
localhost
.Можливі значення:
- Ім’я хоста, наприклад,
'localhost'
або'mydb.example.org'
- IP-адреса, наприклад,
'127.0.0.1'
або'192.168.10.1'
- IPv6 адреса, наприклад
2001:cdba:0000:0000:0000:0000:3257:9652
- крапка - -
'.'
, тобто використовувати іменовані канали в системах windows - пустий -
''
, відключає цей сервер
Примітка
Ім’я хоста
localhost
обробляється спеціально до MySQL і використовує сокет на основі протоколу підключення. Для того, щоб використовувати TCP/IP мережі, або використовувати IP-адресу або ім’я хоста127.0.0.1
абоdb.example.com
. Ви можете налаштувати шлях до сокета в$cfg['Servers'][$i]['socket']
.- Ім’я хоста, наприклад,
-
$cfg['Servers'][$i]['port']
¶ Тип: рядок Значення за замовчуванням: ''
Номер порту вашого $i-th MySQL-сервера. За замовчуванням 3306 (залиште порожнім).
Примітка
Якщо ви використовуєте
localhost
як ім’я хоста, MySQL ігнорує номер порту і з’єднується з сокет, тому що ви хочете підключитися до іншого порту від порту за замовчуванням, використовувати127.0.0.1
або реальне ім’я хоста в$cfg['Servers'][$i]['host']
.
-
$cfg['Servers'][$i]['socket']
¶ Тип: рядок Значення за замовчуванням: ''
Шлях до сокета для використання. Залиште порожнім за замовчуванням. Для того, щоб визначити правильний сокет, перевірте конфігурацію MySQL або використовуйте mysql командний рядок клієнта, видавши
status
команду. Серед отриманої інформації буде використаний сокет.Примітка
Починає діяти, тільки якщо
$cfg['Servers'][$i]['host']
має значенняlocalhost
.
-
$cfg['Servers'][$i]['ssl']
¶ Тип: boolean Значення за замовчуванням: false Чи увімкнути SSL для з’єднання між phpMyAdmin і MySQL сервером, щоб забезпечити з’єднання.
При використанні
'mysql'
розширення, жодного з інших'ssl...'
параметрів конфігурації не застосувати.Ми настійно рекомендуємо
'mysqli'
розширення при використанні цієї опції.Дивись також
Використання SSL для підключення до сервера баз даних, Google Cloud SQL з SSL, Амазон RDS Aurora with SSL,
$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_key']
¶ Тип: рядок Значення за замовчуванням: NULL Шлях до клієнтського ключа при використанні SSL для підключення до сервера MySQL. Використовується для автентифікації клієнта на сервері.
Наприклад:
$cfg['Servers'][$i]['ssl_key'] = '/etc/mysql/server-key.pem';
Дивись також
Використання SSL для підключення до сервера баз даних, Google Cloud SQL з SSL, Амазон RDS Aurora with SSL,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_cert']
¶ Тип: рядок Значення за замовчуванням: NULL Шлях до файлу сертифіката клієнта під час використання SSL для підключення до сервера MySQL. Використовується для автентифікації клієнта на сервері.
Дивись також
Використання SSL для підключення до сервера баз даних, Google Cloud SQL з SSL, Амазон RDS Aurora with SSL,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_ca']
¶ Тип: рядок Значення за замовчуванням: NULL Шлях до файлу CA при використанні SSL для підключення до сервера MySQL.
Дивись також
Використання SSL для підключення до сервера баз даних, Google Cloud SQL з SSL, Амазон RDS Aurora with SSL,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_ca_path']
¶ Тип: рядок Значення за замовчуванням: NULL Каталог, що містить надійні сертифікати SSL CA в форматі PEM.
Дивись також
Використання SSL для підключення до сервера баз даних, Google Cloud SQL з SSL, Амазон RDS Aurora with SSL,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_ciphers']
¶ Тип: рядок Значення за замовчуванням: NULL Список допустимих шифрів для SSL з’єднання з сервером MySQL.
Дивись також
Використання SSL для підключення до сервера баз даних, Google Cloud SQL з SSL, Амазон RDS Aurora with SSL,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_verify']
¶ Тип: boolean Значення за замовчуванням: true Нове в версії 4.6.0: Це підтримується з phpMyAdmin 4.6.0.
Якщо PHP установка використовує MySQL Native Driver (mysqlnd), ваш MySQL сервер є 5.6 або пізніший, і ваш сертифікат SSL є само-підписним, існує можливість не підключення SSL через перевірки. Установка цього в
false
відключить перевірку правильності.Починаючи з PHP 5.6.0 також перевіряє, чи відповідає ім’я сервера CN сертифікату.
Попередження
Вимкнення перевірки сертифіката ураження виключно для використання SSL. Це зробить з’єднання вразливим для атак типу людина-по-середині.
Примітка
Цей прапор працює тільки з PHP 5.6.16 або новішої версії.
Дивись також
Використання SSL для підключення до сервера баз даних, Google Cloud SQL з SSL, Амазон RDS Aurora with SSL,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['connect_type']
¶ Тип: рядок Значення за замовчуванням: 'tcp'
Застаріло починаючи з версії 4.7.0: Цей параметр більше не використовується з 4.7.0, так як MySQL визначає тип з’єднання на основі хоста, так що це може призвести до несподіваних результатів. Будь ласка, встановіть
$cfg['Servers'][$i]['host']
відповідно, замість цього.Який тип зв’язку для використання із сервером MySQL. Ваші опції
'socket'
і'tcp'
. За замовчуванням tcp, майже гарантовано буде доступний на всіх серверах MySQL, в той час сокети не підтримуються на деяких платформах. Для того, щоб використовувати режим сокета, ваш сервер MySQL повинен бути на тій же машині, що і веб-сервер.
-
$cfg['Servers'][$i]['compress']
¶ Тип: boolean Значення за замовчуванням: false Чи слід використовувати стиснутий протокол для підключення до сервера MySQL чи ні (експериментальний).
-
$cfg['Servers'][$i]['controlhost']
¶ Тип: рядок Значення за замовчуванням: ''
Дозволяє використовувати альтернативний хост для зберігання сховища даних конфігурації.
Дивись також
-
$cfg['Servers'][$i]['controlport']
¶ Тип: рядок Значення за замовчуванням: ''
Дозволяє використовувати альтернативний порт для підключення до хосту, який містить сховище конфігурації.
Дивись також
-
$cfg['Servers'][$i]['controluser']
¶ Тип: рядок Значення за замовчуванням: ''
-
$cfg['Servers'][$i]['controlpass']
¶ Тип: рядок Значення за замовчуванням: ''
Цей спеціальний обліковий запис використовується для доступу Зберігання конфігурації phpMyAdmin. Вам це не потрібно у випадку єдиного користувача, але якщо надано спільний доступ до phpMyAdmin рекомендується надати доступ до Зберігання конфігурації phpMyAdmin тільки для даного користувача, налаштуйте phpMyAdmin, щоб почати використовувати це. Всі інші користувачі будуть мати можливість використовувати функції без потреби прямого доступу до Зберігання конфігурації phpMyAdmin.
Змінено в версії 2.2.5: визначені терміном
stduser
іstdpass
-
$cfg['Servers'][$i]['control_*']
¶ Тип: змішаний Нове в версії 4.7.0.
Ви можете змінити налаштування для керівної ланки будь-якого з’єднання MySQL (використовується для доступу Зберігання конфігурації phpMyAdmin) з використанням конфігурації з префіксом
control_
.Це може бути використано щоб змінити будь-який аспект управління з’єднанням, який за замовчуванням використовує ті ж параметри, що і один користувач.
Наприклад, можна налаштувати SSL для управлінням підключення:
// Enable SSL $cfg['Servers'][$i]['control_ssl'] = true; // Client secret key $cfg['Servers'][$i]['control_ssl_key'] = '../client-key.pem'; // Client certificate $cfg['Servers'][$i]['control_ssl_cert'] = '../client-cert.pem'; // Server certification authority $cfg['Servers'][$i]['control_ssl_ca'] = '../server-ca.pem';
Дивись також
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
,$cfg['Servers'][$i]['socket']
,$cfg['Servers'][$i]['compress']
,$cfg['Servers'][$i]['hide_connection_errors']
-
$cfg['Servers'][$i]['auth_type']
¶ Тип: рядок Значення за замовчуванням: 'cookie'
Незалежно від конфігурації або cookie або HTTP або аутентифікація входу в систему слід використовувати для цього сервера.
- „config“ ідентифікація (
$auth_type = 'config'
) це старий добрий спосіб: ім’я користувача та пароль зберігаються вconfig.inc.php
. - „cookie“ режим автентифікації (
$auth_type = 'cookie'
) дозволяє увійти будь-якому дійсному користувачеві MySQL за допомогою cookies. - „http“ автентифікація дозволяє увійти будь-якому дійсному користувачеві MySQL за допомогою HTTP-Auth.
- „signon“ режим автентифікації (
$auth_type = 'signon'
) дозволяє вам увійти в систему з підготовлених даних сесії PHP або за допомогою поставленого PHP скрипту.
Дивись також
- „config“ ідентифікація (
-
$cfg['Servers'][$i]['auth_http_realm']
¶ Тип: рядок Значення за замовчуванням: ''
При використанні auth_type =
http
, поле дозволяє визначити користувацький HTTP Basic Auth Realm який буде відображатися користувачеві. Якщо явно не вказано в конфігурації, буде використовуватися рядок в поєднанні з «phpMyAdmin» а також$cfg['Servers'][$i]['verbose']
або$cfg['Servers'][$i]['host']
.
-
$cfg['Servers'][$i]['auth_swekey_config']
¶ Тип: рядок Значення за замовчуванням: ''
Нове в версії 3.0.0.0: Цей параметр мав назву $cfg[„Servers“][$i][„auth_feebee_config“] і був перейменований до випуску 3.0.0.0`.
Застаріло починаючи з версії 4.6.4: Це налаштування було видалено, оскільки їхні сервери більше не працюють і вони працювали неправильно.
Застаріло починаючи з версії 4.0.10.17: Це налаштування було видалено у випуску для обслуговування, оскільки їхні сервери більше не працюють і вони працювали неправильно.
The name of the file containing swekey ids and login names for hardware authentication. Leave empty to deactivate this feature.
-
$cfg['Servers'][$i]['user']
¶ Тип: рядок Значення за замовчуванням: 'root'
-
$cfg['Servers'][$i]['password']
¶ Тип: рядок Значення за замовчуванням: ''
При використанні
$cfg['Servers'][$i]['auth_type']
встановлений в „config“, цю користувач/пароль пару, яку буде використовувати phpMyAdmin для підключення до сервера MySQL. Цю користувач/пароль пару не вимагається, якщо використовується HTTP або cookie аутентифікація і повинен бути порожнім.
-
$cfg['Servers'][$i]['nopassword']
¶ Тип: boolean Значення за замовчуванням: false Застаріло починаючи з версії 4.7.0: Цей параметр був видалений, оскільки це може призвести до несподіваних результатів.
Допускається спроба входу без пароля коли увійти з паролем не вдається. Це може використовуватися разом з http-аутентифікацією, коли аутентифікація виконується іншим способом і phpMyAdmin отримує ім’я користувача з auth і використовує порожній пароль для підключення до MySQL. Пароль входу як і раніше вимагається спочатку,але, як запасний варіант, випробуйте метод без пароля.
Примітка
It is possible to allow logging in with no password with the
$cfg['Servers'][$i]['AllowNoPassword']
directive.
-
$cfg['Servers'][$i]['only_db']
¶ Тип: рядок або масив Значення за замовчуванням: ''
Якщо встановлено (масив) ім’я (імена) бази даних, тільки ця(і) база(и) даних буде показана користувачеві. Починаючи з phpMyAdmin 2.2.1, ця(і) база(и) даних може містити MySQL символи узагальнення («_» and «%»): якщо ви хочете використовувати літерні екземпляри цих символів, щоб їх уникнути (I.E. використовувати
'my\_db'
і ні'my_db'
).Ця установка є ефективним способом знизити навантаження на сервер, так як остання не потребує відправки запитів MySQL для побудови списку доступних баз даних. Але ** вона не замінює правила привілеїв сервера баз даних MySQL . Якщо встановлено, то це просто означає, що будуть відображатися тільки ці бази даних але **не те, що всі інші бази даних не можуть бути використані.
Приклад використання більше одної бази даних:
$cfg['Servers'][$i]['only_db'] = ['db1', 'db2'];
Змінено в версії 4.0.0: Попередні версії дозволяли задати порядок відображення імен баз даних за допомогою цієї директиви.
-
$cfg['Servers'][$i]['hide_db']
¶ Тип: рядок Значення за замовчуванням: ''
Регулярний вираз для приховування деяких баз даних від непривілейованих користувачів. Це тільки приховує їх з переліку, але користувач все ще в змозі отримати доступ до них (використавши, наприклад, область запиту SQL). Для того, щоб обмежити доступ, використовуйте систему привілеїв MySQL. Наприклад, щоб приховати всі бази даних, починаючи з букви «a», використовуйте
$cfg['Servers'][$i]['hide_db'] = '^a';
і приховати обидві «db1» і «db2» використання
$cfg['Servers'][$i]['hide_db'] = '^(db1|db2)$';
Більш детальну інформацію про регулярні вирази можна знайти в PCRE pattern syntax частині довідкового керівництва PHP.
-
$cfg['Servers'][$i]['verbose']
¶ Тип: рядок Значення за замовчуванням: ''
Корисний тільки коли використовуєте phpMyAdmin з декількома записами сервера. Якщо встановлено, цей рядок буде відображатися замість імені хоста в випадаючому меню на головній сторінці. Для прикладу, це може бути корисно, якщо ви хочете показати тільки деякі бази даних у вашій системі. Для HTTP auth, всі non-US-ASCII символи будуть видалені.
-
$cfg['Servers'][$i]['extension']
¶ Тип: рядок Значення за замовчуванням: 'mysqli'
Застаріло починаючи з версії 4.2.0: Цей параметр видалено. Розширення
mysql
буде використовуватися тільки тоді, коли розширенняmysqli
недоступне. Починаючи з версії 5.0.0, можна використовувати лише розширенняmysqli
.PHP MySQL розширення для використання (
mysql
абоmysqli
).Рекомендується використовувати
mysqli
у всіх установках.
-
$cfg['Servers'][$i]['pmadb']
¶ Тип: рядок Значення за замовчуванням: ''
Ім’я бази даних, що містить сховище конфігурації phpMyAdmin.
Бачити Зберігання конфігурації phpMyAdmin розділ в цьому документі, щоб побачити перевагу цієї функції, і для швидкого способу створення цієї бази даних і необхідних таблиць.
Якщо ви є єдиним користувачем phpMyAdmin установки, ви можете використовувати поточну базу даних для зберігання спеціальних таблиць; у цьому випадку, просто вставте поточне ім’я бази даних в
$cfg['Servers'][$i]['pmadb']
. Для багатокористувацької установки, встановіть цей параметр до назви вашої головної бази даних, що містить сховище конфігурації phpMyAdmin.
-
$cfg['Servers'][$i]['bookmarktable']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 2.2.0.
Починаючи з версії 2.2.0 phpMyAdmin дозволяє користувачам створювати закладки запитів. Це може бути корисно для запитів, які часто виконуються. Для того, щоб дозволити використовувати цю функцію:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - введіть ім’я таблиці в
$cfg['Servers'][$i]['bookmarktable']
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['relation']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 2.2.4.
Починаючи з версії 2.2.4 ви можете описати, в спеціальній „relation“ таблиці, який стовпець є ключем іншої таблиці (зовнішній ключ). phpMyAdmin в даний час використовує це, щоб:
- зробити інтерактивними, при перегляді головної таблиці, значення даних, які вказують на зовнішню таблицю;
- відобразити додатково в виринаючій підказці „відобразити стовпець“ при перегляді головної таблиці, якщо ви переміщуєте мишку на стовпець, який містить зовнішній ключ (використовувати також „table_info“ table); (дивитися 6.7. Як я можу використовувати функцію «відображення стовпця»?)
- в режимі редагувати/вставка, відображення випадаючого списку можливих зовнішніх ключів (значення ключа і показ «відображати стовпець») (дивитися 6.21. У режимі редагування/вставки, як я можу побачити список можливих значень для стовпця, на основі деякої зовнішньої таблиці?)
- відображення посилань на сторінці властивостей таблиці, для перевірки цілісності даних (відображення зовнішніх ключів відсутнє) для кожного описаного ключа;
- в запиті прикладі, створити автоматичне з’єднання (дивитися 6.6. Як я можу використати таблицю відносин у запиті за прикладом?)
- дозволяють вам отримати PDF схему бази даних (використовуйте також table_coords таблицю).
Ключі можуть бути числовими або символьними.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - введіть ім’я таблиці відношення в
$cfg['Servers'][$i]['relation']
- Тепер як звичайний користувач відкрийте phpMyAdmin і для кожної з ваших таблиць де ви хочете використовувати цю функцію, натисніть:Structure/Relation view/ і виберіть зовнішні стовпці.
Ця функція може бути відключена шляхом установки конфігурації в
false
.Примітка
У поточній версії,
master_db
повинен бути такий же, якforeign_db
Ці стовпці будуть поставлені в майбутній розробці відносин cross-db.
-
$cfg['Servers'][$i]['table_info']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 2.3.0.
Починаючи з версії 2.3.0 ви можете описати, в спеціальній „table_info“ таблиці, який стовпець є для відображення як виринаюча підказка під час переміщення курсору через відповідний ключ. Ця змінна конфігурація буде містити ім’я цієї спеціальної таблиці. Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - введіть ім’я таблиці в
$cfg['Servers'][$i]['table_info']
(наприкладpma__table_info
) - це для кожної таблиці, де ви хочете використовувати цю функцію, натисніть «Структура/Вид відношення/Вибір стовпець для відображення» для вибору стовпця.
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['table_coords']
¶ Тип: string or false Значення за замовчуванням: ''
Функція дизайнер може зберегти макет сторінки; натиснувши кнопку «Зберегти сторінку» або «Зберегти сторінку як» в розширеному меню дизайнера, ви можете налаштувати макет і мати його під час наступного завантаження дизайнера. Цей макет зберігається в цій таблиці. Крім того, в цій таблиці також потрібна для використання функція експорту PDF відносин, дивіться
$cfg['Servers'][$i]['pdf_pages']
для отримання додаткової інформації.
-
$cfg['Servers'][$i]['pdf_pages']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 2.3.0.
Починаючи з версії 2.3.0 ви можете створити phpMyAdmin PDF сторінки, що показують відносини між вашими таблицями. Крім того, дизайнер інтерфейсу візуально дозволяє управління відносинами. Для цього потрібно дві таблиці «pdf_pages» (зберігання інформації про доступні PDF сторінки) і «table_coords» (збереження координат, де кожна таблиця буде поміщена на PDF схему виведення). Ви повинні використовувати «relation» функцію.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - поставити правильні імена таблиць в
$cfg['Servers'][$i]['table_coords']
і$cfg['Servers'][$i]['pdf_pages']
Ця функція може бути відключена також шляхом установки конфігурації в
false
.Дивись також
- Встановити
-
$cfg['Servers'][$i]['designer_coords']
¶ Тип: рядок Значення за замовчуванням: ''
Нове в версії 2.10.0: З випуску 2.10.0 доступний інтерфейс Designer; це дозволяє візуально керувати відносинами.
Застаріло починаючи з версії 4.3.0: This setting was removed and the Designer table positioning data is now stored into
$cfg['Servers'][$i]['table_coords']
.Примітка
Тепер ви можете видалити таблицю pma__designer_coords зі своєї бази даних зберігання конфігурації phpMyAdmin і видалити
$cfg['Servers'][$i]['designer_coords']
зі свого файлу конфігурації.
-
$cfg['Servers'][$i]['column_info']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 2.3.0.
Ця частина вимагає оновлення змісту! Починаючи з версії 2.3.0 ви можете зберігати коментарі для опису кожного стовпця кожної таблиці. Потім вони будуть показані на «printview».
Починаючи з випуску 2.5.0, коментарі використовуються на сторінках властивостей таблиці і перегляду виду таблиці, відображається як спливаючі підказки над ім’я стовпця (властивості сторінки) або вбудовані в межах заголовка таблиці в поданні перегляду. Вони також можуть бути представлені у вигляді дампа таблиці. Будь ласка, дивіться відповідні директиви конфігурації пізніше.
Крім того, в новій версії 2.5.0 є MIME- система перетворення яка також базується на наступній структурі таблиці. Дивитися Перетворення для додаткової інформації. Для того, щоб використовувати MIME- систему перетворення ваші column_info таблиці повинні мати три нові стовпці „mimetype“, „transformation“, „transformation_options“.
Починаючи з версії 4.3.0, введена нова вхід-орієнтована система перетворення. Крім того, зворотна сумісність коду використовувана в старій системі перетворень була видалена. В результаті, оновлення для column_info таблиці необхідних для попередніх перетворень і нова вхід-орієнтована система перетворення для роботи. phpMyAdmin буде оновлювати це автоматично для вас, аналізуючи поточну структуру таблиці column_info. Однак, якщо щось піде не так з авто-оновленням, то ви можете використати скрипт SQL який знаходиться в
./sql/upgrade_column_info_4_3_0+.sql
для оновлення вручну.Для того, щоб дозволити використання цієї функції:
Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdminпоставити ім’я таблиці в
$cfg['Servers'][$i]['column_info']
(наприкладpma__column_info
)для оновлення PRE-2.5.0 Column_comments таблиці використовуйте це: і пам’ятайте, що змінна в
config.inc.php
була перейменована з$cfg['Servers'][$i]['column_comments']
в$cfg['Servers'][$i]['column_info']
ALTER TABLE `pma__column_comments` ADD `mimetype` VARCHAR( 255 ) NOT NULL, ADD `transformation` VARCHAR( 255 ) NOT NULL, ADD `transformation_options` VARCHAR( 255 ) NOT NULL;
для оновлення PRE-4.3.0 Column_info таблиці вручну використовуйте цей
./sql/upgrade_column_info_4_3_0+.sql
SQL скрипт.
Ця функція може бути відключена шляхом установки конфігурації в
false
.Примітка
Для функціональності автоматичного оновлення роботи, ваш
$cfg['Servers'][$i]['controluser']
повинен мати ALTER привілей вphpmyadmin
базі даних. Дивіться MySQL documentation for GRANT про те, якGRANT
привілеї користувача.
-
$cfg['Servers'][$i]['history']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 2.5.0.
Починаючи з версії 2.5.0 ви можете зберігати вашу SQL історію, а значить всі запити вводити вручну в інтерфейсі phpMyAdmin. Якщо ви не хочете використовувати історію на основі таблиці, ви можете використовувати історію на основі JavaScript.
Використовуючи це, всі ваші елементи історії будуть видалені при закритті вікна. Використовуючи
$cfg['QueryHistoryMax']
ви можете вказати кількість елементів історії, які ви хочете зберегти. При кожному вході цей список скоротиться до максимальної кількості.Історія запиту доступна лише у випадку, якщо включений JavaScript у вашому браузері.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити ім’я таблиці в
$cfg['Servers'][$i]['history']
(наприклад,pma__history
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['recent']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 3.5.0.
Починаючи з версії 3.5.0 ви можете показувати недавно використовувані таблиці в панелі навігації. Це допоможе вам переходити безпосередньо до таблиці, без необхідності вибирати базу даних, а потім таблицю. Використовуючи
$cfg['NumRecentTables']
ви можете налаштувати максимальну кількість показу останніх таблиць. При виборі таблиці зі списку, перейдете на сторінку, вказану в$cfg['NavigationTreeDefaultTabTable']
.Без налаштування сховища, ви все ж можете отримати доступ до нещодавно використовуваних таблиць, але це зникне після виходу з системи.
Для того, щоб дозволити використовувати цю функцію постійно:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - введіть ім’я таблиці в
$cfg['Servers'][$i]['recent']
(наприклад, `` pma__recent``)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['favorite']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 4.2.0.
Починаючи з версії 4.2.0 ви можете показати список обраних таблиць в навігаційній панелі. Це допоможе вам перейти до таблиці безпосередньо, без необхідності вибирати базу даних, а потім таблицю. При виборі таблиці зі списку, перейдете на сторінку, вказану в
$cfg['NavigationTreeDefaultTabTable']
.Ви можете додавати таблиці в цей список або видалити таблиці з нього на сторінці структури бази даних, натиснувши на іконку зірки поруч з ім’ям таблиць. Використовуючи
$cfg['NumFavoriteTables']
ви можете налаштувати показ максимальної кількості улюблених таблиць.Без налаштування сховища, ви все ж можете отримати доступ до улюблених таблиць, але це зникне після виходу з системи.
Для того, щоб дозволити використовувати цю функцію постійно:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - введіть ім’я таблиці в
$cfg['Servers'][$i]['favorite']
(наприклад,pma__favorite
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['table_uiprefs']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 3.5.0.
Починаючи з версії 3.5.0 phpMyAdmin може бути налаштований, щоб пам’ятати кілька речей для перегляду таблиць (відсортований стовпець
$cfg['RememberSorting']
, порядок стовпців і видимість стовпців з таблиці бази даних). Без налаштування сховища, ці функції все ж можуть бути використані, але значення зникнуть після виходу з системи.Щоб дозволити постійно використовувати ці функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставте ім’я таблиці в
$cfg['Servers'][$i]['table_uiprefs']
(наприклад,pma__table_uiprefs
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['users']
¶ Тип: string or false Значення за замовчуванням: ''
Таблиця, яка використовується phpMyAdmin для зберігання інформації про ім’я користувача для зв’язування з групами користувачів. Перегляньте наступний запис у
$cfg['Servers'][$i]['usergroups']
для отримання додаткової інформації та пропонованих параметрів.
-
$cfg['Servers'][$i]['usergroups']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 4.1.0.
Починаючи з версії 4.1.0 ви можете створити різні групи користувачів з підключеними до них пунктами меню. Користувачі можуть бути призначені для цих груп і зареєстрований користувач бачитиме лише пункти меню, налаштовані для групи користувачів, до яких він призначений. Для цього потрібні дві таблиці «usergroups» (для зберігання дозволених пунктів меню для кожної групи користувачів) і «users» (для зберігання користувачів та їх присвоєння групам користувачів).
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставте відповідні імена таблиць в
$cfg['Servers'][$i]['users']
(наприклад, `` pma__users``) і$cfg['Servers'][$i]['usergroups']
(наприклад, `` pma__usergroups``)
Ця функція може бути відключена також шляхом установки конфігурації в
false
.Дивись також
- Встановити
Тип: string or false Значення за замовчуванням: ''
Нове в версії 4.1.0.
Починаючи з версії 4.1.0 ви можете приховати/показати елементи в навігаційному дереві.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити назву таблиці в
$cfg['Servers'][$i]['navigationhiding']
(наприкладpma__navigationhiding
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['central_columns']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 4.3.0.
Починаючи з версії 4.3.0 ви можете мати основний список стовпців кожної бази даних. Ви можете додати/видалити стовпці до списку відповідно до вашої вимоги. Ці стовпці в основному списку будуть доступні для використання під час створення нового стовпця для таблиці або створення самої таблиці. Ви можете вибрати стовпець з основного списку під час створення нового стовпця, це заощадить вас від повторного написання того ж визначення стовпця або від написання різних імен для подібного стовпця.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити назву таблиці в
$cfg['Servers'][$i]['central_columns']
(наприкладpma__central_columns
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['designer_settings']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 4.5.0.
Починаючи з випуску 4.5.0 ваші налаштування дизайнера можуть бути збережені. Ваш вибір відносно „Angular/Direct Links“, „Snap to Grid“, „Toggle Relation Lines“, „Small/Big All“, „Move Menu“ і „Pin Text“ можуть зберігатися постійно.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити назву таблиці в
$cfg['Servers'][$i]['designer_settings']
(наприкладpma__designer_settings
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['savedsearches']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 4.2.0.
Починаючи з випуску 4.2.0 ви можете зберігати та завантажувати пошукові запити за зразком з панелі База даних>Запит.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити назву таблиці в
$cfg['Servers'][$i]['savedsearches']
(наприкладpma__savedsearches
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['export_templates']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 4.5.0.
Починаючи з випуску 4.5.0 ви можете зберігати та завантажувати шаблони експорту.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити назву таблиці в
$cfg['Servers'][$i]['export_templates']
(наприкладpma__export_templates
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['tracking']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 3.3.x.
Починаючи з версії 3.3.x доступний механізм відстеження. Це допоможе вам відстежувати кожну SQL команду, яку виконує phpMyAdmin. Механізм підтримує реєстрацію маніпуляцій з даними та визначенням операторів даних. Після чого ви можете створити версії таблиць.
Створення версії має два ефекти:
- phpMyAdmin зберігає знімок таблиці, включаючи структуру та індекси.
- phpMyAdmin записує всі команди, які змінюють структуру та/або дані таблиці, і пов’язує ці команди з номером версії.
Звичайно, ви можете переглянути відстежені зміни. На Tracking сторінка повного звіту доступна для кожної версії. Для звіту ви можете використовувати фільтри, наприклад, ви можете отримати список тверджень протягом певного періоду дат. Якщо ви хочете відфільтрувати імена користувачів, ви можете ввести \ * для всіх імен або введіть список імен, розділених символом „,“. Крім того, ви можете експортувати (відфільтрований) звіт у файл або в тимчасову базу даних.
Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити назву таблиці в
$cfg['Servers'][$i]['tracking']
(наприкладpma__tracking
)
Ця функція може бути відключена шляхом установки конфігурації в
false
.
-
$cfg['Servers'][$i]['tracking_version_auto_create']
¶ Тип: boolean Значення за замовчуванням: false Чи механізм відстеження створює версії для таблиць і подань автоматично.
Якщо це налаштовано на true і ви створюєте таблицю або представлення з
- CREATE TABLE …
- CREATE VIEW …
і для нього не існує жодної версії, механізм автоматично створить для вас версію.
-
$cfg['Servers'][$i]['tracking_default_statements']
¶ Тип: рядок Значення за замовчуванням: 'CREATE TABLE,ALTER TABLE,DROP TABLE,RENAME TABLE,CREATE INDEX,DROP INDEX,INSERT,UPDATE,DELETE,TRUNCATE,REPLACE,CREATE VIEW,ALTER VIEW,DROP VIEW,CREATE DATABASE,ALTER DATABASE,DROP DATABASE'
Визначити список виразів, які використовуються для автоматичного створення нових версій.
-
$cfg['Servers'][$i]['tracking_add_drop_view']
¶ Тип: boolean Значення за замовчуванням: true Чи буде при створенні подання, в журнал першим рядком додано вираз DROP VIEW IF EXISTS.
-
$cfg['Servers'][$i]['tracking_add_drop_table']
¶ Тип: boolean Значення за замовчуванням: true Чи буде при створенні бази даних, в журнал першим рядком додано вираз DROP DATABASE IF EXISTS.
-
$cfg['Servers'][$i]['tracking_add_drop_database']
¶ Тип: boolean Значення за замовчуванням: true Чи буде при створенні бази даних, в журнал першим рядком додано вираз DROP DATABASE IF EXISTS.
-
$cfg['Servers'][$i]['userconfig']
¶ Тип: string or false Значення за замовчуванням: ''
Нове в версії 3.4.x.
Починаючи з версії 3.4.x phpMyAdmin дозволяє користувачам самостійно встановлювати більшість уподобань і зберігати їх у базі даних.
Якщо ви не дозволяєте зберігати налаштування в
$cfg['Servers'][$i]['pmadb']
, користувачі можуть ще персоналізувати phpMyAdmin, але налаштування буде збережено в місцевому сховищі веб-переглядача, або, це неможливо, до кінця сесії.Для того, щоб дозволити використання цієї функції:
- Встановити
$cfg['Servers'][$i]['pmadb']
і сховище конфігурації phpMyAdmin - вставити назву таблиці в
$cfg['Servers'][$i]['userconfig']
Ця функція може бути відключена шляхом установки конфігурації в
false
.- Встановити
-
$cfg['Servers'][$i]['MaxTableUiprefs']
¶ Тип: integer Значення за замовчуванням: 100 Максимальна кількість рядків, збережених в
$cfg['Servers'][$i]['table_uiprefs']
таблиці.Коли таблиці видаляються або перейменовуються,
$cfg['Servers'][$i]['table_uiprefs']
може містити недійсні дані (посилаючись на таблиці, які більше не існують). Зберігаються лише число найновіших рядків в$cfg['Servers'][$i]['table_uiprefs']
і автоматично видаляються старі рядки.
-
$cfg['Servers'][$i]['SessionTimeZone']
¶ Тип: рядок Значення за замовчуванням: ''
Встановлює часовий пояс, який використовує phpMyAdmin. Залиште поле порожнім, щоб використовувати часовий пояс вашого сервера бази даних. Можливі значення пояснюються на https://dev.mysql.com/doc/refman/8.0/en/time-zone-support.html
Це корисно, коли ваш сервер бази даних використовує часовий пояс, відмінний від часової зони, яку ви хочете використовувати в phpMyAdmin.
-
$cfg['Servers'][$i]['AllowRoot']
¶ Тип: boolean Значення за замовчуванням: true Чи дозволяти кореневий доступ. Це лише ярлик для
$cfg['Servers'][$i]['AllowDeny']['rules']
нижче.
-
$cfg['Servers'][$i]['AllowNoPassword']
¶ Тип: boolean Значення за замовчуванням: false Чи дозволити вхід без паспорта. Значення за замовчуванням
false
для цього параметра запобігає ненавмисному доступу на сервер MySQL, в якому було залишено порожнім пароль для кореневого каталогу або на якому визначено анонімний (бланк) користувач.
-
$cfg['Servers'][$i]['AllowDeny']['order']
¶ Тип: рядок Значення за замовчуванням: ''
Якщо ваш порядок правил порожній, то IP авторизація відключена.
Якщо ваш порядок правил встановлено до
'deny,allow'
тоді система застосовує всі правила відхилення за допустимими правилами. За замовчуванням доступ допускається. Будь-якому клієнту, який не відповідає команді Deny або Allow буде дозволено доступ до сервера.Якщо ваш порядок правил встановлено до
'allow,deny'
то система застосовує всі дозволені правила, за якими слідують заборонені правила. За замовчуванням доступ відхилено. Будь-якому клієнту, який не відповідає директиві Allow або Deny буде відмовлено в доступі до сервера.Якщо ваш порядок правил встановлено до
'explicit'
, авторизація виконується аналогічним чином порядку правил „deny,allow“, з додатковим обмеженням щодо комбінації хост/ім’я користувача яка повинна бути в списку allow правила, і не вказана в deny правилах. Це найбільш безпечні засоби використання Allow/Deny правил, існують в Apache вказавши дозволи та заборонивши правила, не встановлюючи жодного порядку.Будь ласка дивіться також
$cfg['TrustedProxies']
для виявлення IP-адреси позаду проксі.
-
$cfg['Servers'][$i]['AllowDeny']['rules']
¶ Тип: масив рядків Значення за замовчуванням: array() Загальний формат правил такий:
<'allow' | 'deny'> <username> [from] <ipmask>
Якщо ви хочете відібрати всіх користувачів, можна використати символ
'%'
як узагальнення в полі username.Є декілька ярликів, які можна використовувати в полі ipmask (зверніть увагу, що ті, що містять SERVER_ADDRESS, можуть не бути доступні на всіх веб-серверах):
'all' -> 0.0.0.0/0 'localhost' -> 127.0.0.1/8 'localnetA' -> SERVER_ADDRESS/8 'localnetB' -> SERVER_ADDRESS/16 'localnetC' -> SERVER_ADDRESS/24
Наявність порожнього списку правил еквівалентно використанню
'allow % from all'
якщо ваш порядок правил встановлено на'deny,allow'
або'deny % from all'
якщо ваш порядок правил встановлений як'allow,deny'
або'explicit'
.Для IP Address системи відповідності, працює наступне:
xxx.xxx.xxx.xxx
(точно IP Address)xxx.xxx.xxx.[yyy-zzz]
(в IP Address діапазоні)xxx.xxx.xxx.xxx/nn
(CIDR, Classless Inter-Domain Routing тип IP адрес)
Але наступне не працює:
xxx.xxx.xxx.xx[yyy-zzz]
(частковий IP діапазон адреси)
Для IPv6 адрес, працює наступне:
xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
(точна IPv6 адреса)xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:[yyyy-zzzz]
(в IPv6 діапазоні адреси)xxxx:xxxx:xxxx:xxxx/nn
(CIDR, Classless Inter-Domain Routing тип IPv6 адрес)
Але наступне не працює:
xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xx[yyy-zzz]
(частковий IPv6 діапазон адреси)
Приклади:
$cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow bob from all']; // Allow only 'bob' to connect from any host $cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow mary from 192.168.100.[50-100]']; // Allow only 'mary' to connect from host 192.168.100.50 through 192.168.100.100 $cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow % from 192.168.[5-6].10']; // Allow any user to connect from host 192.168.5.10 or 192.168.6.10 $cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow root from 192.168.5.50','allow % from 192.168.6.10']; // Allow any user to connect from 192.168.6.10, and additionally allow root to connect from 192.168.5.50
-
$cfg['Servers'][$i]['DisableIS']
¶ Тип: boolean Значення за замовчуванням: false Вимкнути використання
INFORMATION_SCHEMA
для отримання інформації (використовуйтеSHOW
замість команди), через проблеми зі швидкістю при наявності багатьох баз даних.Примітка
Увімкнення цієї опції може принести до значного підвищення продуктивності на старих серверах MySQL.
-
$cfg['Servers'][$i]['SignonScript']
¶ Тип: рядок Значення за замовчуванням: ''
Нове в версії 3.5.0.
Назва PHP-скрипта, який повинен бути отриманий та виконаний, щоб отримати реєстраційні дані для входу. Це альтернативний підхід до сеансу на основі одиночного сигналу. Скрипт повинен надати функцію
get_login_credentials
яка повертає список імені користувача і пароля, приймає єдиний параметр існуючого імені користувача (може бути порожнім). Див. для прикладуexamples/signon-script.php
:<?php /** * Single signon for phpMyAdmin * * This is just example how to use script based single signon with * phpMyAdmin, it is not intended to be perfect code and look, only * shows how you can integrate this functionality in your application. */ declare(strict_types=1); // phpcs:disable Squiz.Functions.GlobalFunction /** * This function returns username and password. * * It can optionally use configured username as parameter. * * @param string $user User name * * @return array<int,string> */ function get_login_credentials(string $user): array { /* Optionally we can use passed username */ if (! empty($user)) { return [$user, 'password']; } /* Here we would retrieve the credentials */ return ['root', '']; }
Дивись також
-
$cfg['Servers'][$i]['SignonSession']
¶ Тип: рядок Значення за замовчуванням: ''
Назва сесії, яка буде використовуватися для методу автентифікації пред’явлення пароля. Ви повинні використовувати щось інше, ніж
phpMyAdmin
, тому що це сеанс, який phpMyAdmin використовує внутрішньо. Вступає в дію, тільки якщо$cfg['Servers'][$i]['SignonScript']
не налаштовано.Дивись також
-
$cfg['Servers'][$i]['SignonCookieParams']
¶ Тип: масив Значення за замовчуванням: array()
Нове в версії 4.7.0.
Асоціативний масив параметрів сеансу кук іншої системи автентифікації. Це не потрібно, якщо інша система не використовує session_set_cookie_params (). Ключі повинні включати в себе „lifetime“, „path“, „domain“, „secure“ або „httponly“. Дійсні значення зазначені в session_get_cookie_params, вони повинні бути налаштовані на ті ж значення, які використовує інша програма. Вступає в дію, тільки якщо
$cfg['Servers'][$i]['SignonScript']
не налаштовано.Дивись також
-
$cfg['Servers'][$i]['SignonURL']
¶ Тип: рядок Значення за замовчуванням: ''
URL де користувач буде перенаправлений для входу в систему перевірки автентичності пред’явлення пароля. Має бути абсолютним, включаючи протокол.
Дивись також
-
$cfg['Servers'][$i]['LogoutURL']
¶ Тип: рядок Значення за замовчуванням: ''
URL де користувач буде перенаправлений після виходу з системи (не впливає на метод автентифікації конфігурації). Має бути абсолютним, включаючи протокол.
-
$cfg['Servers'][$i]['hide_connection_errors']
¶ Тип: boolean Значення за замовчуванням: false Нове в версії 4.9.8.
Показувати чи приховувати детальні помилки підключення MySQL/MariaDB на сторінці входу.
Примітка
Це повідомлення про помилку може містити ім’я хоста цільового сервера бази даних або IP-адресу, що може розкрити інформацію про вашу мережу зловмиснику.
Загальні налаштування¶
-
$cfg['DisableShortcutKeys']
¶ Тип: boolean Значення за замовчуванням: false Ви можете вимкнути комбінації клавіш phpMyAdmin за допомогою параметрів
$cfg['DisableShortcutKeys']
до true.
-
$cfg['ServerDefault']
¶ Тип: integer Значення за замовчуванням: 1 Якщо у вас налаштовано більше одного сервера, ви можете встановити
$cfg['ServerDefault']
щоб будь-який з них автоматично підключався до цього сервера при запуску phpMyAdmin, або встановіть його на 0, щоб отримати список серверів без входу в систему.Якщо ви налаштували лише один сервер,
$cfg['ServerDefault']
ПОВИНЕН бути встановлений на цей сервер.
-
$cfg['VersionCheck']
¶ Тип: boolean Значення за замовчуванням: true Включає перевірку наявності останніх версій, використовуючи JavaScript на головній сторінці phpMyAdmin або шляхом прямого доступу index.php?route=/version-check.
Примітка
Цей параметр може бути налаштований вашим постачальником.
-
$cfg['ProxyUrl']
¶ Тип: рядок Значення за замовчуванням: ''
URL-адреса проксі-сервера, яка буде використовуватися, коли phpmyadmin потребує доступу до зовнішнього інтернету, наприклад, отримання останньої інформації про версію або подання звітів про помилки. Вам це потрібно, якщо сервер, на якому встановлений phpMyAdmin, не має прямого доступу до Інтернету. Формат: «hostname:portnumber»
-
$cfg['ProxyUser']
¶ Тип: рядок Значення за замовчуванням: ''
Ім’я користувача для аутентифікації на проксі-сервері. За замовчуванням аутентифікація не виконується. Якщо ім’я користувача заведене, базова автентифікація буде виконуватися. Ніякі інші типи аутентифікації в даний час не підтримується.
-
$cfg['ProxyPass']
¶ Тип: рядок Значення за замовчуванням: ''
Пароль для аутентифікації на проксі.
-
$cfg['MaxDbList']
¶ Тип: integer Значення за замовчуванням: 100 Максимальна кількість імен баз даних, що відображатимуться в списку баз даних панелі.
-
$cfg['MaxTableList']
¶ Тип: integer Значення за замовчуванням: 250 Максимальна кількість назв таблиць, що відображатимуться у списку головної панелі (за винятком сторінки Експорт).
-
$cfg['ShowHint']
¶ Тип: boolean Значення за замовчуванням: true Незалежно від того, чи показувати підказки (наприклад, підказки при наведенні на заголовки таблиць).
-
$cfg['MaxCharactersInDisplayedSQL']
¶ Тип: integer Значення за замовчуванням: 1000 Максимальна кількість символів коли SQL запит відображається. Ліміт за замовчуванням 1000 повинен бути правильним, щоб уникнути відображення тонн шістнадцяткових кодів, що представляють BLOBs, але деякі користувачі мають реальні SQL запити довжиною більше 1000 символів. Також, якщо довжина запиту перевищує цю межу, запит не зберігається в історії.
-
$cfg['PersistentConnections']
¶ Тип: boolean Значення за замовчуванням: false Незалежно постійні з’єднання слід використовувати чи ні.
Дивись також
-
$cfg['ForceSSL']
¶ Тип: boolean Значення за замовчуванням: false Застаріло починаючи з версії 4.6.0: Цей параметр недоступний з phpMyAdmin 4.6.0. Будь ласка, налаштуйте свій веб-сервер замість цього.
Необхідно змусити використовувати https при доступі до phpMyAdmin. У зворотному налаштуванні проксі, встановлення цього значення на
true
не підтримується.Примітка
У деяких налаштуваннях (наприклад, окремий проксі-сервер SSL або балансування навантаження), можливо, доведеться встановити
$cfg['PmaAbsoluteUri']
для правильного перенаправлення.
-
$cfg['MysqlSslWarningSafeHosts']
¶ Тип: масив Значення за замовчуванням: ['127.0.0.1', 'localhost']
Цей пошук чутливий до регістру та відповідатиме лише точному рядку. Якщо ваші налаштування не використовують SSL, але безпечні, оскільки ви використовуєте локальне з’єднання або приватну мережу, ви можете додати своє ім’я хоста або IP до списку. Ви також можете видалити стандартні записи, щоб включити лише ваші.
Ця перевірка використовує значення
$cfg['Servers'][$i]['host']
.Нове в версії 5.1.0.
Приклад конфігурації
$cfg['MysqlSslWarningSafeHosts'] = ['127.0.0.1', 'localhost', 'mariadb.local'];
-
$cfg['ExecTimeLimit']
¶ Тип: ціле число [кількість секунд] Значення за замовчуванням: 300 Встановіть кількість секунд, за яким скрипт може працювати. Якщо встановлено на нуль, час не встановлено. Цей параметр використовується при імпорті/експорті файлів дампа, але не має ефекту, коли PHP працює в безпечному режимі.
-
$cfg['SessionSavePath']
¶ Тип: рядок Значення за замовчуванням: ''
Шлях до збереження даних сеансу (session_save_path PHP параметр).
Попередження
Ця тека не повинна бути загальнодоступною через веб-сервер, інакше ви ризикуєте втратити приватні дані з вашого сеансу.
-
$cfg['MemoryLimit']
¶ Тип: рядок [кількість байтів] Значення за замовчуванням: '-1'
Встановити кількість байтів скрипту які дозволено виділити . Якщо встановлено
'-1'
, ліміт не встановлюється. Якщо встановлено'0'
, не намагається змінити межу пам’яті іphp.ini
memory_limit
використовується.Цей параметр використовується при імпорті/експорті файлів дампа, тому ви напевно не хочете розміщувати тут занадто низьке значення. Це не має ефекту, коли PHP працює в безпечному режимі.
Ви також можете використовувати будь-який рядок, як в
php.ini
, наприклад „16M“. Переконайтеся, що ви не пропустили суфікс (16 означає 16 байт!)
-
$cfg['SkipLockedTables']
¶ Тип: boolean Значення за замовчуванням: false Маркування використовує таблиці та дає змогу показувати бази даних із заблокованими таблицями (починаючи з MySQL 3.23.30).
-
$cfg['ShowSQL']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи SQL запити згенеровані phpMyAdmin повинні відображатися чи ні.
-
$cfg['RetainQueryBox']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи вікно SQL запиту повинно бути залишене після відображення.
-
$cfg['CodemirrorEnable']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи слід використовувати редактор коду Javascript для вікна запитів SQL. CodeMirror забезпечує підсвічування синтаксису та нумерацію рядків. Тим не менше, середнє натискання для вставлення вмісту з буфера обміну в деяких дистрибутивах Linux (наприклад Ubuntu) не підтримується усіма браузерами.
-
$cfg['LintEnable']
¶ Тип: boolean Значення за замовчуванням: true Нове в версії 4.5.0.
Defines whether to use the parser to find any errors in the query before executing.
-
$cfg['DefaultForeignKeyChecks']
¶ Тип: рядок Значення за замовчуванням: 'default'
Значення за умовчанням прапорців для перевірок зовнішніх ключів, щоб вимкнути/увімкнути перевірку зовнішніх ключів для певних запитів. Можливі значення
'default'
,'enable'
або'disable'
. Якщо встановлено'default'
, значення змінної MySQLFOREIGN_KEY_CHECKS
використовується.
-
$cfg['AllowUserDropDatabase']
¶ Тип: boolean Значення за замовчуванням: false Попередження
Це не заходи безпеки, оскільки завжди існують способи обійти це. Якщо ви хочете заборонити користувачам видаляти бази даних, відмініть їм відповідний привілей DROP.
Визначає, чи звичайним користувачам (не адміністратору) дозволяється видаляти свою власну базу даних чи ні. Якщо встановлено як false, посилання Drop Database не буде показано, І навіть``DROP DATABASE mydatabase`` буде відхилено. Дуже практично для ISP з багатьма клієнтами.
Ці обмеження SQL запитів не настільки строгі, як при використанні привілеїв MySQL. Це пов’язано з характером SQL запитів, які можуть бути досить складними. Тому цей вибір слід розглядати як допомогу, щоб уникнути випадкового знищення, а не суворого обмеження привілеїв.
-
$cfg['Confirm']
¶ Тип: boolean Значення за замовчуванням: true Необхідно відображати попередження („Ви дійсно впевнені …“), коли ви збираєтеся втратити дані.
-
$cfg['UseDbSearch']
¶ Тип: boolean Значення за замовчуванням: true Визначте, чи ввімкнено «пошук вбудованої бази даних» чи ні.
-
$cfg['IgnoreMultiSubmitErrors']
¶ Тип: boolean Значення за замовчуванням: false Визначте, чи буде phpMyAdmin продовжувати виконувати операцію з декількома запитами, якщо один з запитів не вдасться. За умовчанням - скасувати виконання.
-
$cfg['enable_drag_drop_import']
¶ Тип: boolean Значення за замовчуванням: true Включена чи ні функція перетягування для імпорту. Коли включена, користувач може перетягнути файл у свій браузер, і phpMyAdmin спробує імпортувати файл.
-
$cfg['URLQueryEncryption']
¶ Тип: boolean Значення за замовчуванням: false Нове в версії 4.9.8.
Define whether phpMyAdmin will encrypt sensitive data (like database name and table name) from the URL query string. Default is to not encrypt the URL query string.
-
$cfg['URLQueryEncryptionSecretKey']
¶ Тип: рядок Значення за замовчуванням: ''
Нове в версії 4.9.8.
Секретний ключ, який використовується для шифрування/дешифрування рядка запиту URL-адреси. Має бути 32 байти.
Дивись також
-
$cfg['maxRowPlotLimit']
¶ Тип: integer Значення за замовчуванням: 500 Maximum number of rows retrieved for zoom search.
Параметри аутентифікації файлів кук¶
-
$cfg['blowfish_secret']
¶ Тип: рядок Значення за замовчуванням: ''
The «cookie» auth_type uses the Sodium extension to encrypt the cookies (see Cookie). If you are using the «cookie» auth_type, enter here a generated string of random bytes to be used as an encryption key. It will be used internally by the Sodium extension: you won’t be prompted for this encryption key.
Оскільки двійковий рядок зазвичай не друкується, його можна перетворити на шістнадцятирічне представлення (за допомогою функції на зразок sodium_bin2hex), а потім використати у файлі конфігурації. Наприклад:
// The string is a hexadecimal representation of a 32-bytes long string of random bytes. $cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
Рекомендовано використовувати двійковий рядок. Однак, якщо всі 32 байти рядка є видимими символами, тоді така функція, як sodium_bin2hex не потрібна. Наприклад:
// A string of 32 characters. $cfg['blowfish_secret'] = 'JOFw435365IScA&Q!cDugr!lSfuAz*OW';
Попередження
Довжина ключа шифрування має становити 32 байти. Якщо він довший за довжину байтів, використовуватимуться лише перші 32 байти, а якщо він коротший, для вас буде автоматично згенеровано новий тимчасовий ключ. Однак цей тимчасовий ключ діятиме лише протягом сеансу.
Примітка
Конфігурація називається blowfish_secret з історичних причин, оскільки алгоритм Blowfish спочатку використовувався для шифрування.
Змінено в версії 3.1.0: З версії 3.1.0 phpMyAdmin може генерувати це на льоту, але це робить трохи слабкішою безпеку, оскільки ця секретна інформація зберігається в сеансі і крім того, неможливо відновити ім’я користувача з файлу cookie.
Змінено в версії 5.2.0: Починаючи з версії 5.2.0, phpMyAdmin використовує sodium_crypto_secretbox і sodium_crypto_secretbox_open Функції PHP для шифрування та розшифрування файлів cookie відповідно.
Дивись також
-
$cfg['CookieSameSite']
¶ Тип: рядок Значення за замовчуванням: 'Strict'
Нове в версії 5.1.0.
It sets SameSite attribute of the Set-Cookie HTTP response header. Valid values are:
Lax
Strict
None
Дивись також
-
$cfg['LoginCookieRecall']
¶ Тип: boolean Значення за замовчуванням: true Визначте, чи слід увімкнути попередній вхід в систему у режимі автентифікації файлів cookie.
Це автоматично вимикається, якщо ви не налаштували
$cfg['blowfish_secret']
.
-
$cfg['LoginCookieValidity']
¶ Тип: ціле число [кількість секунд] Значення за замовчуванням: 1440 Визначте, скільки часу ввімкнено файли cookie для входу. Зверніть увагу, що параметр налаштування php session.gc_maxlifetime може обмежити дію сесії і якщо сесія втрачена, ім’я файлу cookie також недійсне. Тому гарна ідея встановити
session.gc_maxlifetime
принаймні до того ж значення$cfg['LoginCookieValidity']
.
-
$cfg['LoginCookieStore']
¶ Тип: ціле число [кількість секунд] Значення за замовчуванням: 0 Визначте, скільки часу файл cookie потрібно зберігати в браузері. За умовчанням 0 означає, що він буде зберігатися для існуючого сеансу. Це рекомендується для не надійних середовищ.
-
$cfg['LoginCookieDeleteAll']
¶ Тип: boolean Значення за замовчуванням: true Якщо цей параметр увімкнено (за замовчуванням), вихід із системи видаляє файли cookie для всіх серверів, інакше тільки для поточного. Встановивши це в значення false, можна легко забути про вихід з іншого сервера, коли ви використовуєте їх більше.
-
$cfg['AllowArbitraryServer']
¶ Тип: boolean Значення за замовчуванням: false Якщо це ввімкнено, ви можете ввійти на довільні сервери, які використовують аутентифікацію cookie.
Примітка
Будь ласка, використовуйте це ретельно, оскільки це може дозволити користувачам доступ до серверів MySQL за брандмауером, де є ваш HTTP сервер розміщений. Дивіться також
$cfg['ArbitraryServerRegexp']
.
-
$cfg['ArbitraryServerRegexp']
¶ Тип: рядок Значення за замовчуванням: ''
Обмежує сервери MySQL, до яких користувач може ввійти, коли
$cfg['AllowArbitraryServer']
увімкнено шляхом відповідності IP або ім’я хоста сервера MySQL до даного регулярного виразу.Рекомендовано включити початковий та кінцевий символи в регулярний вираз, щоб могли уникнути часткових збігів в рядку.
Приклади:
// Allow connection to three listed servers: $cfg['ArbitraryServerRegexp'] = '/^(server|another|yetdifferent)$/'; // Allow connection to range of IP addresses: $cfg['ArbitraryServerRegexp'] = '@^192\.168\.0\.[0-9]{1,}$@'; // Allow connection to server name ending with -mysql: $cfg['ArbitraryServerRegexp'] = '@^[^:]\-mysql$@';
Примітка
Вся назва сервера узгоджується, вона також може включати порт. Через те, як MySQL є допустимим у параметрах з’єднання, можна використовувати рядки з’єднання як
`server:3306-mysql`
. Це може бути використано для обходу регулярного виразу суфіксом під час підключення до іншого сервера.
-
$cfg['CaptchaMethod']
¶ Тип: рядок Значення за замовчуванням: 'invisible'
Допустимі значення:
'invisible'
Використовувати невидимий метод перевірки captcha;'checkbox'
Використовуйте чекбокс, щоб підтвердити, що користувач не є роботом.
Нове в версії 5.0.3.
-
$cfg['CaptchaApi']
¶ Тип: рядок Значення за замовчуванням: 'https://www.google.com/recaptcha/api.js'
Нове в версії 5.1.0.
URL-адреса API служби reCaptcha v2, Google або сумісна.
-
$cfg['CaptchaCsp']
¶ Тип: рядок Значення за замовчуванням: 'https://apis.google.com https://www.google.com/recaptcha/ https://www.gstatic.com/recaptcha/ https://ssl.gstatic.com/'
Нове в версії 5.1.0.
Фрагмент Content-Security-Policy (URL-адреси, з яких можна вставляти вміст) для служби reCaptcha v2, Google або сумісної.
-
$cfg['CaptchaRequestParam']
¶ Тип: рядок Значення за замовчуванням: 'g-recaptcha'
Нове в версії 5.1.0.
The request parameter used for the reCaptcha v2 service.
-
$cfg['CaptchaResponseParam']
¶ Тип: рядок Значення за замовчуванням: 'g-recaptcha-response'
Нове в версії 5.1.0.
The response parameter used for the reCaptcha v2 service.
-
$cfg['CaptchaLoginPublicKey']
¶ Тип: рядок Значення за замовчуванням: ''
The public key for the reCaptcha service that can be obtained from the «Admin Console» on https://www.google.com/recaptcha/about/.
Дивись також
reCaptcha буде використана в Cookie режим автентифікації.
Нове в версії 4.1.0.
-
$cfg['CaptchaLoginPrivateKey']
¶ Тип: рядок Значення за замовчуванням: ''
The private key for the reCaptcha service that can be obtained from the «Admin Console» on https://www.google.com/recaptcha/about/.
Дивись також
reCaptcha буде використана в Cookie режим автентифікації.
Нове в версії 4.1.0.
-
$cfg['CaptchaSiteVerifyURL']
¶ Тип: рядок Значення за замовчуванням: ''
URL-адреса служби reCaptcha для перевірки сайту.
reCaptcha буде використана в Cookie режим автентифікації.
Нове в версії 5.1.0.
Головна панель¶
-
$cfg['ShowStats']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи слід відображати використання простору та статистику стосовно баз даних та таблиць. Зверніть увагу, що для статистики потрібно щонайменше MySQL 3.23.3 і що на даний момент MySQL не повертає таку інформацію для таблиць Berkeley DB.
-
$cfg['ShowServerInfo']
¶ Тип: логічне значення|рядок Значення за замовчуванням: true Defines whether to display detailed server information on main page. Possible values are:
true
to show all server informationfalse
to hide server information'database-server'
to show only database server information'web-server'
to show only web server information
Ви можете додатково приховати більше інформації, використовуючи
$cfg['Servers'][$i]['verbose']
.Змінено в версії 6.0.0: Added
'database-server'
and'web-server'
options.
-
$cfg['ShowPhpInfo']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи відображати PHP інформація чи ні на стартовій основній (правій) рамці.
Зверніть увагу, щоб блокувати використання
phpinfo()
в скриптах, ви повинні вставити це у вашомуphp.ini
:disable_functions = phpinfo()
Попередження
Увімкнувши сторінку phpinfo, буде надаватися досить багато інформації про налаштування сервера. Не рекомендується вмикати для спільних установок.
Це також може полегшити деякі віддалені атаки на ваші установки, тому увімкніть його лише тоді, коли потрібно.
-
$cfg['ShowChgPassword']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи відображати посилання Змінити пароль чи ні на стартовій основній (правій) рамці. Параметр не перевіряє безпосередньо MySQL команди входу.
Зверніть увагу, що ввімкнення посилання Змінити пароль не впливає на конфігурацію режиму перевірки автентичності: внаслідок жорстко закодованого значення пароля в файлі конфігурації, кінцевим користувачам не дозволяється змінювати свої паролі.
-
$cfg['ShowCreateDb']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи відображати форму для створення бази даних чи ні у стартовій головній (правій) рамці. Цей параметр не перевіряє безпосередньо MySQL команди входу.
-
$cfg['ShowGitRevision']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи слід відображати інформацію про поточну версію Git (якщо застосовується) на головній панелі.
-
$cfg['MysqlMinVersion']
¶ Тип: масив Визначає мінімальну підтримувану версію MySQL. За замовчуванням вибираються командою phpMyAdmin; Однак ця директива була задана розробником панелі керування Plesk щоб полегшити інтеграцію з старшими серверами MySQL (де більшість функцій phpMyAdmin працюють).
Структура бази даних¶
-
$cfg['ShowDbStructureCharset']
¶ Тип: boolean Значення за замовчуванням: false Defines whether to show a column displaying the charset for all tables in the database structure page.
-
$cfg['ShowDbStructureComment']
¶ Тип: boolean Значення за замовчуванням: false Defines whether to show a column displaying the comments for all tables in the database structure page.
-
$cfg['ShowDbStructureCreation']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи є на сторінці структури бази даних (список таблиць) стовпець «Створити», який відображається під час створення кожної таблиці.
-
$cfg['ShowDbStructureLastUpdate']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи є на сторінці структури бази даних (список таблиць) стовпець «Останнє оновлення», який відображається після останнього оновлення кожної таблиці.
-
$cfg['ShowDbStructureLastCheck']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи є на сторінці структури бази даних (список таблиць) стовпець «Остання перевірка», який відображається після останньої перевірки кожної таблиці.
-
$cfg['HideStructureActions']
¶ Тип: boolean Значення за замовчуванням: true Defines whether the table structure actions are hidden under a «More» drop-down.
-
$cfg['ShowColumnComments']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи відображати коментар стовпців як стовпець в структурі таблиці.
Режим перегляду¶
Тип: рядок Значення за замовчуванням: 'icons'
Визначає, чи містить таблиця посилання навігації
'icons'
,'text'
або'both'
.
-
$cfg['ActionLinksMode']
¶ Тип: рядок Значення за замовчуванням: 'both'
Якщо встановлено
icons
, властивості посилання будуть відображатися як значки замість тексту для бази даних і таблиці (наприклад`, Вибирати, Вставити, …). Можна встановити'both'
, якщо ви хочете значки і текст. Коли встановленоtext
, буде показано лише текст.
-
$cfg['RowActionType']
¶ Тип: рядок Значення за замовчуванням: 'both'
Чи відображати піктограми або текст або обидва піктограми та текст у сегменті дій рядка таблиці. Значення може бути будь-яким з
'icons'
,'text'
або'both'
.
-
$cfg['ShowAll']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи слід користувачеві відображати кнопку «Показати все» в режимі перегляду чи ні у всіх випадках. За замовчуванням вона відображається лише на невеликих таблицях (менш ніж 500 рядків), щоб уникнути проблем із продуктивністю при отримані надто багато рядків.
-
$cfg['MaxRows']
¶ Тип: integer Значення за замовчуванням: 25 Кількість рядків, що відображаються при перегляді набору результатів, і не використовується пропозиція LIMIT. Якщо набір результатів містить більше рядків, будуть показані посилання «Попередня» та «Далі». Можливі значення: 25,50,100,250,500.
-
$cfg['Order']
¶ Тип: рядок Значення за замовчуванням: 'SMART'
Визначає, чи відображаються стовпці в порядку зростання (
ASC
), в порядку спадання (DESC
) або в «smart» (SMART
) - тобто порядок спадання для стовпців типу TIME, DATE, DATETIME і TIMESTAMP, порядок зростання для інших - за замовчуванням.Змінено в версії 3.4.0: Починаючи з phpMyAdmin 3.4.0 значення за замовчуванням
'SMART'
.
-
$cfg['DisplayBinaryAsHex']
¶ Тип: boolean Значення за замовчуванням: true Defines whether the «Show binary contents as HEX» browse option is ticked by default.
Нове в версії 3.3.0.
Застаріло починаючи з версії 4.3.0: This setting was removed.
-
$cfg['GridEditing']
¶ Тип: рядок Значення за замовчуванням: 'double-click'
Визначає, яка дія (
double-click
чиclick
) викликає редагування сітки. Можна деактивувати значеннямdisabled
.
-
$cfg['RelationalDisplay']
¶ Тип: рядок Значення за замовчуванням: 'K'
Визначає початкову поведінку для Параметри> Реляційна.
K
, що за замовчуванням, відображає клавішу, аD
показує колонку дисплея.
-
$cfg['SaveCellsAtOnce']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи зберігати всі відредаговані клітини одразу для редагування сітки.
Редагування режиму¶
-
$cfg['ProtectBinary']
¶ Тип: логічне значення або рядок Значення за замовчуванням: 'blob'
Визначає, чи колонки
BLOB
абоBINARY
захищені від редагування під час перегляду вмісту таблиці. Допустимі значення:false
дозволяє редагування всіх стовпців;'blob'
дозволяє редагування всіх стовпців окрімBLOBS
;'noblob'
забороняє редагування всіх стовпців за виняткомBLOBS
(протилежність'blob'
);'all'
забороняє редагування всіхBINARY
абоBLOB
стовпців.
-
$cfg['ShowFunctionFields']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи слід спочатку відображати поля функції MySQL у режимі редагування/вставки. Починаючи з версії 2.10 користувач може змінювати цей параметр з інтерфейсу.
-
$cfg['ShowFieldTypesInDataEditView']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи слід спочатку відображати поля типу в режимі редагування/вставки. Користувач може змінювати цей параметр з інтерфейсу.
-
$cfg['InsertRows']
¶ Тип: integer Значення за замовчуванням: 2 Визначає кількість рядків за замовчуванням, які потрібно ввести з сторінки вставки. Користувачі можуть вручну змінити його внизу цієї сторінки, щоб додати чи видалити порожні рядки.
-
$cfg['ForeignKeyMaxLimit']
¶ Тип: integer Значення за замовчуванням: 100 Якщо в наборі зовнішніх ключів є менше предметів, ніж в наборі зовнішніх ключів, натисніть випадаючий список представлених зовнішніх ключів в стилі, що описується параметром
$cfg['ForeignKeyDropdownOrder']
.
-
$cfg['ForeignKeyDropdownOrder']
¶ Тип: масив Значення за замовчуванням: array(„content-id“, „id-content“) Для випадаючих полів зовнішнього ключа є кілька способів відображення, що містять як ключ, так і дані про значення. Вміст масиву повинен містити один або обидва з наступних рядків:
content-id
,id-content
.
Параметри експорту та імпорту¶
-
$cfg['ZipDump']
¶ Тип: boolean Значення за замовчуванням: true
-
$cfg['GZipDump']
¶ Тип: boolean Значення за замовчуванням: true
-
$cfg['BZipDump']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи дозволити використання стиснення zip/GZip/BZip2 при створенні файлу дампа
-
$cfg['CompressOnFly']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи дозволяти миттєве стиснення для GZip/BZip2 стиснутого експорту. Це не впливає на дрібні дампи і дозволяє користувачам створювати більші дампи, які не вписуються в пам’ять через обмеження пам’яті php. Утворювані файли містять додаткові заголовки GZip/BZip2, але всі типові програми справляються з цим коректно.
-
$cfg['Export']
¶ Тип: масив Значення за замовчуванням: array(…) У цьому масиві визначаються параметри за замовчуванням для експорту, імена елементів схожі на тексти, що відображаються на сторінці експорту, щоб ви могли легко визначити, що вони означають.
-
$cfg['Export']['format']
¶ Тип: рядок Значення за замовчуванням: 'sql'
Формат експорту за умовчанням.
-
$cfg['Export']['method']
¶ Тип: рядок Значення за замовчуванням: 'quick'
Визначає спосіб відображення форми експорту під час завантаження. Допустимі значення:
quick
для відображення мінімальної кількість параметрів налаштуванняcustom
для відображення всіх доступних параметрів налаштуванняcustom-no-form
такий же, якcustom
але не відображається можливість швидкого експорту
-
$cfg['Export']['compression']
¶ Тип: рядок Значення за замовчуванням: 'none'
Default export compression method. Possible values are
'none'
,'zip'
or'gzip'
.
-
$cfg['Export']['charset']
¶ Тип: рядок Значення за замовчуванням: ''
Визначає кодування для генерованого експорту. За замовчуванням ніяких перетворень кодувань не робиться при прийнятті UTF-8.
-
$cfg['Export']['file_template_table']
¶ Тип: рядок Значення за замовчуванням: '@TABLE@'
Ім’я файлу шаблону за умовчанням для експорту таблиці.
Дивись також
-
$cfg['Export']['file_template_database']
¶ Тип: рядок Значення за замовчуванням: '@DATABASE@'
Ім’я файл шаблону за замовчуванням для експорту бази даних.
Дивись також
-
$cfg['Export']['file_template_server']
¶ Тип: рядок Значення за замовчуванням: '@SERVER@'
Ім’я файлу шаблону за умовчанням для експорту сервера.
Дивись також
-
$cfg['Export']['remove_definer_from_definitions']
¶ Тип: boolean Значення за замовчуванням: false Remove DEFINER clause from the event, view and routine definitions.
Нове в версії 5.2.0.
-
$cfg['Import']
¶ Тип: масив Значення за замовчуванням: array(…) У цьому масиві визначаються параметри за замовчуванням для імпорту, імена елементів схожі на тексти, що відображаються на сторінці імпорту, щоб ви могли легко визначити, що вони означають.
-
$cfg['Import']['charset']
¶ Тип: рядок Значення за замовчуванням: ''
Визначає кодування для імпорту. За замовчуванням ніяких перетворень кодувань не робиться при прийнятті UTF-8.
-
$cfg['Schema']
¶ Тип: масив Значення за замовчуванням: array(…)
-
$cfg['Schema']['format']
¶ Тип: рядок Значення за замовчуванням: 'pdf'
Defines the default format for schema export. Possible values are
'pdf'
,'eps'
,'dia'
or'svg'
.
Вкладки параметрів дисплея¶
-
$cfg['TabsMode']
¶ Тип: рядок Значення за замовчуванням: 'both'
Визначає, чи містять вклади меню
'icons'
,'text'
або'both'
.
-
$cfg['PropertiesNumColumns']
¶ Тип: integer Значення за замовчуванням: 1 Скільки стовпців буде використано для відображення таблиць у представленні властивостей бази даних? Якщо встановити значення більше ніж 1, тип бази даних буде опущений для більшого простору дисплея.
-
$cfg['DefaultTabServer']
¶ Тип: рядок Значення за замовчуванням: 'welcome'
Визначає вкладку, яка відображається за замовчуванням на панелі перегляду сервера. Можливі значення є локалізованим еквівалентом:
welcome
(рекомендовано для багатокористувацьких налаштувань)databases
,status
variables
privileges
-
$cfg['DefaultTabDatabase']
¶ Тип: рядок Значення за замовчуванням: 'structure'
Визначає вкладку, яка відображається за замовчуванням у перегляді бази даних. Можливі значення є локалізованим еквівалентом:
structure
sql
search
operations
-
$cfg['DefaultTabTable']
¶ Тип: рядок Значення за замовчуванням: 'browse'
Визначає вкладку, яка відображається за замовчуванням на представленні таблиці. Можливі значення є локалізованим еквівалентом:
structure
sql
search
insert
browse
Параметри PDF¶
-
$cfg['PDFPageSizes']
¶ Тип: масив Значення за замовчуванням: array('A3', 'A4', 'A5', 'letter', 'legal')
Масив можливих розмірів паперу для створення сторінок PDF.
Вам ніколи не потрібно це змінювати.
-
$cfg['PDFDefaultPageSize']
¶ Тип: рядок Значення за замовчуванням: 'A4'
Розмір сторінки за замовчуванням для використання при створенні сторінок PDF. Допустимі будь-які значення, вказані в
$cfg['PDFPageSizes']
.
Мови¶
-
$cfg['DefaultLang']
¶ Тип: рядок Значення за замовчуванням: 'en'
Визначає мову за замовчуванням для використання, якщо не визначено в браузері або визначено користувачем. Відповідний файл мови має бути в locale/code/LC_MESSAGES/phpmyadmin.mo.
-
$cfg['DefaultConnectionCollation']
¶ Тип: рядок Значення за замовчуванням: 'utf8mb4_general_ci'
Визначає зіставлення за умовчанням для використання, якщо це не визначено користувачем. Дивитися MySQL документація кодів для списку можливих значень.
-
$cfg['Lang']
¶ Тип: рядок Значення за замовчуванням: не встановлено Примусити використовувати мову. Відповідний файл мови має бути в locale/code/LC_MESSAGES/phpmyadmin.mo.
-
$cfg['FilterLanguages']
¶ Тип: рядок Значення за замовчуванням: ''
Обмежити список доступних мов для тих, що відповідають даному регулярному виразу. Наприклад, якщо ви хочете тільки чеську та англійську, ви повинні встановити фільтр на
'^(cs|en)'
.
-
$cfg['RecodingEngine']
¶ Тип: рядок Значення за замовчуванням: 'auto'
Тут ви можете вибрати, які функції використовуватимуться для перетворення набору символів. Можливі значення:
'auto'
- automatically use available one (first is tested iconv, then mbstring)'iconv'
- use iconv or libiconv functions'mb'
- use mbstring extension'none'
- disable encoding conversion
Увімкнено активацію перетворення символів кодування випадаючого меню на сторінках Експорт та Імпорт, щоб вибрати набір символів при експорті файлу. Значення за замовчуванням у цьому меню походить з
$cfg['Export']['charset']
і$cfg['Import']['charset']
.Змінено в версії 6.0.0: Support for the Recode extension has been removed. The
'recode'
value is ignored and the default value ('auto'
) is used instead.
-
$cfg['IconvExtraParams']
¶ Тип: рядок Значення за замовчуванням: '//TRANSLIT'
Вкажіть деякі параметри для iconv, що використовуються в перетворенні кодування. Дивіться iconv documentation для подробиць. За замовчуванням використовується
//TRANSLIT
, так що недійсні символи будуть транслітеровані.
-
$cfg['AvailableCharsets']
¶ Тип: масив Значення за замовчуванням: array(…) Available character sets for MySQL conversion. You can add your own (any of supported by mbstring/iconv) or remove these which you don’t use. Character sets will be shown in same order as here listed, so if you frequently use some of these move them to the top.
Налаштування веб-сервера¶
-
$cfg['OBGzip']
¶ Тип: рядок/логічне значення Значення за замовчуванням: 'auto'
Визначає використання буферизації виводу GZip для збільшення швидкості в HTTP передачі. Встановити значення true/false для ввімкнення/вимкнення. Коли встановлено значення „auto“ (рядок), phpMyAdmin намагається ввімкнути буферизацію виведення і автоматично вимкне її, якщо у вашому браузері є проблеми з буферизацією. Відомо, що IE6 з певною латкою призводить до пошкодження даних при ввімкненні буферизації.
-
$cfg['TrustedProxies']
¶ Тип: масив Значення за замовчуванням: array() Списки надійних проксі та HTTP-заголовків для
$cfg['Servers'][$i]['AllowDeny']['order']
. Цей список за замовчуванням порожній, вам потрібно заповнити деякі надійні проксі-сервери, якщо ви хочете використовувати правила для IP-адрес за проксі.Наступний приклад вказує на те, що phpMyAdmin має довіряти HTTP_X_FORWARDED_FOR (
X-Forwarded-For
) заголовку, що надходить з проксі 1.2.3.4:$cfg['TrustedProxies'] = ['1.2.3.4' => 'HTTP_X_FORWARDED_FOR'];
Параметр
$cfg['Servers'][$i]['AllowDeny']['rules']
використовує IP-адресу клієнта, як завжди.
-
$cfg['GD2Available']
¶ Тип: рядок Значення за замовчуванням: 'auto'
Вказує, чи доступний GD >= 2. Якщо так, то це може бути використано для перетворень MIME. Можливі значення:
- auto - автоматичне визначення
- yes - GD 2 функції можуть бути використані
- no - GD 2 функцію не можна використовувати
-
$cfg['CheckConfigurationPermissions']
¶ Тип: boolean Значення за замовчуванням: true Зазвичай ми перевіряємо права доступу до файлу конфігурації, щоб переконатися, що він не є доступним для запису. Проте phpMyAdmin можна встановити на файловій системі NTFS, встановленій на сервері, що не належить Windows. У цьому випадку дозволи задаються неправильно, але фактично це неможливо виявити. У такому випадку системний адміністратор встановив би цей параметр на
false
.
-
$cfg['LinkLengthLimit']
¶ Тип: integer Значення за замовчуванням: 1000 Обмеження довжини URL у посиланнях. Коли довжина буде вище цієї межі, вона замінюється на форму з кнопкою. Це потрібно, оскільки деякі веб-сервери (IIS) мають проблеми з довгими URL .
-
$cfg['CSPAllow']
¶ Тип: рядок Значення за замовчуванням: ''
Додатковий рядок для включення в дозволений сценарій і джерела зображень у заголовку політики безпеки вмісту.
This can be useful when you want to include some external JavaScript files in
config.footer.inc.php
orconfig.header.inc.php
, which would be normally not allowed by Content Security Policy.Щоб дозволити сайти, просто перерахуйте їх у рядку:
$cfg['CSPAllow'] = 'example.com example.net';
Нове в версії 4.0.4.
-
$cfg['DisableMultiTableMaintenance']
¶ Тип: boolean Значення за замовчуванням: false У базі даних Структура сторінки, можна позначити кілька таблиць, а потім вибрати таку операцію, як оптимізація для багатьох таблиць. Це може уповільнити роботу сервера; отже, встановивши це до
true
перешкодити такого роду багаторазовим операціям.
Налаштування теми¶
Please directly modifythemes/themename/scss/_variables.scss
, although your changes will be overwritten with the next update.
Налаштування дизайну¶
Тип: boolean Значення за замовчуванням: true Коли встановлено true, наведення курсора на елемент на навігаційній панелі призводить до позначення цього елемента (фон виділяється).
-
$cfg['BrowsePointerEnable']
¶ Тип: boolean Значення за замовчуванням: true Коли встановлено true, наведення курсора на рядок на сторінці Огляд призводить до позначення цього рядка (фон виділяється).
-
$cfg['BrowseMarkerEnable']
¶ Тип: boolean Значення за замовчуванням: true Коли встановлено true, позначено рядок даних (фон виділяється), коли рядок виділений прапорцем.
-
$cfg['LimitChars']
¶ Тип: integer Значення за замовчуванням: 50 Максимальна кількість символів, що відображаються в будь-якому нечисловому полі у перегляді перегляду. Можна вимкнути кнопкою перемикання на сторінці перегляду.
-
$cfg['RowActionLinks']
¶ Тип: рядок Значення за замовчуванням: 'left'
Визначає місце, де розташовуються посилання рядка таблиці (Редагувати, Копіювати, Видалити), коли відображається вміст таблиць (ви можете їх показати зліва, праворуч, з обох сторін або ніде).
-
$cfg['RowActionLinksWithoutUnique']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи слід показувати посилання рядків (Редагувати, Копіювати, Видалити) та прапорці для операцій з декількома рядками, навіть якщо у виборі немає unique key. Використання дій рядка за відсутності унікального ключа може призвести до того, що різні/більше рядків буде порушено, оскільки немає гарантованого способу вибору точних рядків.
-
$cfg['RememberSorting']
¶ Тип: boolean Значення за замовчуванням: true Якщо ввімкнено, запам’ятати сортування кожної таблиці під час перегляду.
-
$cfg['TablePrimaryKeyOrder']
¶ Тип: рядок Значення за замовчуванням: 'NONE'
Це визначає порядок сортування за замовчуванням для таблиць, маючи primary key, коли не визначено порядок сортування зовні. Прийнятні значення : [„NONE“, „ASC“, „DESC“]
-
$cfg['ShowBrowseComments']
¶ Тип: boolean Значення за замовчуванням: true
-
$cfg['ShowPropertyComments']
¶ Тип: boolean Значення за замовчуванням: true Встановивши відповідну змінну до
true
, ви можете включити відображення коментарів стовпців в Огляді або відображенні Властивостей. У режимі перегляду, коментарі відображаються всередині заголовка. У режимі властивості, коментарі відображаються використовуючи CSS-відформатовану пунктирну лінію під назвою стовпця. Коментар відображається як підказка для цього стовпця.
-
$cfg['FirstDayOfCalendar']
¶ Тип: integer Значення за замовчуванням: 0 Це визначатиме перший день тижня у календарі. Число можна встановити від 0 до 6, що відповідає семи дням тижня, з неділі по суботу відповідно. Це значення також може бути налаштовано користувачем у полі Налаштування -> Функції -> Загальні -> Перший день календаря.
Текстові поля¶
-
$cfg['CharEditing']
¶ Тип: рядок Значення за замовчуванням: 'input'
Визначає, який тип редагування елементів керування cлід використовувати для стовпців CHAR і VARCHAR. Застосовується для редагування даних, а також за замовчуванням для редагування структури. Допустимі значення:
- input - дозволяє обмежити розмір тексту до розміру стовпців у MySQL, але має проблеми з новими рядками у стовпцях
- textarea - немає проблем з новими рядками у стовпцях, а також немає обмежень по довжині
-
$cfg['MinSizeForInputField']
¶ Тип: integer Значення за замовчуванням: 4 Визначає мінімальний розмір для полів вводу що були згенеровані атрибутами CHAR та VARCHAR.
-
$cfg['MaxSizeForInputField']
¶ Тип: integer Значення за замовчуванням: 60 Визначає максимальний розмір для полів вводу що були згенеровані атрибутами CHAR та VARCHAR.
-
$cfg['TextareaCols']
¶ Тип: integer Значення за замовчуванням: 40
-
$cfg['TextareaRows']
¶ Тип: integer Значення за замовчуванням: 15
-
$cfg['CharTextareaCols']
¶ Тип: integer Значення за замовчуванням: 40
-
$cfg['CharTextareaRows']
¶ Тип: integer Значення за замовчуванням: 7 Кількість стовпців та рядків для текстових полів. Це значення буде відмічено (*2) для SQL текстових полів запиту і (*1.25) для SQL текстових полів всередині вікна запиту.
Значення Char* використовується для редагування CHAR і VARCHAR (якщо налаштовано через
$cfg['CharEditing']
).Змінено в версії 5.0.0: Значення за замовчуванням було змінено з 2 на 7.
-
$cfg['LongtextDoubleTextarea']
¶ Тип: boolean Значення за замовчуванням: true Визначає, чи має текстове поле для стовпців LONGTEXT мати подвійний розмір.
-
$cfg['TextareaAutoSelect']
¶ Тип: boolean Значення за замовчуванням: false Визначає, чи буде вибрана вся текстова область вікна запиту під час натискання.
-
$cfg['EnableAutocompleteForTablesAndColumns']
¶ Тип: boolean Значення за замовчуванням: true Чи необхідно ввімкнути автозаповнення для назв таблиць і стовпців у вікні запиту SQL.
Параметри вікна запитів SQL¶
-
$cfg['SQLQuery']['Edit']
¶ Тип: boolean Значення за замовчуванням: true Чи необхідно відобразити посилання для редагування, щоб змінити запит у вікні запиту SQL.
-
$cfg['SQLQuery']['Explain']
¶ Тип: boolean Значення за замовчуванням: true Чи потрібно відображати посилання, щоб пояснити запит SELECT у вікні запиту SQL.
-
$cfg['SQLQuery']['ShowAsPHP']
¶ Тип: boolean Значення за замовчуванням: true Чи потрібно відображати посилання, щоб завершити запит у коді PHP у вікні запиту SQL.
-
$cfg['SQLQuery']['Refresh']
¶ Тип: boolean Значення за замовчуванням: true Чи потрібно відображати посилання, щоб оновити запит у вікні запиту SQL.
Веб-сервер щоб завантажити/зберегти/імпортувати каталоги¶
Якщо PHP працює в безпечному режимі, всі каталоги повинні належати одному і тому ж користувачеві, власникові сценаріїв phpMyAdmin.
Якщо каталог, на якому встановлено phpMyAdmin, підлягає обмеженню open_basedir
, вам необхідно створити тимчасовий каталог в каталозі, доступному інтерпретатору PHP.
З міркувань безпеки всі каталоги повинні знаходитися поза деревом, опублікованим веб-сервером. Якщо ви не можете уникнути того, щоб каталог був опублікований веб-сервером, обмежте доступ до нього конфігурацією веб-сервера (наприклад, використовуючи файли .htaccess або web.config) або помістіть принаймні пустий index.html
файл там, так, щоб створювати список файлів каталогу було б неможливо. Однак, поки каталог доступний веб-серверу, зловмисник може припустити назви файлів для завантаження файлів.
-
$cfg['UploadDir']
¶ Тип: рядок Значення за замовчуванням: ''
Назва каталогу, куди SQL файли були завантажені іншими способами, ніж phpMyAdmin (наприклад, FTP). Ці файли доступні у спадному меню при натисканні на імені бази даних або таблиці, тоді виберіть вкладку Імпорт.
Якщо для кожного користувача потрібний інший каталог, %u буде замінено на ім’я користувача.
Зверніть увагу, що імена файлів повинні мати суфікс «.sql» (або «.sql.bz2» або «.sql.gz» якщо включена підтримка стиснутого формату).
Ця функція корисна, якщо ваш файл надто великий для завантаження через HTTP, або коли завантаження файлів відключено в PHP.
Попередження
Будь ласка, дивіться початок цієї глави (Веб-сервер щоб завантажити/зберегти/імпортувати каталоги) для інструкцій щодо налаштування цього каталогу та способів його безпечного використання.
Дивись також
Дивіться 1.16 Я не можу завантажувати великі файли дампа (проблеми з пам’яттю, HTTP або тайм-аут). для альтернативи.
-
$cfg['SaveDir']
¶ Тип: рядок Значення за замовчуванням: ''
The name of the webserver directory where exported files can be saved.
Якщо для кожного користувача потрібний інший каталог, %u буде замінено на ім’я користувача.
Зверніть увагу, що каталог повинен існувати та бути записаним для користувача, який працює через веб-сервер.
Попередження
Будь ласка, дивіться початок цієї глави (Веб-сервер щоб завантажити/зберегти/імпортувати каталоги) для інструкцій щодо налаштування цього каталогу та способів його безпечного використання.
-
$cfg['TempDir']
¶ Тип: рядок Значення за замовчуванням: './tmp/'
Назва каталогу, де можна зберігати тимчасові файли. Він використовується для кількох цілей, в даний час:
- Кеш шаблонів, що прискорює завантаження сторінки.
- Імпорт ESRI Shapefiles, дивіться 6.30 Імпорт: як я можу імпортувати ESRI Shapefiles?.
- Щоб обійти обмеження
open_basedir
для завантажених файлів, дивіться 1.11. Під час завантаження файлу з вкладки імпорту я отримую „open_basedir restriction“..
Цей каталог повинен мати якомога більше жорстких дозволів, оскільки єдиним користувачем, який потребує доступу до цього каталогу, є той, хто керує веб-сервером. Якщо у вас є корінні привілеї, просто зробіть цього користувача власником цього каталогу і зробіть його доступним лише для нього:
chown www-data:www-data tmp chmod 700 tmp
Якщо ви не можете змінити власника каталогу, ви можете досягти аналогічного налаштування за допомогою ACL:
chmod 700 tmp setfacl -m "g:www-data:rwx" tmp setfacl -d -m "g:www-data:rwx" tmp
Якщо жоден з перерахованих вище варіантів не працює для вас, ви все ще можете створити каталог chmod 777, але це може призвести до ризику для інших користувачів у системі читання та запису даних у цьому каталозі.
Попередження
Будь ласка, дивіться початок цієї глави (Веб-сервер щоб завантажити/зберегти/імпортувати каталоги) для інструкцій щодо налаштування цього каталогу та способів його безпечного використання.
Різні налаштування дисплея¶
-
$cfg['RepeatCells']
¶ Тип: integer Значення за замовчуванням: 100 Повторяти заголовки кожних X-клітин, або 0, щоб дезактивувати.
-
$cfg['EditInWindow']
¶ Тип: boolean Значення за замовчуванням: true Дивись також
Застаріло починаючи з версії 4.3.0: This setting was removed.
-
$cfg['QueryWindowWidth']
¶ Тип: integer Значення за замовчуванням: 550 Застаріло починаючи з версії 4.3.0: This setting was removed.
-
$cfg['QueryWindowHeight']
¶ Тип: integer Значення за замовчуванням: 310 Застаріло починаючи з версії 4.3.0: This setting was removed.
-
$cfg['QueryHistoryDB']
¶ Тип: boolean Значення за замовчуванням: false
-
$cfg['QueryWindowDefTab']
¶ Тип: рядок Значення за замовчуванням: 'sql'
Застаріло починаючи з версії 4.3.0: This setting was removed.
-
$cfg['QueryHistoryMax']
¶ Тип: integer Значення за замовчуванням: 25 Якщо
$cfg['QueryHistoryDB']
встановлено доtrue
, всі ваші запити вводяться до таблиці, яка повинна бути створена вами (дивіться$cfg['Servers'][$i]['history']
). Якщо встановлено значення false, усі ваші запити будуть додані до форми, але вони будуть зберігатися тільки до тих пір, поки відкрите вікно.При використанні вікна запиту на основі JavaScript, воно завжди буде оновлюватися, коли ви натискаєте щоб переглядати нову таблицю/базу даних, і буде зафіксоване, якщо натиснути кнопку Edit SQL після використання запиту. Ви можете заборонити оновлення вікна запиту, встановивши прапорець Не перезаписуйте цей запит з-за вікна нижче текстової області запиту. Потім ви можете переглядати таблиці/бази даних у фоновому режимі, не втрачаючи вміст текстової області, тому це особливо корисно при складанні запиту з таблицями, які вам спочатку потрібно найти. Прапорець буде автоматично перевірятися, коли ви зміните вміст текстової області. Будь ласка, зніміть прапорець біля кнопки, коли ви хочете, щоб вікно запиту було оновлено, навіть якщо ви внесли зміни.
Якщо
$cfg['QueryHistoryDB']
встановлено доtrue
ви можете вказати кількість збережених об’єктів історії за допомогою$cfg['QueryHistoryMax']
.
Тип: boolean Значення за замовчуванням: true Нове в версії 6.0.0.
Дозволити користувачам створювати закладки, доступні для всіх інших користувачів
-
$cfg['BrowseMIME']
¶ Тип: boolean Значення за замовчуванням: true Увімкнути Перетворення.
-
$cfg['MaxExactCount']
¶ Тип: integer Значення за замовчуванням: 50000 Для таблиць InnoDB визначають, наскільки великі таблиці phpMyAdmin повинні отримувати точний номер рядка використовуючи
SELECT COUNT
. Якщо приблизний рядок підраховується як поверненийSHOW TABLE STATUS
менше цього значення,SELECT COUNT
буде використано, інакше буде використано приблизний рахунок.Змінено в версії 4.8.0: Значення за замовчуванням було знижено до 50 000 за показниками роботи.
Змінено в версії 4.2.6: Значення за замовчуванням було змінено на 500000.
Дивись також
-
$cfg['MaxExactCountViews']
¶ Тип: integer Значення за замовчуванням: 0 Для переглядів, оскільки отримання точного підрахунку може мати вплив на продуктивність, це значення максимально відображається, використовуючи
SELECT COUNT ... LIMIT
. Встановлення цього значення в 0 обходить будь-який підрахунок рядків.
-
$cfg['NaturalOrder']
¶ Тип: boolean Значення за замовчуванням: true Збирає назви бази даних та таблиць відповідно до природного порядку (наприклад, t1, t2, t10). В даний час реалізовано на навігаційній панелі та в перегляді бази даних для списку таблиць.
-
$cfg['InitialSlidersState']
¶ Тип: рядок Значення за замовчуванням: 'closed'
Якщо встановлено до
'closed'
, візуальні слайди спочатку перебувають у закритому стані. Значення'open'
робить зворотне. Щоб повністю вимкнути всі візуальні слайди, використовуйте'disabled'
.
-
$cfg['UserprefsDisallow']
¶ Тип: масив Значення за замовчуванням: array() Contains names of configuration options (keys in
$cfg
array) that users can’t set through user preferences. For possible values, refer to classes undersrc/Config/Forms/User/
.
-
$cfg['UserprefsDeveloperTab']
¶ Тип: boolean Значення за замовчуванням: false Нове в версії 3.4.0.
Активує в настройках користувача вкладку, що містить параметри для розробників phpMyAdmin.
Заголовки сторінки¶
The page title displayed by your browser’s window or tab title bar can be customized. You can use 6.27 Які форматові рядки я можу використовувати?. The following four options allow customizing various parts of the phpMyAdmin interface. Note that the login page title cannot be changed.
-
$cfg['TitleTable']
¶ Тип: рядок Значення за замовчуванням: '@HTTP_HOST@ / @VSERVER@ / @DATABASE@ / @TABLE@ | @PHPMYADMIN@'
-
$cfg['TitleDatabase']
¶ Тип: рядок Значення за замовчуванням: '@HTTP_HOST@ / @VSERVER@ / @DATABASE@ | @PHPMYADMIN@'
-
$cfg['TitleServer']
¶ Тип: рядок Значення за замовчуванням: '@HTTP_HOST@ / @VSERVER@ | @PHPMYADMIN@'
-
$cfg['TitleDefault']
¶ Тип: рядок Значення за замовчуванням: '@HTTP_HOST@ | @PHPMYADMIN@'
Налаштування менеджера теми¶
-
$cfg['ThemeManager']
¶ Тип: boolean Значення за замовчуванням: true Дозволяє користувачеві вибрати теми. Дивіться 2.7 Використання та створення тем.
-
$cfg['ThemeDefault']
¶ Тип: рядок Значення за замовчуванням: 'pmahomme'
The default theme (a subdirectory under
./public/themes/
).
-
$cfg['ThemePerServer']
¶ Тип: boolean Значення за замовчуванням: false Чи дозволяти різні теми для кожного сервера.
-
$cfg['FontSize']
¶ Тип: рядок Значення за замовчуванням: „82%“ Застаріло починаючи з версії 5.0.0: Цей параметр видалено, оскільки веб-переглядач є більш ефективним, отже немає потреби в цій опції.
Розмір шрифту для використання, застосовується в CSS.
Запити за замовчуванням¶
-
$cfg['DefaultQueryTable']
¶ Тип: рядок Значення за замовчуванням: 'SELECT * FROM @TABLE@ WHERE 1'
-
$cfg['DefaultQueryDatabase']
¶ Тип: рядок Значення за замовчуванням: ''
Запити за замовчуванням, які відображатимуться у полях запитів, коли користувач не вказав жодного. Ви можете використовувати стандартний 6.27 Які форматові рядки я можу використовувати?.
Налаштування MySQL¶
-
$cfg['DefaultFunctions']
¶ Тип: масив Значення за замовчуванням: array('FUNC_CHAR' => '', 'FUNC_DATE' => '', 'FUNC_NUMBER' => '', 'FUNC_SPATIAL' => 'GeomFromText', 'FUNC_UUID' => 'UUID', 'first_timestamp' => 'NOW')
Функції, обрані за замовчуванням при вставці/зміні рядка, функції визначаються для мета типів як (
FUNC_NUMBER
,FUNC_DATE
,FUNC_CHAR
,FUNC_SPATIAL
,FUNC_UUID
) і дляfirst_timestamp
, який використовується для першого стовпця тимчасової мітки в таблиці.Приклад конфігурації
$cfg['DefaultFunctions'] = [ 'FUNC_CHAR' => '', 'FUNC_DATE' => '', 'FUNC_NUMBER' => '', 'FUNC_SPATIAL' => 'ST_GeomFromText', 'FUNC_UUID' => 'UUID', 'first_timestamp' => 'UTC_TIMESTAMP', ];
Параметри за замовчуванням для перетворень¶
-
$cfg['DefaultTransformations']
¶ Тип: масив Значення за замовчуванням: Масив з нижче вказаними ключовими значеннями
-
$cfg['DefaultTransformations']['Substring']
¶ Тип: масив Значення за замовчуванням: array(0, „all“, „…“)
-
$cfg['DefaultTransformations']['Bool2Text']
¶ Тип: масив Значення за замовчуванням: array(„T“, „F“)
-
$cfg['DefaultTransformations']['External']
¶ Тип: масив Значення за замовчуванням: array(0, „-f /dev/null -i -wrap -q“, 1, 1)
-
$cfg['DefaultTransformations']['PreApPend']
¶ Тип: масив Значення за замовчуванням: array(„“, „“)
-
$cfg['DefaultTransformations']['Hex']
¶ Тип: масив Значення за замовчуванням: array(„2“)
-
$cfg['DefaultTransformations']['DateFormat']
¶ Тип: масив Значення за замовчуванням: array(0, „“, „local“)
-
$cfg['DefaultTransformations']['Inline']
¶ Тип: масив Значення за замовчуванням: array(„100“, 100)
-
$cfg['DefaultTransformations']['TextImageLink']
¶ Тип: масив Значення за замовчуванням: array(„“, 100, 50)
-
$cfg['DefaultTransformations']['TextLink']
¶ Тип: масив Значення за замовчуванням: array(„“, „“, „“)
Налаштування консолі¶
Примітка
Ці налаштування в основному призначені для зміни користувача.
-
$cfg['Console']['StartHistory']
¶ Тип: boolean Значення за замовчуванням: false Показати історію на початку
-
$cfg['Console']['AlwaysExpand']
¶ Тип: boolean Значення за замовчуванням: false Завжди розгортати повідомлення запиту
-
$cfg['Console']['CurrentQuery']
¶ Тип: boolean Значення за замовчуванням: true Показати поточний перегляд запиту
-
$cfg['Console']['EnterExecutes']
¶ Тип: boolean Значення за замовчуванням: false Виконати запит по натиснені на Enter і вставити новий рядок по натиснені на Shift+Enter
-
$cfg['Console']['DarkTheme']
¶ Тип: boolean Значення за замовчуванням: false Переключити на темну тему
-
$cfg['Console']['Mode']
¶ Тип: рядок Значення за замовчуванням: „інформація“ Режим консолі
-
$cfg['Console']['Height']
¶ Тип: integer Значення за замовчуванням: 92 Висота консолі
Розробник¶
Попередження
Ці налаштування можуть мати величезний вплив на продуктивність або безпеку.
-
$cfg['environment']
¶ Тип: рядок Значення за замовчуванням: 'production'
Встановлює робоче середовище.
Це потрібно змінити лише тоді, коли ви розробляєте сам phpMyAdmin. У режимі
development
у деяких місцях може відображатися інформація про налагодження.Можливі значення:
'production'
or'development'
.
-
$cfg['DBG']
¶ Тип: масив Значення за замовчуванням: []
-
$cfg['DBG']['sql']
¶ Тип: boolean Значення за замовчуванням: false Увімкнути запити реєстрації та час виконання, щоб будуть показані на вкладці консолі Debug SQL.
-
$cfg['DBG']['sqllog']
¶ Тип: boolean Значення за замовчуванням: false Увімкнути ведення журналу запитів і час виконання для системного журналу. Потрібен
$cfg['DBG']['sql']
бути включеним.
-
$cfg['DBG']['demo']
¶ Тип: boolean Значення за замовчуванням: false Увімкнути, щоб сервер міг представляти себе як демонстраційний сервер. Використовується для Демонстраційний сервер phpMyAdmin.
В даний час зміни таких дій:
- На головній сторінці є вітальне повідомлення.
- There is footer information about demo server and used Git revision.
- Сценарій установки включається навіть при наявній конфігурації.
- Установка не намагається підключитися до сервера MySQL.
-
$cfg['DBG']['simple2fa']
¶ Тип: boolean Значення за замовчуванням: false Може бути використаний для тестування двофакторної автентифікації за допомогою Проста двофакторна аутентифікація.
Приклади¶
Дивіться наступні фрагменти конфігурації для типових налаштувань phpMyAdmin.
Основний приклад¶
Приклад файла конфігурації, який можна скопіювати до config.inc.php
щоб отримати деяку основну макету конфігурації; поширюється з phpMyAdmin як config.sample.inc.php
. Зверніть увагу, що він не містить усіх параметрів конфігурації, лише найбільш часто використовувані.
<?php
/**
* phpMyAdmin sample configuration, you can use it as base for
* manual configuration. For easier setup you can use setup/
*
* All directives are explained in documentation in the doc/ folder
* or at <https://docs.phpmyadmin.net/>.
*/
declare(strict_types=1);
/**
* This is needed for cookie based authentication to encrypt the cookie.
* Needs to be a 32-bytes long string of random bytes. See FAQ 2.10.
*/
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/**
* Servers configuration
*/
$i = 0;
/**
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
/**
* phpMyAdmin configuration storage settings.
*/
/* User used to manipulate with storage */
// $cfg['Servers'][$i]['controlhost'] = '';
// $cfg['Servers'][$i]['controlport'] = '';
// $cfg['Servers'][$i]['controluser'] = 'pma';
// $cfg['Servers'][$i]['controlpass'] = 'pmapass';
/* Storage database and tables */
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
// $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
// $cfg['Servers'][$i]['relation'] = 'pma__relation';
// $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
// $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
// $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
// $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
// $cfg['Servers'][$i]['history'] = 'pma__history';
// $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
// $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
// $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
// $cfg['Servers'][$i]['recent'] = 'pma__recent';
// $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
// $cfg['Servers'][$i]['users'] = 'pma__users';
// $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
// $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
// $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
// $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
// $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
// $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
/**
* End of servers configuration
*/
/**
* Directories for saving/loading files from server
*/
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
/**
* Whether to display icons or text or both icons and text in table row
* action segment. Value can be either of 'icons', 'text' or 'both'.
* default = 'both'
*/
//$cfg['RowActionType'] = 'icons';
/**
* Defines whether a user should be displayed a "show all (records)"
* button in browse mode or not.
* default = false
*/
//$cfg['ShowAll'] = true;
/**
* Number of rows displayed when browsing a result set. If the result
* set contains more rows, "Previous" and "Next".
* Possible values: 25, 50, 100, 250, 500
* default = 25
*/
//$cfg['MaxRows'] = 50;
/**
* Disallow editing of binary fields
* valid values are:
* false allow editing
* 'blob' allow editing except for BLOB fields
* 'noblob' disallow editing except for BLOB fields
* 'all' disallow editing
* default = 'blob'
*/
//$cfg['ProtectBinary'] = false;
/**
* Default language to use, if not browser-defined or user-defined
* (you find all languages in the locale folder)
* uncomment the desired line:
* default = 'en'
*/
//$cfg['DefaultLang'] = 'en';
//$cfg['DefaultLang'] = 'de';
/**
* How many columns should be used for table display of a database?
* (a value larger than 1 results in some information being hidden)
* default = 1
*/
//$cfg['PropertiesNumColumns'] = 2;
/**
* Set to true if you want DB-based query history.If false, this utilizes
* JS-routines to display query history (lost by window close)
*
* This requires configuration storage enabled, see above.
* default = false
*/
//$cfg['QueryHistoryDB'] = true;
/**
* When using DB-based query history, how many entries should be kept?
* default = 25
*/
//$cfg['QueryHistoryMax'] = 100;
/**
* Whether or not to query the user before sending the error report to
* the phpMyAdmin team when a JavaScript error occurs
*
* Available options
* ('ask' | 'always' | 'never')
* default = 'ask'
*/
//$cfg['SendErrorReports'] = 'always';
/**
* 'URLQueryEncryption' defines whether phpMyAdmin will encrypt sensitive data from the URL query string.
* 'URLQueryEncryptionSecretKey' is a 32 bytes long secret key used to encrypt/decrypt the URL query string.
*/
//$cfg['URLQueryEncryption'] = true;
//$cfg['URLQueryEncryptionSecretKey'] = '';
/**
* You can find more configuration options in the documentation
* in the doc/ folder or at <https://docs.phpmyadmin.net/>.
*/
Попередження
Не використовуйте controlpace „pma“, якщо він ще не існує, і не використовуйте „pmapass“ як пароль.
Приклад для виконання перевірки автентичності¶
У цьому прикладі використовується examples/signon.php
щоб продемонструвати використання Signon режим автентифікації:
<?php
$i = 0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'signon';
$cfg['Servers'][$i]['SignonSession'] = 'SignonSession';
$cfg['Servers'][$i]['SignonURL'] = 'examples/signon.php';
Приклад обмеження автоматичного входу для IP-адреси¶
Якщо ви хочете автоматично входити при вході локально в phpMyAdmin, в той час запитувати пароль при віддаленому доступі, ви можете досягти цього використовуючи наступний фрагмент:
if ($_SERVER['REMOTE_ADDR'] === '127.0.0.1') {
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'yourpassword';
} else {
$cfg['Servers'][$i]['auth_type'] = 'cookie';
}
Примітка
Фільтрація на основі IP-адрес не є надійною по інтернету, використовуйте її тільки для локальних адрес.
Приклад використання декількох серверів MySQL¶
Ви можете налаштувати будь-яку кількість серверів за допомогою $cfg['Servers']
, наступний приклад показує два з них:
<?php
// The string is a hexadecimal representation of a 32-bytes long string of random bytes.
$cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
$i = 0;
$i++; // server 1 :
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['verbose'] = 'no1';
$cfg['Servers'][$i]['host'] = 'localhost';
// more options for #1 ...
$i++; // server 2 :
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['verbose'] = 'no2';
$cfg['Servers'][$i]['host'] = 'remote.host.addr';//or ip:'10.9.8.1'
// this server must allow remote clients, e.g., host 10.9.8.%
// not only in mysql.host but also in the startup configuration
// more options for #2 ...
// end of server sections
$cfg['ServerDefault'] = 0; // to choose the server on startup
// further general options ...
Google Cloud SQL з SSL¶
Щоб підключитися до Google Could SQL, вам потрібно вимкнути перевірку сертифіката. Це викликано випуском сертифікату, що видається для CN, що відповідає вашому імені екземпляра, але ви підключаєтесь до IP-адреси і PHP намагається узгодити ці два. Під час перевірки ви отримаєте повідомлення про помилку:
Peer certificate CN=`api-project-851612429544:pmatest' did not match expected CN=`8.8.8.8'
Попередження
Якщо вимкнено перевірку, трафік зашифрований, але ви відкриті для MITM-атаки.
Щоб підключити phpMyAdmin до Google Cloud SQL за допомогою SSL, завантажте сертифікати клієнта та сервера і вкажіть phpMyAdmin, щоб використовувати їх:
// IP address of your instance
$cfg['Servers'][$i]['host'] = '8.8.8.8';
// Use SSL for connection
$cfg['Servers'][$i]['ssl'] = true;
// Client secret key
$cfg['Servers'][$i]['ssl_key'] = '../client-key.pem';
// Client certificate
$cfg['Servers'][$i]['ssl_cert'] = '../client-cert.pem';
// Server certification authority
$cfg['Servers'][$i]['ssl_ca'] = '../server-ca.pem';
// Disable SSL verification (see above note)
$cfg['Servers'][$i]['ssl_verify'] = false;
Амазон RDS Aurora with SSL¶
To connect phpMyAdmin to an Amazon RDS Aurora MySQL database instance using SSL, download the CA server certificate and tell phpMyAdmin to use it:
// Address of your instance
$cfg['Servers'][$i]['host'] = 'replace-me-cluster-name.cluster-replace-me-id.replace-me-region.rds.amazonaws.com';
// Use SSL for connection
$cfg['Servers'][$i]['ssl'] = true;
// You need to have the region CA file and the authority CA file (2019 edition CA for example) in the PEM bundle for it to work
$cfg['Servers'][$i]['ssl_ca'] = '../rds-combined-ca-bundle.pem';
// Enable SSL verification
$cfg['Servers'][$i]['ssl_verify'] = true;
Дивись також
Використання SSL для підключення до сервера баз даних,
$cfg['Servers'][$i]['ssl']
,
$cfg['Servers'][$i]['ssl_ca']
,
$cfg['Servers'][$i]['ssl_verify']
Дивись також
- Поточний комплект RDS CA для всіх регіонів https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem
- The RDS CA (2019 edition) for the region eu-west-3 without the parent CA https://s3.amazonaws.com/rds-downloads/rds-ca-2019-eu-west-3.pem
- List of available Amazon RDS CA files
- Amazon MySQL Aurora security guide
- Amazon certificates bundles per region
reCaptcha із використанням hCaptcha¶
$cfg['CaptchaApi'] = 'https://www.hcaptcha.com/1/api.js';
$cfg['CaptchaCsp'] = 'https://hcaptcha.com https://*.hcaptcha.com';
$cfg['CaptchaRequestParam'] = 'h-captcha';
$cfg['CaptchaResponseParam'] = 'h-captcha-response';
$cfg['CaptchaSiteVerifyURL'] = 'https://hcaptcha.com/siteverify';
// This is the secret key from hCaptcha dashboard
$cfg['CaptchaLoginPrivateKey'] = '0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
// This is the site key from hCaptcha dashboard
$cfg['CaptchaLoginPublicKey'] = 'xxx-xxx-xxx-xxx-xxxx';
Дивись також
Дивись також
reCaptcha із використанням Turnstile¶
$cfg['CaptchaMethod'] = 'checkbox';
$cfg['CaptchaApi'] = 'https://challenges.cloudflare.com/turnstile/v0/api.js';
$cfg['CaptchaCsp'] = 'https://challenges.cloudflare.com https://static.cloudflareinsights.com';
$cfg['CaptchaRequestParam'] = 'cf-turnstile';
$cfg['CaptchaResponseParam'] = 'cf-turnstile-response';
$cfg['CaptchaLoginPublicKey'] = '0xxxxxxxxxxxxxxxxxxxxxx';
$cfg['CaptchaLoginPrivateKey'] = '0x4AAAAAAAA_xx_xxxxxxxxxxxxxxxxxxxx';
$cfg['CaptchaSiteVerifyURL'] = 'https://challenges.cloudflare.com/turnstile/v0/siteverify';
Дивись також
Дивись також
reCaptcha із використанням Google reCaptcha v2/v3¶
$cfg['CaptchaLoginPublicKey'] = 'xxxxxxxxxxxxxxxx-xxxxxxxxxxxx';
$cfg['CaptchaLoginPrivateKey'] = 'xxxxxxxxx-xxxxxxxxxxxxxx';
// Remove it if you dot not want the checkbox mode
$cfg['CaptchaMethod'] = 'checkbox';
Дивись також
Дивись також
Керівництво користувача¶
Налаштування PhpMyAdmin¶
Є багато параметрів конфігурації, які можна використовувати для налаштування інтерфейсу. Ці параметри описані в Конфігурація. Існує кілька рівнів конфігурації.
Глобальні параметри можна налаштувати в config.inc.php
, як описано в Конфігурація. Це єдиний спосіб налаштувати підключення до баз даних та інших системних налаштувань.
Крім того, є налаштування користувача, які можна постійно зберігати в Зберігання конфігурації phpMyAdmin, можливо, автоматично налаштуватися через Нульова конфігурація. Якщо Зберігання конфігурації phpMyAdmin не налаштовано, налаштування тимчасово зберігаються в даних сеансу, вони діють лише до виходу з системи.
Ви також можете зберегти конфігурацію користувача для подальшого використання, завантажувати їх як файл або локальну пам’ять веб-переглядача. Ви можете знайти обидва ці параметри в вкладці Settings. Налаштування, збережені в локальному сховищі браузера, автоматично будуть запропоновані для завантаження після входу до phpMyAdmin.
Двофакторна аутентифікація¶
Нове в версії 4.8.0.
Since phpMyAdmin 4.8.0 you can configure two-factor authentication to be used when logging in. To use this, you first need to configure the Зберігання конфігурації phpMyAdmin. Once this is done, every user can opt-in for the second authentication factor in the Settings.
Під час запуску phpMyAdmin з сховища джерела Git, залежності повинні бути встановлені вручну; типовий спосіб це зробити є команда:
composer require pragmarx/google2fa-qrcode bacon/bacon-qr-code
Або при використанні апаратного ключа безпеки за допомогою FIDO U2F:
composer require code-lts/u2f-php-server
Застосунок автентифікації (2FA)¶
Using an application for authentication is a quite common approach based on HOTP and TOTP. It is based on transmitting a private key from phpMyAdmin to the authentication application and the application is then able to generate one time codes based on this key. The easiest way to enter the key in to the application from phpMyAdmin is through scanning a QR code.
Для реалізації цих стандартів для мобільних телефонів пропонуються десятки програм, найбільш широко використовуються:
Ключ безпеки устаткування (FIDO U2F)¶
Using hardware tokens is considered to be more secure than a software based solution. phpMyAdmin supports FIDO U2F tokens.
Є кілька розробників цих токенів, наприклад:
Проста двофакторна аутентифікація¶
This authentication is included for testing and demonstration purposes only as it really does not provide two-factor authentication, it just asks the user to confirm login by clicking on the button.
Він не повинен використовуватися у виробництві та вимикається, якщо тільки не вказано $cfg['DBG']['simple2fa']
.
Перетворення¶
Примітка
You need to have configured the Зберігання конфігурації phpMyAdmin to use the transformations feature.
Вступ¶
To enable transformations, you have to set up the column_info
table and the proper directives. Please see the Конфігурація on how to do so.
phpMyAdmin has two different types of transformations: browser display transformations, which affect only how the data is shown when browsing through phpMyAdmin; and input transformations, which affect a value prior to being inserted through phpMyAdmin. You can apply different transformations to the contents of each column. Each transformation has options to define how it will affect the stored data.
Say you have a column filename
which contains a filename. Normally
you would see in phpMyAdmin only this filename. Using display transformations
you can transform that filename into a HTML link, so you can click
inside of the phpMyAdmin structure on the column’s link and will see
the file displayed in a new browser window. Using transformation
options you can also specify strings to append/prepend to a string or
the format you want the output stored in.
For a general overview of all available transformations and their
options, you can either go to the Change
link for an existing column
or from the dialog to create a new column, in either case there is a link
on that column structure page for «Browser display transformation» and
«Input transformation» which will show more information about each
transformation that is available on your system.
Консультації про те, як ефективно використовувати перетворення, дивіться наш Link section на офіційній сторінці phpMyAdmin.
Використання¶
Go to the table structure page (reached by clicking on the „Structure“ link for a table). There click on «Change» (or the change icon) and there you will see the five transformation–related fields at the end of the line. They are called „Media type“, „Browser transformation“ and „Transformation options“.
- The field „Media type“ is a drop-down field. Select the Media type that corresponds to the column’s contents. Please note that many transformations are inactive until a Media type is selected.
- The field „Browser display transformation“ is a drop-down field. You can choose from a hopefully growing amount of pre-defined transformations. See below for information on how to build your own transformation. There are global transformations and mimetype-bound transformations. Global transformations can be used for any mimetype. They will take the mimetype, if necessary, into regard. Mimetype-bound transformations usually only operate on a certain mimetype. There are transformations which operate on the main mimetype (like „image“), which will most likely take the subtype into regard, and those who only operate on a specific subtype (like „image/jpeg“). You can use transformations on mimetypes for which the function was not defined for. There is no security check for you selected the right transformation, so take care of what the output will be like.
- Поле «Параметри трансформації відображення браузера» є вільним текстовим полем. Тут потрібно ввести специфічні параметри функції перетворення. Зазвичай перетворення можуть працювати з параметрами за замовчуванням, але загалом добре подивитися огляд, щоб побачити, які опції потрібні. Багато чого, як ENUM / SET-поля, ви повинні розділити кілька варіантів, використовуючи формат „a“, „b“, „c“,… (ПРИМІТКА ПРОБЛЕМИ БЕЗПЕКИ). Це тому, що внутрішні параметри будуть проаналізовані як масив, залишивши перше значення першим елементом масиву і так далі. Якщо ви хочете вказати набір символів MIME, ви можете визначити його у transformation_options. Ви повинні виставити це за межами попередньо визначених параметрів конкретного mime-перетворення, як останнє значення набору. Використовуйте формат «“; charset=XXX“». Якщо ви використовуєте перетворення, для якого ви можете вказати 2 опції, і ви хочете додати набір символів, введіть «“перший параметр“,“другий параметр“,“charset=us-ascii“». Можна, однак, використовувати параметри за замовчанням: «““,““,“charset =us-ascii“». Параметри за замовчанням можна налаштувати за допомогою
$cfg['DefaultTransformations']
. - „Input transformation“ is another drop-down menu that corresponds exactly with the instructions above for «Browser display transformation» except these these affect the data before insertion in to the database. These are most commonly used to either provide a specialized editor (for example, using the phpMyAdmin SQL editor interface) or selector (such as for uploading an image). It’s also possible to manipulate the data such as converting an IPv4 address to binary or parsing it through a regular expression.
- Finally, „Input transformation options“ is the equivalent of the «Browser display transformation options» section above and is where optional and required parameters are entered.
Структура файлу¶
All specific transformations for mimetypes are defined through class
files in the directory src/Plugins/Transformations/
. Each of
them extends a certain transformation abstract class declared in
src/Plugins/Transformations/Abs
.
They are stored in files to ease customization and to allow easy adding of new or custom transformations.
Because the user cannot enter their own mimetypes, it is kept certain that the transformations will always work. It makes no sense to apply a transformation to a mimetype the transform-function doesn’t know to handle.
There is a file called src/Plugins/Transformations.php
that provides some
basic functions which can be included by any other transform function.
The file name convention is [Mimetype]_[Subtype]_[Transformation
Name].php
, while the abstract class that it extends has the
name [Transformation Name]TransformationsPlugin
. All of the
methods that have to be implemented by a transformations plug-in are:
- getMIMEType() і getMIMESubtype() в основному класі;
- getName(), getInfo() і applyTransformation() поширюється в абстрактному класі.
Методи getMIMEType(), getMIMESubtype() і getName() повертають ім’я типу MIME, MIME-підтип і перетворення відповідно. getInfo() повертає опис трансформації та можливі варіанти, які він може отримати і applyTransformation() метод, який виконує фактичну роботу модуля перетворення.
Please see the src/Plugins/Transformations/TEMPLATE
and
src/Plugins/Transformations/TEMPLATE_ABSTRACT
files for adding
your own transformation plug-in. You can also generate a new
transformation plug-in (with or without the abstract transformation
class), by using
scripts/transformations_generator_plugin.sh
or
scripts/transformations_generator_main_class.sh
.
Метод applyTransformation() завжди отримує три змінні:
- $buffer - Містить текст усередині стовпця. Це текст, який ви хочете перетворити.
- $options - Містить будь-які параметри, передані користувачем, до функції перетворення, як масив.
- $meta - Contains an object with information about your column. The data is drawn from the output of the mysql_fetch_field() function. This means, all object properties described on the manual page are available in this variable and can be used to transform a column accordingly to unsigned/zerofill/not_null/… properties. The $meta->mimetype variable contains the original Media type of the column (i.e. „text/plain“, „image/jpeg“ etc.)
Закладки¶
Примітка
Вам потрібно налаштувати Зберігання конфігурації phpMyAdmin для використання функцій закладок.
Зберігання закладок¶
Any query that is executed can be marked as a bookmark on the page where the results are displayed. You will find a button labeled Bookmark this query just at the end of the page. As soon as you have stored a bookmark, that query is linked to the database. You can now access a bookmark dropdown on each page where the query box appears on for that database.
Перемінні всередині закладки¶
Inside a query, you can also add placeholders for variables.
This is done by inserting into the query SQL comments between /*
and
*/
. The special string [VARIABLE{variable-number}]
is used inside the comments.
Be aware that the whole query minus the SQL comments must be
valid by itself, otherwise you won’t be able to store it as a bookmark.
Also, note that the text „VARIABLE“ is case-sensitive.
Коли ви виконуєте закладку, всі введені в поля вводу Змінні на сторінці вікна запиту замінять рядки /*[VARIABLE{variable-number}]*/
у вашому збереженому запиті.
Також пам’ятайте, що все інше в рядку /*[VARIABLE{variable-number}]*/
для вашого запиту залишатиметься таким, яким він є, але буде позбавлений символів /**/
. Так що, ви можете використовувати:
/*, [VARIABLE1] AS myname */
що буде розширено до
, VARIABLE1 as myname
у вашому запиті, де VARIABLE1 - це рядок, який ви ввели в поле введення змінної 1.
Більш складний приклад, скажімо, ви зберегли цей запит:
SELECT Name, Address FROM addresses WHERE 1 /* AND Name LIKE '%[VARIABLE1]%' */
If you wish to enter «phpMyAdmin» as the variable for the stored query, the full query will be:
SELECT Name, Address FROM addresses WHERE 1 AND Name LIKE '%phpMyAdmin%'
NOTE THE ABSENCE OF SPACES inside the /**/
конструкція. Будь-які пробіли, введені до нього, пізніше будуть також вставлені як пробіли у вашому запиті і можуть призвести до неочікуваних результатів, особливо при використанні розширення змінної всередині виразу «LIKE „“.
Перегляд таблиці за допомогою закладки¶
When a bookmark has the same name as the table, it will be used as the query when browsing this table.
Управління користувачами¶
Управління користувачами є процес контролю, які користувачі можуть підключатися до сервера MySQL і які дозволи у них є на кожній базі даних. phpMyAdmin не виконує жодного управління користувачами, він передає ім’я користувача і пароль до MySQL, який потім визначає, чи дозволено користувачу виконати певну дію. У phpMyAdmin, адміністратори мають повний контроль над створенням користувачів, переглядом і редагуванням привілеїв для існуючих користувачів, і видаленням користувачів.
Within phpMyAdmin, user management is controlled via the User accounts tab from the main page. Users can be created, edited, and removed.
Створення нового користувача¶
To create a new user, click the Add user account link near the bottom of the User accounts page (you must be a «superuser», e.g., user «root»). Use the textboxes and drop-downs to configure the user to your particular needs. You can then select whether to create a database for that user and grant specific global privileges. Once you’ve created the user (by clicking Go), you can define that user’s permissions on a specific database (don’t grant global privileges in that case). In general, users do not need any global privileges (other than USAGE), only permissions for their specific database.
Редагування існуючого користувача¶
To edit an existing user, simply click the pencil icon to the right of that user in the User accounts page. You can then edit their global- and database-specific privileges, change their password, or even copy those privileges to a new user.
Видалення користувача¶
From the User accounts page, check the checkbox for the user you wish to remove, select whether or not to also remove any databases of the same name (if they exist), and click Go.
Призначення привілеїв користувача для конкретної бази даних¶
Користувачі призначаються для баз даних шляхом редагування запису користувача (з User accounts посилання на головній сторінці). Якщо ви створюєте користувача спеціально для даної таблиці, вам спочатку потрібно створити користувача (без глобальних привілеїв) а потім повернутися і відредагувати цього користувача щоб додати таблицю та привілеї для окремої таблиці.
Відносини¶
phpMyAdmin дозволяє зв’язки (подібно до зовнішніх ключів) за допомогою методів MySQL-native (InnoDB), коли вони є доступними, і, коли це необхідно, повертаються на спеціальні функції phpMyAdmin. Існує два способи редагування цих відносин, з relation view і drag-and-drop designer – обидва з яких пояснюються на цій сторінці.
Примітка
Вам потрібно налаштувати Зберігання конфігурації phpMyAdmin для використання тільки відносин phpMyAdmin.
Технічна інформація¶
В даний час єдиний тип таблиці MySQL, що спочатку підтримує відносини InnoDB. Використовуючи таблицю InnoDB, phpMyAdmin створюватиме справжні відносини InnoDB, які будуть застосовуватися в MySQL незалежно від того, яка програма отримує доступ до бази даних. У випадку будь-якого іншого типу таблиці phpMyAdmin забезпечує внутрішні відносини і ці відносини не застосовуються до будь-якої іншої програми.
Вид відносин¶
Щоб він працював, спочатку потрібно правильно створити [[pmadb|pmadb]]. Після установки, виберіть сторінку «Структура» таблиці. Нижче визначення таблиці відобразиться посилання «Вид відношення». Якщо ви натиснете це посилання, буде показано сторінку, яка пропонує вам створити посилання на іншу таблицю для будь-якого (більшості) полів. Тут відображаються лише PRIMARY KEYS, тому що поле, яке ви маєте на увазі, не відображається, і ви, швидше за все, робите щось не так. Спадне меню внизу є поле, яке буде використовуватися для запису як ім’я .
Приклад перегляду відношення¶


Скажімо, у вас є категорії та посилання, і одна категорія може містити кілька посилань. Структура вашої таблиці буде такою:
- category.category_id (повинен бути унікальним)
- category.name
- link.link_id
- link.category_id
- link.uri.
Відкрийте сторінку вид відношення (нижче структури таблиці) для таблиці link та для поля category_id, виберіть category.category_id як основний запис.
Якщо ви переглядаєте таблицю посилань, category_id`поле буде активувати гіперпосилання на відповідну категорію запису. А все, що ви бачите, це просто `category_id, а не назва категорії.

Щоб виправити це, відкрийте вид відносини category таблиць і в спадному внизу виберіть «ім’я». Знову перегляньте таблицю посилань і наведіть курсор миші на category_id гіперпосилання, значення з відповідної категорії буде показано в підказці.

Designer¶
Функція Designer - це графічний спосіб створення, редагування та відображення відносин phpMyAdmin. Ці відносини сумісні з тими, які створені в виді відносин phpMyAdmin.
Щоб скористатися цією функцією, вам потрібно належним чином налаштувати Зберігання конфігурації phpMyAdmin і повинен мати $cfg['Servers'][$i]['table_coords']
налаштований.
Щоб скористатись designer, виберіть структурну сторінку бази даних, а потім знайдіть вкладку Designer.
Щоб експортувати представлення даних у форматі PDF, спочатку потрібно створити PDF-сторінки. Designer створює макет, як відображатись таблиці. Щоб нарешті експортувати представлення, потрібно створити це за допомогою сторінки PDF-сторінки та вибрати макет, який ви створили за допомогою designer.
Дивись також
Діаграми¶
Нове в версії 3.4.0.
Починаючи з версії 3.4.0 phpMyAdmin, ви можете легко створювати діаграми із запиту SQL, натиснувши посилання «Відображати діаграму» в області «Операції з результатами запитів».

З’явиться рівневе вікно «Відображати діаграму», в якому ви можете налаштувати діаграму з наступними параметрами.
- Chart type: Allows you to choose the type of chart. Supported types are bar charts, column charts, line charts, spline charts, area charts, pie charts and timeline charts (only the chart types applicable for current series selection are offered).
- Ось X: дозволяє вибрати поле для основної осі.
- Серія: дозволяє вибирати серії для діаграми. Ви можете вибрати кілька серій.
- Назва: Дозволяє вказати заголовок для діаграми, яка відображається над діаграмою.
- Мітки на осі X та осі Y: Дозволяє вказати мітки для осей.
- Start row and a number of rows: Allows generating charts only for a specified number of rows of the results set.

Приклади¶
Кругова діаграма¶
Результати запитів для простої кругової діаграми можуть бути створені за допомогою:
SELECT 'Food' AS 'expense',
1250 AS 'amount' UNION
SELECT 'Accommodation', 500 UNION
SELECT 'Travel', 720 UNION
SELECT 'Misc', 220
І результат цього запиту:
expense | amount |
---|---|
Food | 1250 |
Accommodation | 500 |
Travel | 720 |
Misc | 220 |
Виберіть expense як ось X та amount у серії:

Бар і стовпці діаграми¶
Обидва бар діаграм та стовпці діаграм підтримують накладення. Вибравши один з цих типів, буде показано прапорець, щоб вибрати накладення.
Результати запиту для простого бару або стовпців діаграми можуть бути згенеровані:
SELECT
'ACADEMY DINOSAUR' AS 'title',
0.99 AS 'rental_rate',
20.99 AS 'replacement_cost' UNION
SELECT 'ACE GOLDFINGER', 4.99, 12.99 UNION
SELECT 'ADAPTATION HOLES', 2.99, 18.99 UNION
SELECT 'AFFAIR PREJUDICE', 2.99, 26.99 UNION
SELECT 'AFRICAN EGG', 2.99, 22.99
І результат цього запиту:
title | rental_rate | replacement_cost |
---|---|---|
ACADEMY DINOSAUR | 0.99 | 20.99 |
ACE GOLDFINGER | 4.99 | 12.99 |
ADAPTATION HOLES | 2.99 | 18.99 |
AFFAIR PREJUDICE | 2.99 | 26.99 |
AFRICAN EGG | 2.99 | 22.99 |
Виберіть назву X-осі та rental_rate і replacement_cost, як серію:

Фрагментована діаграма¶
Фрагментовані діаграми корисні для ідентифікації руху однієї чи кількох змінних у порівнянні з іншою змінною.
Використовуючи один і той же набір даних із бару і стовпців діаграм і вибравши replacement_cost як ось X і rental_rate в серії:

Лінійні, сплайн та часові діаграми¶
Ці діаграми можуть бути використані для ілюстрації тенденцій в базових даних. Сплайн-діаграми креслять плавні лінії в той час як часові діаграми креслять вісь X, беручи до уваги інтервал між датами/часом.
Результати запитів для простої лінійної, сплайн або часової діаграми можна створити за допомогою:
SELECT
DATE('2006-01-08') AS 'date',
2056 AS 'revenue',
1378 AS 'cost' UNION
SELECT DATE('2006-01-09'), 1898, 2301 UNION
SELECT DATE('2006-01-15'), 1560, 600 UNION
SELECT DATE('2006-01-17'), 3457, 1565
І результат цього запиту:
date | revenue | cost |
---|---|---|
2016-01-08 | 2056 | 1378 |
2006-01-09 | 1898 | 2301 |
2006-01-15 | 1560 | 600 |
2006-01-17 | 3457 | 1565 |



Імпорт та експорт¶
Імпорт¶
Щоб імпортувати дані, відкрийте вкладку «Імпорт» у phpMyAdmin. Щоб імпортувати дані в певну базу даних або таблицю, відкрийте базу даних або таблицю, перш ніж перейти на вкладку «Імпорт».
Крім стандартної вкладки Імпорт та Експорт, ви також можете імпортувати файл SQL безпосередньо, перетягнувши його з локального менеджера файлів до інтерфейсу phpMyAdmin у своєму веб-браузері.
Якщо у вас виникли проблеми з імпортом великих файлів, зверніться до 1.16 Я не можу завантажувати великі файли дампа (проблеми з пам’яттю, HTTP або тайм-аут)..
Ви можете імпортувати за допомогою таких методів:
Форма на основі завантаження
Можна використовувати з будь-яким підтримуваним форматом, також (b|g) архівними файлами, наприклад, mydump.sql.gz.
Форма на основі SQL-запиту
Можна використовувати з діючими дампами SQL.
Використання каталогу завантаження
Ви можете вказати каталог завантаження на своєму веб-сервері, де встановлено phpMyAdmin, після завантаження вашого файлу в каталог ви можете вибрати файл у діалоговому вікні імпорту phpMyAdmin, дивіться$cfg['UploadDir']
.
phpMyAdmin може імпортувати з декількох різних часто використовуваних форматів.
CSV¶
Формат значень, розділений комами, який часто використовується електронними таблицями або різними іншими програмами для експорту/імпорту.
Примітка
При імпорті даних у таблицю з файлу CSV, де таблиця має поле „auto_increment“, внесіть значення „auto_increment“ для кожного запису в полі CSV як „0“ (нуль). Це дозволяє правильно заповнити поле „auto_increment“.
Тепер можна імпортувати файл CSV на рівні сервера або бази даних. Замість того, щоб створювати таблицю для імпорту файлу CSV, замість цього буде визначено оптимальну структуру для вас та даних, імпортованих до неї.
CSV, використовуючи LOAD DATA¶
Подібно до CSV, використовується лише внутрішній аналізатор MySQL, а не phpMyAdmin.
Файл ESRI¶
Шрифт ESRI або simply shapefile - популярний формат геопросторової векторної інформації для програмного забезпечення геоінформаційних систем. Він розробляється та регулюється ESRI як (в основному) відкрита специфікація сумісності даних серед Esri та інших програмних продуктів.
MediaWiki¶
Файли MediaWiki, які можна експортувати за допомогою phpMyAdmin (версії 4.0 або пізнішої версії), тепер також можна імпортувати. Це формат, який Вікіпедія використовує для відображення таблиць.
Open Document електронної таблиці (ODS)¶
OpenDocument робочі книги, що містять одну або кілька таблиць можна тепер безпосередньо імпортувати.
When importing an ODS spreadsheet, the spreadsheet must be named in a specific way in order to make the import as simple as possible.
Ім’я таблиці¶
Під час імпорту phpMyAdmin використовує ім’я аркуша, як назву таблиці; ви повинні перейменувати аркуш електронної таблиці у вашій програмі, щоб відповідати існуючій назві таблиці (або таблиці, яку ви хочете створити, хоча це не критично, оскільки ви можете швидко перейменувати нову таблицю з вкладки „Операції“).
Ім’я стовпців¶
Ви також повинні зробити перший рядок електронної таблиці заголовком з назвами стовпців (це можна зробити, вставивши новий рядок у верхній частині таблиці). Коли на екрані Імпорт, встановіть прапорець «Перший рядок файлу містить імена стовпців таблиці»; таким чином ваші нові імпортовані дані перейдуть до відповідних стовпців.
Примітка
Формули та розрахунки НЕ оцінюватимуться, а їх значення від останнього збереження буде завантажено. Будь ласка, переконайтесь, що всі значення в таблиці є необхідними, перш ніж імпортувати їх.
SQL¶
SQL можна використовувати для будь-яких маніпуляцій з даними, це також корисно для відновлення резервних даних.
XML¶
XML-файли, експортовані phpMyAdmin (версія 3.3.0 або пізнішої), тепер можуть імпортуватися. Структури (бази даних, таблиці, перегляди, тригери тощо) та/або дані будуть створюватися залежно від вмісту файлу.
Підтримувані схеми XML ще не зареєстровані у цій вікі.
Експорт¶
phpMyAdmin може експортувати у текстові файли (навіть стиснуті) на ваш локальний диск (або спеціальний веб-сервер $cfg['SaveDir']
folder) в різних широко використовуваних форматах:
CodeGen¶
NHibernate формат файлу. Плановані версії: Java, Hibernate, PHP PDO, JSON, тощо. Тому попереднє ім’я є codegen.
CSV¶
Формат значень, розділений комами, який часто використовується електронними таблицями або різними іншими програмами для експорту/імпорту.
CSV для Microsoft Excel¶
Це лише попередньо налаштована версія експорту CSV, яку можна імпортувати в більшість англійських версій Microsoft Excel. Деякі локалізовані версії (наприклад, „Датська“) очікують «;» замість «,» як розділювач полів.
Microsoft Word 2000¶
Якщо ви використовуєте Microsoft Word 2000 або новіший (або сумісний з такими як OpenOffice.org), ви можете використовувати цей експорт.
JSON¶
JSON (JavaScript Object Notation) - це легкий формат обміну даними. Людям легко читати і писати, а машинам легко проаналізувати та генерувати.
Змінено в версії 4.7.0: Згенерована структура JSON була змінена в phpMyAdmin 4.7.0 для отримання дійсних даних JSON.
Згенерований JSON - це список об’єктів з наступними атрибутами:
-
type
¶ Тип даного об’єкта може бути одним із:
header
- Експорт заголовка, що містить коментар та версію phpMyAdmin.
database
- Початок маркеру бази даних, що містить назву бази даних.
table
- Експорт таблиці даних.
-
comment
¶ Необов’язковий текстовий коментар.
Вибірка:
[
{
"comment": "Export to JSON plugin for PHPMyAdmin",
"type": "header",
"version": "4.7.0-dev"
},
{
"name": "cars",
"type": "database"
},
{
"data": [
{
"car_id": "1",
"description": "Green Chrysler 300",
"make_id": "5",
"mileage": "113688",
"price": "13545.00",
"transmission": "automatic",
"yearmade": "2007"
}
],
"database": "cars",
"name": "cars",
"type": "table"
},
{
"data": [
{
"make": "Chrysler",
"make_id": "5"
}
],
"database": "cars",
"name": "makes",
"type": "table"
}
]
LaTeX¶
Якщо ви хочете вставити дані таблиці або структуру в LaTeX, це правильний вибір для вас.
LaTeX - це система набору, яка дуже підходить для створення науково-математичних документів з високою друкарською якістю. Він також підходить для виготовлення будь-яких інших документів, від простих листів до повних книг. LaTeX використовує TeX як свій двигун форматування. Дізнайтеся більше про TeX та LaTeX у Comprehensive TeX Archive Network <https://www.ctan.org/>`також дивіться `короткий опис TeX.
Вихід потрібно вставити в документ LaTeX, перш ніж його можна буде показати, наприклад, у наступному документі:
\documentclass{article}
\title{phpMyAdmin SQL output}
\author{}
\usepackage{longtable,lscape}
\date{}
\setlength{\parindent}{0pt}
\usepackage[left=2cm,top=2cm,right=2cm,nohead,nofoot]{geometry}
\pdfpagewidth 210mm
\pdfpageheight 297mm
\begin{document}
\maketitle
% insert phpMyAdmin LaTeX Dump here
\end{document}
MediaWiki¶
Обоє, таблиці і бази даних можуть бути експортовані в формат MediaWiki, який використовується в Вікіпедії для відображення таблиці. Він може експортувати структуру, дані або обидва, включаючи імена таблиць або заголовки.
Електрона таблиця OpenDocument¶
Відкритий стандарт для електронних таблиць, який широко використовується. Багато останніх програм електронних таблиць, таких як LibreOffice, OpenOffice, Microsoft Office або Документи Google, можуть обробляти цей формат.
Текст OpenDocument¶
New standard for text data which is being widely adopted. Most recent word processors (such as LibreOffice, OpenOffice, Microsoft Word, AbiWord or KWord) can handle this.
PDF¶
Для презентації PDF-файл, який не можна редагувати, може бути кращим вибором для вас.
PHP масив¶
Ви можете створити файл php, який буде оголошувати багатовимірний масив із вмістом вибраної таблиці або бази даних.
SQL¶
Експорт в SQL можна використовувати для відновлення бази даних, таким чином, це корисно для резервного копіювання.
Опція „Максимальна довжина створених запитів“, як видається, недокументована. Але експерименти показали, що він розщеплює великі розширені INSERTS, тому кожен не перевищує задану кількість байтів (або символів?). Таким чином, при імпорті файлу для великих таблиць ви уникаєте помилки «Отриманий пакет більше, ніж „max_allowed_packet“ байтів».
Параметри даних¶
Повні вставки додає назви стовпців до дампа SQL. Цей параметр покращує читаність та надійність дампа. Додавання імен стовпців збільшує розмір дампа, але коли він поєднується з розширеними вставками, він незначний.
Розширені вставки об’єднують декілька рядків даних у єдиний запит INSERT. Це значно зменшить розмір файлу для великих SQL дампів, збільшує швидкість INSERT при імпорті, і звичайно рекомендується.
Texy!¶
Texy! формат розмітки. Ви можете побачити приклад на Texy! демо.
XML¶
Легко аналізувати parsable для використання з користувацькими скриптами.
Змінено в версії 3.3.0: Використана схема XML змінилася з версії 3.3.0
YAML¶
YAML is a data serialization format which is both human readable and computationally powerful ( <https://yaml.org> ).
Користувацькі теми¶
phpMyAdmin поставляється з підтримкою тем третьої сторони. Ви можете завантажити додаткові теми з нашого вебсайту за адресою <https://www.phpmyadmin.net/themes/>.
Конфігурація¶
Themes are configured with $cfg['ThemeManager']
and
$cfg['ThemeDefault']
. Under ./public/themes/
, you should not
delete the directory pmahomme
or its underlying structure, because this is
the system theme used by phpMyAdmin. pmahomme
contains all images and
styles, for backwards compatibility and for all themes that would not include
images or css-files. If $cfg['ThemeManager']
is enabled, you
can select your favorite theme on the main page. Your selected theme will be
stored in a cookie.
Створення власної теми¶
Для того, щоб створити тему:
- make a new subdirectory (for example «your_theme_name») under
./public/themes/
. - скопіюйте файли та каталоги з
pmahomme
до «your_theme_name» - редагувати css-файли в «your_theme_name/css»
- помістити нові зображення в «your_theme_name/img»
- edit
_variables.scss
in «your_theme_name/scss» - редагувати
theme.json
в «your_theme_name» що містять метадані теми (дивіться нижче) - зробіть новий скріншот своєї теми та збережіть його під «your_theme_name/screen.png»
Тема метаданих¶
Змінено в версії 4.8.0: До 4.8.0 тематичні метадані були в info.inc.php
файлі. Його замінили theme.json
щоб дозволити простий синтаксичний аналіз (без необхідності обробляти PHP-код) і для підтримки додаткових функцій.
У каталозі теми є файл theme.json
який містить тематичні метадані. В даний час він складається з:
-
name
Відображати назву теми.
Це поле є обов’язковим.
-
version
Версія теми, може бути досить довільна і не повинна збігатися з версією phpMyAdmin.
Це поле є обов’язковим.
-
description
Опис теми. Буде показаний на вебсайті.
Це поле є обов’язковим.
-
author
Ім’я автора теми.
Це поле є обов’язковим.
-
url
Посилання на сайт автора теми. Це гарна ідея мати спосіб отримати там підтримку.
-
supports
Масив підтримуваних основних версій phpMyAdmin.
Це поле є обов’язковим.
Наприклад, визначення для оригінальної теми, що постачається з phpMyAdmin 4.8:
{
"name": "Original",
"version": "4.8",
"description": "Original phpMyAdmin theme",
"author": "phpMyAdmin developers",
"url": "https://www.phpmyadmin.net/",
"supports": ["4.8"]
}
Спільний доступ до зображень¶
Якщо ви не бажаєте використовувати власні символи та кнопки, видаліть каталог «img» в «your_theme_name». phpMyAdmin буде використовувати піктограми та кнопки за замовчуванням (з системної теми pmahomme
).
Інші джерела інформації¶
Друкована книга¶
Повне керівництво для використання phpMyAdmin є книга Впровадження phpMyAdmin для ефективного управління MySQL Marc Delisle. Ви можете отримати інформацію про книгу та інші офіційно схвалені книги на сайті phpMyAdmin.
FAQ - Питання що часто задаються¶
Будь ласка, подивіться на наш Link section на офіційній сторінці phpMyAdmin для поглибленого висвітлення функцій phpMyAdmin або інтерфейсу.
Сервер¶
1.1 Сервер дає збій кожного разу, коли потрібна конкретна дія, або phpMyAdmin надсилає браузеру порожню сторінку або сторінку, повну загадкових символів, що я можу зробити?¶
Try to set the $cfg['OBGzip']
directive to false
in your
config.inc.php
file and the zlib.output_compression
directive to
Off
in your php configuration file.
1.2 Сервер Apache призводить до збою при використанні phpMyAdmin.¶
Спершу слід спробувати найновіші версії Apache (і, можливо, MySQL). Якщо ваш сервер продовжує збої, зверніться по допомогу до різних груп підтримки Apache.
1.3 (знято).¶
1.4. Використовуючи phpMyAdmin в IIS, з’являється повідомлення про помилку: „Вказана CGI-програма неправильно оброблена, якщо не повертається повний набір заголовків HTTP …“.¶
Ви просто забули прочитати файл install.txt з дистрибутива PHP. Ознайомтеся з останнім повідомленням у цьому PHP bug report #12061 з офіційної бази даних помилок PHP.
1.5. Використовуючи phpMyAdmin у IIS, я стикаюсь із збоями та/або багатьма повідомленнями про помилки з HTTP.¶
Це відома проблема з PHP ISAPI фільтром: він не настільки стабільний. Замість нього використовуйте режим аутентифікації файлів cookie.
1.6 Я не можу використовувати phpMyAdmin на PWS: нічого не відображається!¶
This seems to be a PWS bug. Filippo Simoncini found a workaround (at
this time there is no better fix): remove or comment the DOCTYPE
declarations (2 lines) from the scripts src/Header.php
and index.php
.
1.7 Як я можу отримати gzip-файл з дампа чи CSV-експорту? Це, здається, не працює.¶
Ця особливість базується на gzencode()
функції PHP, щоб бути більш незалежними від платформи (Unix / Windows, Safe Mode чи ні, і так далі). Отже, ви повинні мати підтримку Zlib (--with-zlib
).
1.8 Я не можу вставити текстовий файл у таблицю, і отримую помилку про діючий безпечний режим.¶
Ваш завантажений файл зберігається в PHP у «upload dir», як визначено в php.ini
за змінною upload_tmp_dir
(зазвичай система за замовчуванням /tmp). Ми рекомендуємо наступні налаштування для серверів Apache, що працюють в безпечному режимі, для забезпечення завантаження файлів при достатній безпеці:
- створити окрему директорію для завантаження: mkdir /tmp/php
- надати право власності на user.group сервера Apache: chown apache.apache /tmp/php
- дати відповідний дозвіл: chmod 600 /tmp/php
- помістити
upload_tmp_dir = /tmp/php
вphp.ini
- перезапустіть Apache
1.9 (знято).¶
1.10 У мене виникають проблеми при завантаженні файлів за допомогою phpMyAdmin на безпечному сервері. Мій браузер Internet Explorer, і я використовую сервер Apache.¶
Як запропонував «Rob M» у форумі phpWizard, додайте цей рядок у httpd.conf:
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
Здається, виявлено багато проблем між Internet Explorer та SSL.
1.11. Під час завантаження файлу з вкладки імпорту я отримую „open_basedir restriction“.¶
З версії 2.2.4 phpMyAdmin підтримує сервери з open_basedir обмеженням. Однак вам потрібно створити тимчасовий каталог і налаштувати його як $cfg['TempDir']
. Завантажені файли будуть переміщені туди та після виконання SQL команд, будуть видалені.
1.12 Я втратив root пароль MySQL, що я можу зробити?¶
phpMyAdmin перевіряє автентифікацію на сервері MySQL, який ви використовуєте, так щоб відновити втрату пароля phpMyAdmin, потрібно відновити його на рівні MySQL.
Посібник MySQL пояснює, як скинути дозволи.
Якщо ви використовуєте сервер MySQL, встановлений вашим провайдером хостингу, зверніться до їхньої служби підтримки, щоб відновити пароль.
1.13 (знято).¶
1.14 (знято).¶
1.15 У мене проблеми з іменами стовпців mysql.user.¶
У попередніх версіях MySQL стовпці Користувач
та Пароль
були названі користувач
і пароль
. Будь ласка, змініть свої назви стовпців, щоб відповідати поточним стандартам.
1.16 Я не можу завантажувати великі файли дампа (проблеми з пам’яттю, HTTP або тайм-аут).¶
Починаючи з версії 2.7.0, двигун імпорту був переписаний, і ці проблеми не повинні виникати. Якщо можливо, оновіть phpMyAdmin до останньої версії, щоб скористатися перевагами нових функцій імпорту.
Перше, що потрібно перевірити (або попросіть свого постачальника послуг-хоста перевірити) значення max_execution_time
, upload_max_filesize
, memory_limit
і post_max_size
в php.ini
файлі конфігурації. Всі ці налаштування обмежують максимальний розмір даних, які можуть бути передані та оброблені PHP. Будь ласка, зверніть увагу, що post_max_size
має бути більше, ніж upload_max_filesize
. Існує кілька способів вирішення проблем, якщо завантаження завелике, або хостинг-провайдер не бажає змінювати налаштування:
Подивіться на
$cfg['UploadDir']
особливість. Це дозволяє завантажити файл на сервер через scp, FTP або ваш улюблений спосіб передачі файлів. Після цього phpMyAdmin може імпортувати файли з тимчасового каталогу. Детальніша інформація доступна в Конфігурація цього документа.Використовуючи утиліту (наприклад, BigDump), розділіть файли перед завантаженням. Ми не можемо підтримувати ці або інші сторонні програми, але усвідомлюємо, що користувачі мають успіх у цьому.
Якщо у вас є доступ до оболонки (командного рядка), використовуйте MySQL для імпорту файлів безпосередньо. Ви можете зробити це, видавши команду «source» з MySQL:
source filename.sql;
1.17 Яку версію баз даних підтримує phpMyAdmin?¶
Для MySQL, версії 5.5 та новіші підтримуються. Для старіших версій MySQL наша Downloads сторінка пропонує старіші версії phpMyAdmin (які можуть бути непідтримуваними).
Для MariaDB, версії 5.5 та новіші підтримуються.
1.17. Я не можу підключитися до сервера MySQL. Він завжди повертає повідомлення про помилку: «Клієнт не підтримує протокол автентифікації, який запитує сервер, розгляньте оновлення клієнта MySQL»¶
Ви намагалися отримати доступ до MySQL зі старою клієнтською бібліотекою MySQL. Версію вашої клієнтської бібліотеки MySQL можна перевірити на виході phpinfo(). Загалом, він повинен мати принаймні ту ж проміжну версію, що і ваш сервер - як згадувалося в 1.17 Яку версію баз даних підтримує phpMyAdmin?. Ця проблема, як правило, викликана використанням MySQL версії 4.1 або новішої версії. MySQL змінив хеш аутентифікації, і ваш PHP намагається використовувати старий метод. Правильним рішенням є використання mysqli extension з належною бібліотекою клієнта, щоб відповідати вашій установці MySQL. Детальніша інформація (і декілька обхідних рішень) містяться в Документація MySQL.
1.18 (знято).¶
1.19 Я не можу запустити функцію «відображення відносин», оскільки скрипт, схоже, не знає шрифт який я використовую!¶
Бібліотека TCPDF, яку ми використовуємо для цієї функції, вимагає використання спеціальних файлів для обміну шрифтами. Будь-ласка, зверніться до TCPDF manual для створення цих файлів.
1.20 Я отримую помилку про відсутність розширень mysqli і mysql.¶
Щоб підключитися до сервера MySQL, PHP потребує набір функцій MySQL, що називаються «MySQL extension». Це розширення може бути частиною розподілу PHP (compiled-in), інакше він повинен бути завантажений динамічно. Ймовірно, його назва mysqli.so or php_mysqli.dll. phpMyAdmin намагався завантажити розширення, але не вдалося. Зазвичай проблема вирішується шляхом встановлення програмного пакета під назвою „PHP-MySQL“ або щось подібне.
There was two interfaces PHP provided as MySQL extensions - mysql
and mysqli
. The mysql
interface was removed in PHP 7.0.
Ця проблема може також бути викликана неправильними шляхами в php.ini
або неправильним використанням php.ini
.
Переконайтеся, що файли розширення існують у папці, в якій extension_dir
вказує на те, що відповідні рядки у вашому php.ini
не коментуються (ви можете використовувати phpinfo ()
для перевірки поточної настройки):
[PHP]
; Directory in which the loadable extensions (modules) reside.
extension_dir = "C:/Apache2/modules/php/ext"
Файл php.ini
може бути завантажений з декількох місць (особливо в Windows), тому, будь ласка, перевірте, чи оновлюється правильно файл. Якщо ви використовуєте Apache, ви можете вказати йому використовувати певний шлях для цього файлу за допомогою директиви PHPIniDir
:
LoadModule php7_module "C:/php7/php7apache2_4.dll"
<IfModule php7_module>
PHPIniDir "C:/php7"
<Location>
AddType text/html .php
AddHandler application/x-httpd-php .php
</Location>
</IfModule>
In some rare cases this problem can be also caused by other extensions loaded
in PHP which prevent MySQL extensions to be loaded. If anything else fails, you
can try commenting out extensions for other databases from php.ini
.
1.21 Я запускаю CGI-версію PHP під Unix, і я не можу увійти, використовуючи cookie auth.¶
В php.ini
, встановити mysql.max_links
більше чим 1.
1.22. Я не бачу поля «Розташування текстового файлу», тому я не можу завантажити.¶
Це, швидше за все, тому що в php.ini
, ваш file_uploads
параметр не встановлено до «on».
1.23 Я запускаю MySQL на машині Win32. Кожного разу, коли я створюю нову таблицю, імена стовпців та таблиць змінюються на нижній регістр!¶
Це відбувається через директиву MySQL lower_case_table_names
за замовчуванням 1 (ON
) в Win32 версії MySQL. Ви можете змінити цю поведінку, просто змінюючи директиву на 0 (OFF
): Просто відредагуйте свій my.ini
файл яка повинна бути розташована у вашій директорії Windows і додати до групи [mysqld] наступний рядок:
set-variable = lower_case_table_names=0
Примітка
Примушування цієї змінної до 0 за допомогою –lower-case-table-names=0 для файлообмінної системи, що не стосується регістру, і доступ до таблиць MyISAM, використовуючи різні символи, може призвести до пошкодження індексу.
Далі, збережіть файл і перезапустіть службу MySQL. Ви завжди можете перевірити значення цієї директиви за допомогою запиту
SHOW VARIABLES LIKE 'lower_case_table_names';
1.24 (знято).¶
1.25 Я використовую Apache за допомогою mod_gzip-1.3.26.1a в Windows XP, і я отримую проблеми, такі як невизначені змінні, коли я запускаю SQL-запит.¶
Підказка від Jose Fandos: додайте коментар до наступних двох рядків у httpd.conf, ось так:
# mod_gzip_item_include file \.php$
# mod_gzip_item_include mime "application/x-httpd-php.*"
оскільки в цій версії mod_gzip в Apache (Windows) виникають проблеми з обробкою скриптів PHP. Звичайно, вам доведеться перезапустити Apache.
1.26 Я тільки встановив phpMyAdmin в корені документа IIS, але при спробі запустити phpMyAdmin я отримую помилку «Не вказано вхідний файл».¶
This is a permission problem. Right-click on the phpmyadmin folder and choose properties. Under the tab Security, click on «Add» and select the user «IUSR_machine» from the list. Now set their permissions and it should work.
1.27 Я отримую порожні сторінки, коли хочу переглянути велику сторінку (наприклад, db_structure.php з великою кількістю таблиць).¶
Це було спричинено PHP помилкою що виникає при ввімкненій буферизації виводу GZIP. Якщо ви вимкнете ($cfg['OBGzip']
в config.inc.php
), це повинно працювати. Ця помилка буде виправлена в PHP 5.0.0.
1.28 Мій сервер MySQL іноді відмовляється від запитів і повертає повідомлення „Errorcode: 13“. Що це значить?¶
Це може статися через помилку MySQL при наявності імен бази даних/таблиць з символами верхнього регістру, хоча lower_case_table_names
встановлено на 1. Щоб це виправити, вимкніть цю директиву, переведіть всі імена бази даних та таблиць в нижній регістр і знову ввімкніть. Крім того, помилка виправлення доступна, починаючи з MySQL 3.23.56 / 4.0.11-gamma.
1.29. Коли я створюю таблицю або змінюю стовпець, я отримую помилку, а стовпці дублюються.¶
Можливо Apache налаштований таким чином, що PHP має проблеми з інтерпретацією файлів .php.
Проблеми виникають, коли використовуються два різні (і суперечливі) набори директив:
SetOutputFilter PHP
SetInputFilter PHP
і
AddType application/x-httpd-php .php
У тому випадку, коли бачили, один набір директив в /etc/httpd/conf/httpd.conf
, а інший - в /etc/httpd/conf/addon-modules/php.conf
. Рекомендований спосіб з AddType
, просто коментувати перший набір рядків і перезапустити Apache:
#SetOutputFilter PHP
#SetInputFilter PHP
1.31 Які PHP версії підтримує phpMyAdmin?¶
Починаючи з версії 4.5, phpMyAdmin підтримує тільки PHP 5.5 і новіші версії. З часу випуску 4.1 phpMyAdmin підтримує лише PHP 5.3 і новіші версії. Для PHP 5.2 ви можете використовувати версії 4.0.x.
PHP 7 підтримується з phpMyAdmin 4.6, PHP 7.1 підтримується з 4.6.5, PHP 7.2 is supported since 4.7.4.
HHVM підтримується до версії phpMyAdmin 4.8.
Since release 5.0, phpMyAdmin supports only PHP 7.1 and newer. Since release 5.2, phpMyAdmin supports only PHP 7.2 and newer. Since release 6.0, phpMyAdmin supports only PHP 8.1 and newer.
1.32 Чи можу я використовувати HTTP-аутентифікацію за допомогою IIS?¶
Так. Ця процедура була перевірена за допомогою phpMyAdmin 2.6.1, PHP 4.3.9 в ISAPI режимі під IIS 5.1.
- У файлі
php.ini
, встановитиcgi.rfc2616_headers = 0
- У діалоговому вікні
Властивості вебсайту ->Файл/Довідник безпеки -> Анонімний доступ
, установіть прапорецьАнонімний доступ
та зніміть решту прапорців (тобто зніміть прапорецьБазова аутентифікація
,Вбудована аутентифікація Windows
іДайджест
Якщо увімкнено.) НатиснітьOK
. - У
Користувацькі помилки
виберіть діапазон з401; 1
по401; 5
та натисніть кнопкуВстановити за замовчуванням
.
Дивись також
1,33 (знято).¶
1.34 Чи можу я безпосередньо отримати доступ до бази даних або табличних сторінок?¶
Так. У вікні ви можете використовувати URL like http://server/phpMyAdmin/index.php?server=X&db=database&table=table&target=script
. Для server
ви можете використовувати номер сервера, який відноситься до числового індексу хоста (від $ i
) у config.inc.php
. Частини таблиці та скрипти необов’язкові.
Якщо ви хочете використовувати URL-адресу типу http://server/phpMyAdmin/database[/table][/script]
, вам потрібно зробити додаткову конфігурацію. Наступні рядки застосовуються тільки для Apache веб-сервера. По-перше, переконайтеся, що ви включили деякі функції в глобальній конфігурації Apache. Вам потрібні увімкнути Options SymLinksIfOwnerMatch
та AllowOverride FileInfo
в каталозі, де встановлено phpMyAdmin, а також включити mod \ _rewrite. Тоді вам потрібно створити наступне .htaccess файл у кореневій папці встановлення phpMyAdmin (не забудьте змінити ім’я каталогу всередині нього):
RewriteEngine On
RewriteBase /path_to_phpMyAdmin
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-z_]+\.php)$ index.php?db=$1&table=$2&target=$3 [R]
RewriteRule ^([a-zA-Z0-9_]+)/([a-z_]+\.php)$ index.php?db=$1&target=$2 [R]
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ index.php?db=$1&table=$2 [R]
RewriteRule ^([a-zA-Z0-9_]+)$ index.php?db=$1 [R]
Змінено в версії 5.1.0: Support for using the target
parameter was removed in phpMyAdmin 5.1.0.
Use the route
parameter instead.
1.35 Чи можу я використовувати HTTP-аутентифікацію з Apache CGI?¶
Так. Однак вам потрібно передати змінну аутентифікації на CGI використовуючи наступне правило перезапису:
RewriteEngine On
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
1.36 Я отримую помилку «500 Internal Server Error».¶
Тут може бути багато пояснень і перегляд файлу журналу помилок вашого сервера може дати ключ.
1.37 Я запускаю phpMyAdmin на кластері різних машин і шифрування пароля в cookie auth не працює.¶
If your cluster consist of different architectures, PHP code used for encryption/decryption won’t work correctly. This is caused by use of pack/unpack functions in code. Only solution is to use openssl extension which works fine in this case.
1.38 Чи можу я використовувати phpMyAdmin на сервері, на якому увімкнено Suhosin?¶
Так, але значення параметрів конфігурації за замовчуванням Suhosin викликають проблеми з деякими операціями, наприклад редагування таблиці з багатьма стовпцями і ні primary key або текстуально primary key.
Конфігурація Suhosin може призвести до несправності в деяких випадках, і її не можна повністю уникнути, оскільки phpMyAdmin - це така програма, яка потребує передачі великих обсягів стовпців у одному HTTP-запиті, що є те, що Suhosin намагається запобігти. Взагалі всі suhosin.request.*
, suhosin.post.*
і suhosin.get.*
директиви можуть негативно впливати на зручність і простоту використання phpMyAdmin. Ви завжди можете знайти у своїх журналах помилок, які обмежуються причиною скидання змінної, тому ви можете діагностувати проблему та налаштувати відповідну конфігураційну змінну.
Значення за замовчуванням для більшості параметрів налаштування Suhosin працюватимуть у більшості сценаріїв, проте, можливо, вам доведеться налаштувати принаймні наступні параметри:
- suhosin.request.max_vars should be increased (eg. 2048)
- suhosin.post.max_vars should be increased (eg. 2048)
- suhosin.request.max_array_index_length should be increased (eg. 256)
- suhosin.post.max_array_index_length should be increased (eg. 256)
- suhosin.request.max_totalname_length should be increased (eg. 8192)
- suhosin.post.max_totalname_length should be increased (eg. 8192)
- suhosin.get.max_value_length should be increased (eg. 1024)
- suhosin.sql.bailout_on_error needs to be disabled (the default)
- suhosin.log.* should not include SQL, otherwise you get big slowdown
- suhosin.sql.union must be disabled (which is the default).
- suhosin.sql.multiselect must be disabled (which is the default).
- suhosin.sql.comment must be disabled (which is the default).
Для подальшого підвищення безпеки ми також рекомендуємо ці модифікації:
- suhosin.executor.include.max_traversal should be
enabled as a mitigation against local file inclusion attacks. We suggest
setting this to 2 as
../
is used with the ReCaptcha library. - suhosin.cookie.encrypt should be enabled.
- suhosin.executor.disable_emodifier should be enabled.
Ви також можете відключити попередження, використовуючи $cfg['SuhosinDisableWarning']
.
1.39 Коли я намагаюся з’єднатися через https, я можу увійти в систему, але потім моє з’єднання перенаправляється назад до http. Що може спричинити таку поведінку?¶
Це пов’язано з тим, що PHP-скрипти не знають, що сайт використовує https. Залежно від використовуваного веб-сервера, ви повинні налаштувати його, щоб дозволити PHP знати про URL-адресу та схему, що використовуються для її доступу.
Наприклад, переконайтеся, що в Apache в налаштуваннях ви включили SSLOptions
і StdEnvVars
.
Дивись також
1.40 При доступі до phpMyAdmin через зворотний проксі-сервер Apache, ім’я користувача cookie не працює.¶
Щоб мати можливість використовувати cookie auth, Apache повинен знати, що він повинен переписати заголовки set-cookie. Приклад із документації Apache 2.2:
ProxyPass /mirror/foo/ http://backend.example.com/
ProxyPassReverse /mirror/foo/ http://backend.example.com/
ProxyPassReverseCookieDomain backend.example.com public.example.com
ProxyPassReverseCookiePath / /mirror/foo/
Примітка: якщо бекендерний url виглядає як http://server/~user/phpmyadmin
, тильда (~) url повинна бути закодованою як %7E у ProxyPassReverse* рядках. Це не специфічно для phpmyadmin, це просто поведінка Apache.
ProxyPass /mirror/foo/ http://backend.example.com/~user/phpmyadmin
ProxyPassReverse /mirror/foo/ http://backend.example.com/%7Euser/phpmyadmin
ProxyPassReverseCookiePath /%7Euser/phpmyadmin /mirror/foo
1.41 Коли я переглядаю базу даних і хочу переглянути свої привілеї, я отримую помилку про невідомий стовпець.¶
Таблиці привілеїв MySQL не оновлюються, вам потрібно запустити команду mysql_upgrade на сервері.
1.42 Як я можу запобігти доступу роботів до phpMyAdmin?¶
Ви можете додати різні правила до .htaccess для фільтрації доступу за полем користувача агента. Це досить легко обійти, але може запобігти хоча б деяким роботам, які мають доступ до вашої інсталяції.
RewriteEngine on
# Allow only GET and POST verbs
RewriteCond %{REQUEST_METHOD} !^(GET|POST)$ [NC,OR]
# Ban Typical Vulnerability Scanners and others
# Kick out Script Kiddies
RewriteCond %{HTTP_USER_AGENT} ^(java|curl|wget).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(libwww-perl|curl|wget|python|nikto|wkito|pikto|scan|acunetix).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|HTTrack|clshttp|archiver|loader|email|harvest|extract|grab|miner).* [NC,OR]
# Ban Search Engines, Crawlers to your administrative panel
# No reasons to access from bots
# Ultimately Better than the useless robots.txt
# Did google respect robots.txt?
# Try google: intitle:phpMyAdmin intext:"Welcome to phpMyAdmin *.*.*" intext:"Log in" -wiki -forum -forums -questions intext:"Cookies must be enabled"
RewriteCond %{HTTP_USER_AGENT} ^.*(AdsBot-Google|ia_archiver|Scooter|Ask.Jeeves|Baiduspider|Exabot|FAST.Enterprise.Crawler|FAST-WebCrawler|www\.neomo\.de|Gigabot|Mediapartners-Google|Google.Desktop|Feedfetcher-Google|Googlebot|heise-IT-Markt-Crawler|heritrix|ibm.com\cs/crawler|ICCrawler|ichiro|MJ12bot|MetagerBot|msnbot-NewsBlogs|msnbot|msnbot-media|NG-Search|lucene.apache.org|NutchCVS|OmniExplorer_Bot|online.link.validator|psbot0|Seekbot|Sensis.Web.Crawler|SEO.search.Crawler|Seoma.\[SEO.Crawler\]|SEOsearch|Snappy|www.urltrends.com|www.tkl.iis.u-tokyo.ac.jp/~crawler|SynooBot|crawleradmin.t-info@telekom.de|TurnitinBot|voyager|W3.SiteSearch.Crawler|W3C-checklink|W3C_Validator|www.WISEnutbot.com|yacybot|Yahoo-MMCrawler|Yahoo\!.DE.Slurp|Yahoo\!.Slurp|YahooSeeker).* [NC]
RewriteRule .* - [F]
1.43 Чому я не можу відобразити структуру моєї таблиці, що містить сотні стовпчиків?¶
Оскільки memory_limit
вашого PHP є занадто малим; налаштуйте в php.ini
.
1.44 Як я можу зменшити встановлений розмір phpMyAdmin на диску?¶
Деякі користувачі просили зменшити розмір установки phpMyAdmin. Це не рекомендується і може призвести до плутанини над відсутніми функціями, але можна зробити. Список файлів та відповідних функціональних можливостей, які граціозно деградують при видаленні, включають:
./locale/
тека, або невикористані підтеки (переклади інтерфейсу)- Any unused themes in
./public/themes/
except the default theme pmahomme. ./libraries/language_stats.inc.php
(translation statistics)./doc/
(документація)./setup/
(скрипт установки)./examples/
(configuration examples)./sql/
(SQL scripts to configure advanced functionalities)./js/src/
(Source files to re-build ./js/dist/)./js/global.d.ts
JS type declaration file- Run rm -rv vendor/tecnickcom/tcpdf && composer dump-autoload –no-interaction –optimize –dev (exporting to PDF)
- Run rm -rv vendor/williamdes/mariadb-mysql-kbs && composer dump-autoload –no-interaction –optimize –dev (external links to MariaDB and MySQL documentations)
- Run rm -rv vendor/code-lts/u2f-php-server && composer dump-autoload –no-interaction –optimize –dev (U2F second factor authentication)
- Run rm -rv vendor/pragmarx/* && composer dump-autoload –no-interaction –optimize –dev (2FA second factor authentication)
- Run rm -rv vendor/bacon/bacon-qr-code && composer dump-autoload –no-interaction –optimize –dev (QRcode generation for 2FA second factor authentication)
1.45 Під час спроби входу я отримую повідомлення про невідомий метод автентифікації caching_sha2_password¶
Під час входу за допомогою MySQL версії 8 або новішої ви можете зіткнутися з таким повідомленням про помилку:
mysqli_real_connect(): сервер запитав метод автентифікації, невідомий клієнту [caching_sha2_password]
mysqli_real_connect(): (HY000/2054): сервер запитав метод автентифікації, невідомий клієнту
Ця помилка виникає через проблему сумісності версій між PHP і MySQL. Проект MySQL представив новий метод автентифікації (наші тести показують, що це почалося з версії 8.0.11), однак у PHP не було можливості використовувати цей метод автентифікації. PHP повідомляє, що це було виправлено у PHP версії 7.4.
Користувачам, у яких це виникло, рекомендується оновити інсталяцію PHP, однак існує обхідний шлях. Ваш обліковий запис користувача MySQL можна налаштувати на використання старішої автентифікації за допомогою такої команди, як
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'PASSWORD';
Конфігурація¶
2.1 Відображається повідомлення про помилку «Попередження: неможливо додати заголовок інформації - заголовки, вже відіслані …», яка проблема?¶
Відредагуйте config.inc.php`файл і переконайтеся, що в ньому немає нічого ( немає порожніх рядків, без пробілів, без символів ...) ні перед тегом ``<?php`
на початку, ні після в кінці тегу ?>
.
2.2 phpMyAdmin не може підключитися до MySQL. Що не так?¶
Будь-яка помилка з налаштуванням PHP або неправильне ім’я користувача та пароль. Спробуйте створити невеликий скрипт, який використовує mysql_connect і подивіться, чи працює він. Якщо це не так, можливо, ви навіть не створили підтримку MySQL на PHP.
2.3 Повідомлення про помилку «Попередження: не вдалося підключити MySQL: неможливо підключитися до локального сервера MySQL через сокет „/tmp/mysql.sock“ (111) …». Що я можу зробити?¶
Повідомлення про помилку також може бути: Error #2002 - Сервер не відповідає (або локальний сервер MySQL неправильно налаштовано).
По-перше, потрібно визначити, який сокет використовує MySQL. Для цього підключіться до свого сервера та перейдіть до каталогу скриньки MySQL. У цьому каталозі повинен бути файл з назвою mysqladmin. Тип ./mysqladmin variables
, і це повинно дати вам багато інформації про ваш сервер MySQL, включаючи гніздо (/tmp/mysql.sock, наприклад). Ви також можете запитати свого Інтернет-провайдера інформацію про з’єднання або, якщо ви хостите свій власний, з’єднання з клієнтом командного рядка „mysql“ і тип „статус“, щоб отримати тип з’єднання та сокет або номер порту.
Потім вам потрібно вказати PHP, щоб використовувати цей сокет. Ви можете це зробити для всіх PHP в php.ini
або для phpMyAdmin тільки в config.inc.php
. Наприклад: $cfg['Servers'][$i]['socket']
. Будь ласка, також переконайтеся, що дозволи цього файлу дозволяють вашим веб-серверам читати.
На моєму RedHat-Box є сокет MySQL /var/lib/mysql/mysql.sock. В php.ini
ви знайдете рядок
mysql.default_socket = /tmp/mysql.sock
змінити до
mysql.default_socket = /var/lib/mysql/mysql.sock
Потім перезапустіть apache, і це буде працювати.
Подивіться також відповідний розділ документації MySQL.
2.4 Мій браузер не відображає нічого, коли я намагаюся запустити phpMyAdmin, що я можу зробити?¶
Спробуйте встановити $cfg['OBGzip']
директиву до false
у файлі конфігурації phpMyAdmin. Це деколи допомагає. Також перегляньте номер версії PHP: Якщо він містить «b» або «alpha», це означає, що ви використовуєте тестову версію PHP. Це не така гарна ідея, будь ласка, оновіть до звичайної версії.
2.5 Кожного разу, коли я хочу вставити або змінити рядок або скинути базу даних або таблицю, з’являється повідомлення про помилку 404 (сторінку не знайдено) або, при спробі HTTP або аутентифікації cookie, мені пропонують знову ввійти. Що не так?¶
Перевірте установку веб-сервера, чи правильно заповнює будь-які PHP_SELF або REQUEST_URI змінні.
Якщо ви використовуєте phpMyAdmin за зворотним проксі, встановіть $cfg['PmaAbsoluteUri']
директиву в файл конфігурації phpMyAdmin відповідно до вашої настройки.
2.6 Я отримую «Доступ відхилений для користувача: „root@localhost“ (Використання пароля: ТАК)»- помилка при спробі отримати доступ до MySQL-сервера на хості, який перенаправлений на порт для мого локального хосту.¶
Коли ви використовуєте порт на локальному комп’ютері, який ви переспрямовуєте через порт-пересилання на інший хост, MySQL не визнає локальний сайт, як очікувалося. Erik Wasser пояснює: Рішення є: якщо ваш хост - «localhost» MySQL (інструмент командного рядка mysql також) завжди намагається використовувати гніздо підключення для прискорення роботи. І це не працює в цій конфігурації з перенаправленням порту. Якщо ви вводите „127.0.0.1“ як ім’я хоста, все є правильним, і MySQL використовує TCP з’єднання.
2.7 Використання та створення тем¶
Дивіться Користувацькі теми.
2.8 Я отримую помилки «Відсутні параметри», що я можу зробити?¶
Ось кілька пунктів для перевірки:
- В
config.inc.php
, спробуйте залишити порожньою директиву$cfg['PmaAbsoluteUri']
. Дивіться також 4.7. Вікно автентифікації відображається неодноразово, чому?. - Можливо, у вас є пошкоджена установка PHP або вам потрібно оновити Zend Optimizer. Дивіться <https://bugs.php.net/bug.php?id=31134>.
- Якщо ви використовуєте Hardened PHP з директивою ini
varfilter.max_request_variables
встановіть за замовчуванням (200) або інше низьке значення, ви можете отримати цю помилку, якщо в таблиці є велика кількість стовпців. Відрегулюйте це налаштування відповідно. (Дякуємо Klaus Dorninger за підказку). - В
php.ini
директиваarg_separator.input
, з значенням «;» викличе цю помилку. Замініть його «&;». - If you are using Suhosin, you might want to increase request limits.
- Каталог, вказаний в
php.ini
директивиsession.save_path
не існує або доступний лише для читання (причина може бути помилка в програмі встановлення PHP).
2.9 Перегляд панелі прогресу завантаження¶
To be able to see a progress bar during your uploads, your server must have the uploadprogress extension, and you must be running PHP 5.4.0 or higher. Moreover, the JSON extension has to be enabled in your PHP.
Якщо використовується PHP 5.4.0 або вище, ви повинні встановити session.upload_progress.enabled
до 1
в php.ini
. Однак, починаючи з phpMyAdmin версії 4.0.4, успішне завантаження на основі сеансу було тимчасово вимкнено через його проблемну поведінку.
2.10 Як створити рядок випадкових байтів¶
One way to generate a string of random bytes suitable for cryptographic use is using the random_bytes PHP function. Since this function returns a binary string, the returned value should be converted to printable format before being able to copy it.
For example, the $cfg['blowfish_secret']
configuration directive requires a 32-bytes long string. The
following command can be used to generate a hexadecimal representation of this string.
php -r 'echo bin2hex(random_bytes(32)) . PHP_EOL;'
Наведений вище приклад виведе щось подібне до:
f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851
And then this hexadecimal value can be used in the configuration file.
$cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
The sodium_hex2bin function is used here to convert the hexadecimal value back to the binary format.
Відомі обмеження¶
3.1. Використовуючи автентифікацію HTTP, користувач, який вийшов із системи, не може знову ввійти в систему з таким самим іменем.¶
Це пов’язано з механізмом автентифікації (протоколу), який використовує phpMyAdmin. Щоб обійти цю проблему: просто закрийте всі відкриті вікна браузера, а потім поверніться до phpMyAdmin. Ви повинні отримати можливість ввійти знову.
3.2 При скиданні великої таблиці в стиснутому режимі, я отримую помилку обмеження пам’яті або помилку обмеження часу.¶
Стислі дампи вбудовані в пам’ять і тому обмежуються межами пам’яті php. Для експорту gzip/bzip2 це можна подолати починаючи з версії 2.5.4 використовуючи $cfg['CompressOnFly']
(включено за замовчуванням). Експорт zip не може бути оброблений таким чином, тому, якщо вам потрібні zip-файли для більшого дампа, вам доведеться використовувати інший спосіб.
3.3 З таблицями InnoDB, коли я перейменовую таблицю або стовпець, я втрачаю зовнішні відносини.¶
Це помилка InnoDB, дивіться <https://bugs.mysql.com/bug.php?id=21704>.
3.4 Я не можу імпортувати дампи, створені за допомогою інструмента mysqldump, що входить до складу поставки сервера MySQL.¶
Проблема в тому, що старіші версії mysqldump
створювали невірні коментарі, як ці:
-- MySQL dump 8.22
--
-- Host: localhost Database: database
---------------------------------------------------------
-- Server version 3.23.54
Недійсною частиною коду є горизонтальна лінія з дефісом, яка з’являється один раз у кожному зразку, створеному за допомогою mysqldump. Якщо ви хочете запустити дамп, ви повинні перетворити його в діючий MySQL. Це означає, що вам слід додати пробіл після перших двох типів рядка або додати # перед ним: -- -------------------------------------------------------
або #---------------------------------------------------------
3.5 При використанні вкладеної теки декілька ієрархій відображаються неправильно.¶
Зверніть увагу, що ви не повинні використовувати розділювальний рядок кілька разів без будь-яких символів між ними або на початку/в кінці назви таблиці. Якщо вам потрібно, подумайте про використання іншого TableSeparator або відключення цієї функції.
Дивись також
3.6 (знято).¶
3.7 У мене є таблиця з багатьма (100+) стовпцями, і коли я намагаюся переглянути таблицю, я отримую ряд помилок, таких як «Попередження: неможливо проаналізувати URL-адресу». Як це можна виправити?¶
Ваша таблиця також не має primary key і unique key, тому ми повинні використовувати довгий вираз для ідентифікації цього рядка. Це спричиняє проблеми для аналізу parse_url функції. Обхідний шлях - створити primary key або unique key.
3.8 Я не можу використовувати (натискати) HTML-форми у стовпцях, де я розміщую MIME-перетворення!¶
Через навколишню форму-контейнер (для багаторівневих прапорців), вкладені форми не можуть бути поміщені в таблицю, де phpMyAdmin відображає результати. Тим не менш, ви можете використовувати будь-яку форму всередині таблиці, якщо зберігати батьківський контейнер-форму із цільовим tbl_row_delete.php і просто помістити свої власні вхідні елементи всередину. Якщо ви використовуєте спеціальне поле введення, то форма знову повернеться на сторінку відображення, де ви можете перевірити $HTTP_POST_VARS в перетворенні. Підручник про те, як ефективно використовувати перетворення, дивіться наш Розділ посилання на офіційній сторінці phpMyAdmin.
3.9 Я отримую повідомлення про помилку при використанні «–sql_mode=ANSI» для сервера MySQL.¶
Коли MySQL працює в режимі сумісності з ANSI, існують деякі суттєві відмінності в тому, як SQL структурований (дивіться <https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html>). Найважливіше, символ цитати (») інтерпретується як символ кодування ідентифікатора, а не як символ рядка цитати, що робить багато внутрішніх операцій phpMyAdmin невірними SQL висловлюваннями. Не існує обхідного шляху до цієї поведінки. Новини до цього елемента будуть опубліковані в issue #7383.
3.10 Омоніми та без первинного ключа: Коли результати Вибрати показують більше одного стовпця з таким самим значенням (наприклад, SELECT lastname from employees where firstname like 'A%'
і відображаються два значення «Сміт»), якщо я натискаю кнопку Редагувати, то не можу бути впевненим, що редагую призначений рядок.¶
Переконайтеся, що в таблиці є primary key, так що phpMyAdmin може використовувати його для редагування та видалення посилань.
3.11 Кількість рядків для таблиць InnoDB невірна.¶
phpMyAdmin використовує швидкий метод, щоб отримати кількість рядків, і цей метод повертає лише приблизний підрахунок у випадку з таблицями InnoDB. Дивіться $cfg['MaxExactCount']
для того, щоб змінити ці результати, але це може серйозно вплинути на продуктивність. Однак, можна легко замінити приблизний підрахунок рядків на точний, просто натиснувши на приблизний підрахунок. Це також можна зробити для всіх таблиць одразу, натиснувши суму рядків, яка відображається внизу.
Дивись також
3.12 (знято).¶
3.13 Я отримую помилку при введенні USE
, а потім ім’я бази даних, що містить дефіс.¶
Тести, зроблені в MySQL 5.1.49, показують, що API не приймає цей синтаксис для команди USE.
3.14 Я не можу переглядати таблицю, коли я не маю права Вибрати один з стовпців.¶
Це відоме обмеження phpMyAdmin з самого початку, і це, швидше за все, не буде вирішено в майбутньому.
3.15 (знято).¶
3.16 (знято).¶
3.17 (знято).¶
3.18 Коли я імпортую файл CSV, що містить кілька таблиць, вони об’єднуються в єдину таблицю.¶
Немає надійного способу диференціювати таблиці в CSV формат. На даний момент вам доведеться розбивати CSV, що містять кілька таблиць.
3.19 Коли я імпортую файл і phpMyAdmin визначає відповідну структуру даних, він використовує лише int, decimal і varchar типи.¶
В даний час система виявлення типу імпорту може призначати лише ці типи MySQL до стовпців. В майбутньому, швидше за все буде додано більше але поки що ви маєте можливість відредагувати структуру на свій смак після імпорту. Також слід зазначити, що phpMyAdmin буде використовувати розмір найбільшого елемента в будь-якому стовпчику як розмір стовпця для відповідного типу. Якщо ви знаєте, що ви додасте більші елементи до цього стовпця, то слід вручну змінити розмір стовпців відповідно. Це робиться задля ефективності.
3.20 Після оновлення деякі закладки відсутні або їх вміст не може бути показаний.¶
У якийсь момент, набір символів, який використовується для зберігання вмісту закладок, змінено. Краще відтворити вашу закладку з нової версії phpMyAdmin.
3.21 Я не можу ввійти за допомогою імені користувача, що містить символи unicode, як á.¶
Це може статися, якщо сервер MySQL не налаштовується використовувати utf-8 як набір символів за замовчуванням. Це обмеження того, як взаємодіють сервер PHP та MySQL; PHP не може встановити кодування charset перед автентифікацією.
Дивись також
Інтернет провайдери, багатокористувацькі установки¶
4.1 Я Інтернет-провайдер. Чи можу я налаштувати одну центральну копію phpMyAdmin або мені потрібно встановити його для кожного клієнта?¶
З версії 2.0.3 ви можете налаштувати центральну копію phpMyAdmin для всіх ваших користувачів. Розробка цієї функції була спонсорована NetCologne GmbH. Для цього потрібно належним чином налаштувати керування користувачами MySQL та phpMyAdmin HTTP або автентифікація cookie.
Дивись також
4.2. Який спосіб зробити phpMyAdmin захищеним від доступу зловмисників?¶
Це залежить від вашої системи. Якщо ви використовуєте сервер, до якого не можуть отримати доступ інші люди, достатньо використати захист каталогів, включених у ваш веб-сервер (з Apache ви можете використовувати .htaccess файли, наприклад). Якщо інші користувачі мають доступ до telnet вашого сервера, ви повинні використовувати phpMyAdmin функції HTTP або cookie аутентифікації.
Пропозиції:
- Ваш
config.inc.php
файл повинен бутиchmod 660
. - Всі ваші файли phpMyAdmin мають бути закріпленими -R phpmy.apache, де phpmy - це користувач, пароль якого відомий лише вам, а apache - це група, під якою працює Apache.
- Дотримуйтесь рекомендацій з безпеки для PHP та вашого веб-сервера.
4.3 Я отримую помилки про неможливість включення файлу в /lang або в /libraries.¶
Перевірте php.ini
, або попросіть системного адміністратора перевірити його. Include_path
повинен містити «.» , і open_basedir
, якщо він використовується, повинен містити «.» і «./lang» щоб дозволити нормальну роботу phpMyAdmin.
4.4 phpMyAdmin завжди дає «Доступ заборонено» при використанні автентифікації HTTP.¶
Це може статися з кількох причин:
$cfg['Servers'][$i]['controluser']
і/або$cfg['Servers'][$i]['controlpass']
неправильні.- Ім’я користувача/пароль, вказані у діалоговому вікні входу, недійсні.
- Ви вже встановили механізм захисту для каталогу phpMyAdmin, наприклад .htaccess файл. Це буде перешкоджати автентифікації phpMyAdmin, тому видаліть його.
4.5 Чи можна дозволити користувачам створювати власні бази даних?¶
Starting with 2.2.5, in the user management page, you can enter a
wildcard database name for a user (for example «joe%»), and put the
privileges you want. For example, adding SELECT, INSERT, UPDATE,
DELETE, CREATE, DROP, INDEX, ALTER
would let a user create/manage
their database(s).
4.6 Як я можу використовувати додаткові автентифікації на базі хоста?¶
Якщо у вас є існуючі правила зі старого .htaccess файлу, ви можете взяти їх І додати ім’я користувача між рядками 'deny'
/'allow'
і 'from'
. Використання значка підстановки `` „%“ `` імені користувача буде головною перевагою тут, якщо ваша установка підходить для її використання. Тоді ви можете просто додати ці оновлені лінії в $cfg['Servers'][$i]['AllowDeny']['rules']
масив.
Якщо ви хочете попередньо зроблений зразок, спробуйте цей фрагмент. Він затримує користувача „root“ від входу з будь-якої мережі, відмінної від приватної мережі IP блоки.
//block root from logging in except from the private networks
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = [
'deny root from all',
'allow root from localhost',
'allow root from 10.0.0.0/8',
'allow root from 192.168.0.0/16',
'allow root from 172.16.0.0/12',
];
4.7. Вікно автентифікації відображається неодноразово, чому?¶
Це трапляється, якщо ви використовуєте URL щоб запустити phpMyAdmin, який відрізняється від того, який встановлений у вашому $cfg['PmaAbsoluteUri']
. Наприклад, відсутній «www», або вхід з IP адресу, тоді як ім’я домену визначається у файлі конфігурації.
4.8 Які параметри я можу використовувати у URL-адресі, що запускає phpMyAdmin?¶
When starting phpMyAdmin, you can use the db
and server
parameters. This last one can contain
either the numeric host index (from $i
of the configuration file)
or one of the host names present in the configuration file.
For example, to jump directly to a particular database, a URL can be constructed as
https://example.com/phpmyadmin/?db=sakila
.
Змінено в версії 4.9.0: Support for using the pma_username
and pma_password
parameters was removed
in phpMyAdmin 4.9.0 (see PMASA-2019-4).
Браузери або клієнтська ОС¶
5.1 Я отримую помилку недостатньо пом’яті, і мої елементи управління не функціюють, при спробі створити таблицю з більш ніж 14 стовпцями.¶
Ми можемо відтворити цю проблему лише під Win98 / 98SE. Випробувавши під WinNT4 або Win2K, ми могли легко створити більше 60 стовпців. Обхідний шлях - створити меншу кількість стовпців, потім поверніться до властивостей таблиці та додайте інші стовпці.
5.2. З XiTami 2.5b4, phpMyAdmin не буде обробляти поля форми.¶
Це не проблема phpMyAdmin, але відома помилка Xitami: Ви будете стикатися з цим у кожному скрипі/вебсайті, який використовує форми. Оновити або понизити свій сервер Xitami.
5.3 У мене є проблеми з видаленням таблиць за допомогою Konqueror (phpMyAdmin 2.2.2).¶
З Konqueror 2.1.1: прості дампи, zip і gzip дампи працюють нормально, крім того, що запропонована назва файлу для дампа завжди є „tbl_dump.php“. Дампи bzip2 здається, не працюють. З Konqueror 2.2.1: прості дампи працюють; zip дампи поміщаються в тимчасовий каталог користувача, тому вони повинні бути перенесені до закриття Konqueror, інакше вони не збережуться. Gzip дампи дають повідомлення про помилку. Тестування потрібно виконувати для Konqueror 2.2.2.
5.4 Я не можу використовувати режим автентифікації cookie, оскільки Internet Explorer ніколи не зберігає cookies.¶
MS Internet Explorer, здається, дійсно глючить по cookies, принаймні до версії 6.
5.5 (знято).¶
5.6 (знято).¶
5.7 Я оновлюю (перезавантажую) мій браузер і повертаюся на сторінку вітання.¶
Деякі браузери підтримують натискання правою кнопкою миші у фреймі, який ви хочете оновити, просто виконайте це в правильному фреймі.
5.8 У Mozilla 0.9.7 у мене виникають проблеми з відправкою запиту, модифікованого у вікні запиту.¶
Виглядає, як помилка Mozilla: 0.9.6 було добре. Ми будемо уважно стежити за майбутніми версіями Mozilla.
5.9 З Mozilla 0.9.? до 1.0 та Netscape 7.0-PR1 я не можу ввести пробіли в області редагування SQL-запиту: сторінка прокручується вниз.¶
Це помилка Mozilla (дивіться помилку #26882 на BugZilla).
5.10 (знято).¶
5.11. Розширені символи ASCII, такі як німецькі umlauts, відображаються неправильно.¶
Будь ласка, переконайтесь, що встановлено кодування символів вашого браузера до одного з мовних файлів, який ви обрали на початковій сторінці phpMyAdmin. Крім того, ви можете спробувати режим автоматичного виявлення, який підтримується останніми версіями більшості браузерів.
5.12 Mac OS X Safari браузер змінює спеціальні символи на „?“.¶
This issue has been reported by a macOS user, who adds that Chimera, Netscape and Mozilla do not have this problem.
5.13 (знято)¶
5.14 (знято)¶
5.15 (знято)¶
5.16 В Internet Explorer я отримую «Доступ заборонено» Javascript помилки. Або я не можу зробити phpMyAdmin працювати під Windows.¶
Будь ласка, перевірте наступні моменти:
- Може бути, ви визначили свій
$cfg['PmaAbsoluteUri']
, встановлений вconfig.inc.php
до IP адрес, і ви запускаєте phpMyAdmin з URL, що містить ім’я домену, або відновлює ситуацію. - Налаштування безпеки в IE і/або Центра безпеки Microsoft завищені, отже відбувається блокування виконання сценаріїв.
- Брандмауер Windows блокує Apache і MySQL. Ви повинні дозволити HTTP порт (80 or 443) і MySQL порт (звичайно 3306) в «in» і «out» напрямках.
5.17 У Firefox я не можу видалити рядки даних або скинути базу даних.¶
Багато користувачів підтвердили, що плагін Tabbrowser Extensions, встановлений в Firefox, викликає проблему.
5.18 (знято)¶
5.19 Я отримую помилки JavaScript у своєму браузері.¶
Проблеми повідомляються за допомогою деяких комбінацій розширень веб-переглядача. Щоб усунути неполадку, вимкніть усі розширення, а потім очистіть кеш-пам’ять веб-переглядача, щоб перевірити, чи зникла проблема.
5.20. Я отримую помилки щодо порушення Політики безпеки вмісту.¶
Якщо ви бачите такі помилки:
Refused to apply inline style because it violates the following Content Security Policy directive
Це, як правило, викликано деяким програмним забезпеченням, яке неправильно переписує Content Security Policy заголовки. Зазвичай це викликано антивірусним проксі-сервером або додаванням браузера, які викликають такі помилки.
Якщо ви бачите ці помилки, спробуйте вимкнути проксі HTTP в антивірусі чи вимкнути Content Security Policy що перезаписує це. Якщо це не допоможе, спробуйте вимкнути розширення для веб-переглядача.
Крім того, це може бути також проблема конфігурації сервера (якщо веб-сервер налаштований на випуск Content Security Policy заголовків, вони можуть перевизначити ті, що містить phpMyAdmin).
Відомо, що програми викликають такі помилки:
- Kaspersky Internet Security
5.21 Я отримую помилки щодо потенційно небезпечної операції під час перегляду таблиці або виконання запиту SQL.¶
Якщо ви бачите такі помилки:
A potentially unsafe operation has been detected in your request to this site.
Як правило, це викликано брандмауером до веб-додатків, що робить фільтри запитів. Він намагається запобігти ін’єкції SQL, однак phpMyAdmin це інструмент, призначений для виконання SQL запитів, а таким чином, він стає непридатним для використання.
Please allow phpMyAdmin scripts from the web application firewall settings or disable it completely for phpMyAdmin path.
Відомо, що програми викликають такі помилки:
- Брандмауер Wordfence веб-додатків
Використання phpMyAdmin¶
6.1 Я не можу вставити нові рядки в таблицю/ Я не можу створити таблицю - MySQL виявляє помилку SQL.¶
Вивчіть SQL помилку уважно. Часто проблема виникає при визначенні неправильного типу стовпця. Поширені помилки включають в себе:
- Використання
VARCHAR
без аргументу розміру - Використовуйте
TEXT
абоBLOB
з аргументом розміру
Також, перегляньте розділ синтаксису в керівництві MySQL, щоб підтвердити, що ваш синтаксис правильний.
6.2. Коли я створюю таблицю, я встановлюю індекс для двох стовпців, і phpMyAdmin генерує лише один індекс із цими двома стовпцями.¶
Це спосіб створити індекс декількох стовпчиків. Якщо вам потрібні два індекси, створіть перший при створенні таблиці, збережіть, тоді відобразіть властивості таблиці та натисніть посилання Індекс, щоб створити інший індекс.
6.3 Як я можу вставити нульове значення в свою таблицю?¶
З версії 2.2.3, у вас є прапорець для кожного стовпця, яке може бути нульовим. До версії 2.2.3 вам потрібно ввести «null», без лапок, як значення стовпця. З версії 2.5.5, ви повинні використовувати прапорець, щоб отримати дійсне значення NULL, тому, якщо ви вводите NULL, це означає, що ви хочете буквально NULL в стовпці, а не NULL значення (це працює в PHP4).
6.4 Як я можу скопіювати мою базу даних або таблицю?¶
Натисніть на імені бази даних або таблиці на навігаційній панелі, відображаться властивості. Потім в меню, натисніть «Експорт», Ви можете скинути структуру, дані, або обидва. Це буде генерувати стандарт SQL заяви, що може бути використано для відтворення вашої бази даних/таблиці. Вам потрібно буде вибрати «Зберегти як файл», так що phpMyAdmin зможе передавати отриманий дамп до вашої станції. Залежно від конфігурації PHP ви побачите параметри для стиснення дампа. Дивіться також $cfg['ExecTimeLimit']
конфігураційна змінна. Щоб отримати додаткову допомогу з цього питання, знайдіть слово «дамп» у цьому документі.
6.5 Як я можу відновити (завантажити) мою базу даних або таблицю, використовуючи дамп? Як запустити файл «.sql»?¶
Натисніть на ім’я бази даних на навігаційній панелі, відображаться властивості. Виберіть «Імпорт» зі списку вкладок праворуч рамки (або «SQL» якщо ваша версія phpMyAdmin попередня до версії 2.7.0). У розділі «Розташування текстового файлу», введіть шлях до імені файлу дампа, або скористайтеся кнопкою Огляд. Потім натисніть кнопку Виконати. З версії 2.7.0 імпортний двигун був переписаний, Якщо можливо, пропонується оновити, щоб скористатися перевагами нових функцій. Щоб отримати додаткову допомогу з цього приводу, знайдіть слово «завантаження» в цьому документі.
Примітка: Для помилок при імпорті дампа, експортованого з старих версій MySQL в нові версії MySQL, перевірте 6.41 Я отримую помилки імпорту при імпорті дампа, експортованого з більш старих версій MySQL (попередньо 5.7.6) в нові версії MySQL (5.7.7+), але вони працюють добре, коли імпортовано назад на ті ж старі версії?.
6.6. Як я можу використати таблицю відносин у запиті за прикладом?¶
Ось приклад з таблицями осіб, міст і країн, все знаходиться в базі даних «mydb». Якщо у вас немає pma__relation
таблиці, створіть, як це описано в розділі конфігурації. Потім створіть приклади таблиць:
CREATE TABLE REL_countries (
country_code char(1) NOT NULL default '',
description varchar(10) NOT NULL default '',
PRIMARY KEY (country_code)
) ENGINE=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)
) ENGINE=MyISAM;
INSERT INTO REL_persons VALUES (11, 'Marc', 'S', 'C');
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)
) ENGINE=MyISAM;
INSERT INTO REL_towns VALUES ('S', 'Sherbrooke');
INSERT INTO REL_towns VALUES ('M', 'Montréal');
Для встановлення відповідних посилань та відображення інформації:
- в таблиці «REL_persons» натисніть Структура, потім Відношення вид
- for «town_code», choose from dropdowns, «mydb», «REL_towns», «town_code» for foreign database, table and column respectively
- для «country_code», оберіть із випадаючого меню «mydb», «REL_countries», «country_code» для зовнішньої бази даних, таблиці та стовпця відповідно
- в таблиці «REL_towns» натисніть Структура, потім Відношення вид
- в «Вибрати стовпець для відображення», виберіть «опис»
- повторіть два попередніх кроки для таблиці «REL_countries»
Потім перевірте наступним чином:
- Натисніть на ім’я бази даних на навігаційній панелі
- Виберіть «Запит»
- Використовуйте таблиці: люди, міста, країни
- Натисніть «Оновити запит»
- У рядку стовпців виберіть persons.person_name та натисніть на позначку «Показати»
- Зробіть те ж саме для towns.description і countries.descriptions в інших 2 стовпцях
- Натисніть «Оновити запит», і в полі запиту ви побачите, що правильні приєднання були створені
- Натисніть «Надіслати запит»
6.7. Як я можу використовувати функцію «відображення стовпця»?¶
Починаючи з попереднього прикладу, створіть pma__table_info
як пояснюється в розділі конфігурації, потім перегляньте таблицю осіб, і перемістіть курсор миші над кодом міста або кодом країни. Дивіться також 6.21. У режимі редагування/вставки, як я можу побачити список можливих значень для стовпця, на основі деякої зовнішньої таблиці? за додаткову функцію, що «відобразити стовпець» дозволяє: випадаючий список можливих значень.
6.8. Як я можу створити схему PDF своєї бази даних?¶
Спочатку змінні конфігурації «relation», «table_coords» and «pdf_pages» повинні бути заповнені.
- Виберіть свою базу даних на панелі навігації.
- Choose «Designer» in the navigation bar at the top.
- Перемістіть таблиці так, як ви хочете.
- Choose «Export schema» in the left menu.
- Відкриється модальний режим експорту.
- Select the type of export to PDF, you may adjust the other settings.
- Надішліть форму, і почнеться завантаження файлу.
Дивись також
6.9 phpMyAdmin змінює тип одного зі своїх стовпців!¶
Ні, це MySQL, що робить „тип silent стовпця змінюється <https://dev.mysql.com/doc/refman/5.7/en/silent-column-changes.html>`_.
6.10 При створенні привілеїв, що відбувається з підкресленнями в імені бази даних?¶
Якщо ви не поставите зворотну риску перед підкресленням, це wildcard грант, а символ підкреслення означає «будь-який символ». Отже, якщо ім’я бази даних «john_db», користувач отримає права на john1db, john2db … Якщо ви поставите зворотну риску перед підкресленням, Це означає, що ім’я бази даних матиме справжнє підкреслення.
6.11 Що за дивний символ ø на сторінках статистики?¶
Означає «середній».
6.12 Я хочу зрозуміти деякі варіанти експорту.¶
Структура:
- «Додати СКИНУТИ ТАБЛИЦЮ» додасть рядок, що вказує MySQL на скидання таблиці, якщо він уже існує під час імпорту. Це НЕ скидає таблицю після вашого експорту, це впливає лише на імпортний файл.
- «Якщо не існує» створить таблицю лише тоді, коли її не існує. В іншому випадку ви можете отримати помилку, якщо ім’я таблиці існує, але має іншу структуру.
- «Додати AUTO_INCREMENT значення» гарантує що AUTO_INCREMENT значення (за наявності) буде включено в резервну копію.
- «Додайте назви таблиць і стовпців за допомогою зворотних лапок» забезпечує захист імен стовпців та таблиць, створених за допомогою спеціальних символів.
- «Add into comments» includes column comments, relations, and media types set in the pmadb in the dump as SQL comments (/* xxx */).
Дані:
- «Повні вставки» додає імена стовпців на кожну команду ВСТАВИТИ, для кращої документації (але отриманий файл більший).
- «Розширені вставки» забезпечує більш короткий файл дампа, використовується тільки один раз, коли ВСТАВИТИ дієслово та ім’я таблиці.
- «Затримки вставки» найкраще пояснюється в Керівництво MySQL - INSERT DELAYED Синтаксис.
- «Ігнорувати вкладки» розглядає помилки як застереження. Знову ж таки, більше інформації наведено в Керівництві MySQL - INSERT Синтаксис, але в основному з цим вибраним, невірні значення скориговані і достатньо вставлені щоб призвести до того, що вся заява зазнає невдачі.
6.13 Я хотів би створити базу даних з крапкою в назві.¶
Це погана ідея, тому що в MySQL синтаксис «database.table» є звичайним способом посилання на базу даних і назву таблиці. Що ще гірше, MySQL, як правило, дозволить вам створити базу даних з крапкою, але тоді ви не можете працювати з нею, не видалити.
6.14 (знято).¶
6.15 Я хочу додати стовпчик BLOB і поставити на нього індекс, але MySQL каже «BLOB стовпець „…“ використовується у ключових специфікаціях без довжини ключа».¶
Правильний спосіб це зробити - створити стовпець без будь-яких індексів, потім відобразити структуру таблиці та використайте діалогове вікно «Створити індекс». На сторінці ви зможете обрати стовпець BLOB і встановити розмір до індексу, що є умовами створення індексу у стовпці BLOB.
6.16 Як мені просто перейти на сторінку з великою кількістю полями редагування?¶
Ви можете використовувати Ctrl+стрілки (Опції+Стрілки в Safari) для переміщення більшості сторінок з багатьма полями редагування (зміна структури таблиці, редагування рядків тощо).
6.17 Трансформації: я не можу ввести свій власний тип MIME! Яка функція корисна для цього?¶
Визначення mime-типів не підходить, якщо ви не можете поставити трансформації на них. Інакше ви просто поставити коментар до стовпця. Оскільки введення власного MIME-типу призведе до серйозних проблем перевірки синтаксису та перевірки правильності, це приводить до високого ризику помилки в ситуації вводу користувача. Замість цього вам слід ініціалізувати MIME-типи за допомогою функцій або порожніх визначень mime-типів.
Plus, you have a whole overview of available mimetypes. Who knows all those mimetypes by heart so they can enter it at will?
6.18 Закладки: де я можу зберігати закладки? Чому я не бачу жодних закладок під полем запиту? Які змінні для?¶
Вам потрібно налаштувати Зберігання конфігурації phpMyAdmin для використання функцій закладок. Як тільки ви це зробите, можете використовувати закладки в SQL вкладці.
Дивись також
6.19. Як я можу створити простий документ LATEX для включення експортованої таблиці?¶
Ви можете просто включити таблицю у ваші документи LATEX, мінімальний примірник повинен виглядати наступним чином (припустимо, що ви експортуєте таблицю у файл table.tex
):
\documentclass{article} % or any class you want
\usepackage{longtable} % for displaying table
\begin{document} % start of document
\include{table} % including exported table
\end{document} % end of document
6.20 Я бачу багато баз даних, які не є моїми, і не можуть отримати доступ до них.¶
У вас є одна з цих глобальних привілеїв: CREATE TEMPORARY TABLES, SHOW DATABASES, LOCK TABLES. Ці привілеї дозволяють користувачам бачити всі імена бази даних. Отже, якщо ваші користувачі не потребують цих привілеїв, Ви можете їх видалити, і їх список баз даних скоротиться.
Дивись також
6.21. У режимі редагування/вставки, як я можу побачити список можливих значень для стовпця, на основі деякої зовнішньої таблиці?¶
Ви повинні встановити відповідні посилання між таблицями, а також встановити «відображати стовпець» у зовнішню таблицю. Дивіться 6.6. Як я можу використати таблицю відносин у запиті за прикладом? для прикладу. Тоді, якщо є 100 значень або менше в зовнішній таблиці, випадаючий список значень буде доступний. Ви побачите два списки значень, перший список, містить ключ і стовпець показу, другий список містить стовпець показу та ключ. Причина цього можливість вводити першу літеру будь-якої клавіші або стовпчика. Для 100 чи більше значень з’являється окреме вікно, щоб переглянути значення зовнішнього ключа та вибрати його. Щоб змінити стандартний ліміт 100, дивіться $cfg['ForeignKeyMaxLimit']
.
6.22 Закладки: Чи можу я автоматично виконувати закладку за замовчуванням при введенні режиму перегляду для таблиці?¶
Так. Якщо закладка має таку ж назву як ім’я таблиці, і вона не є загальнодоступною закладкою, вона буде виконана.
Дивись також
6.23 Експорт: Я чув, що phpMyAdmin може експортувати файли Microsoft Excel?¶
Ви можете використовувати CSV для Microsoft Excel, яка працює з модуля.
Змінено в версії 3.4.5: Починаючи з phpMyAdmin 3.4.5 підтримка для прямого експорту в Microsoft Excel 97 і пізніших версій було припинено.
6.24 Тепер phpMyAdmin підтримує коментар стовпців MySQL 4.1.x, що трапляється з коментарями зі стовпцями, що зберігаються в pmadb?¶
Автоматична міграція коментарів стовпця таблиці у стилі pmadb до корінного виконується кожного разу, коли ви вводите сторінку Structure для цієї таблиці.
6.25 (знято).¶
6.26 Як я можу вибрати діапазон рядків?¶
Натисніть на перший рядок діапазону, утримуйте клавішу Shift та натисніть останній рядок діапазону. Це працює скрізь, де ви бачите рядки, наприклад, в режимі перегляду або на сторінці структури.
6.27 Які форматові рядки я можу використовувати?¶
In all places where phpMyAdmin accepts format strings, you can use
@VARIABLE@
expansion and strftime
format strings. The expanded variables depend on a context (for
example, if you haven’t chosen a table, you can not get the table
name), but the following variables can be used:
@HTTP_HOST@
- HTTP-хост, що запускає phpMyAdmin
@SERVER@
- Ім’я сервера MySQL
@VERBOSE@
- Вербальне ім’я сервера MySQL, як визначено в
$cfg['Servers'][$i]['verbose']
@VSERVER@
- Багатослівне ім’я сервера MySQL, якщо він встановлений, інакше нормальний
@DATABASE@
- Наразі відкрита база даних
@TABLE@
- В даний час відкрита таблиця
@COLUMNS@
- Стовпці поточної відкритої таблиці
@PHPMYADMIN@
- phpMyAdmin з версією
6.28 (withdrawn).¶
6.29 Чому я не можу отримати таблицю з таблиці результатів запиту?¶
Не кожну таблицю можна додати до графіка. Тільки таблиці з одним, двома або трьома стовпцями можуть бути візуалізовані, як діаграма. Крім того, таблиця повинна бути в спеціальному форматі, щоб сценарій діаграм зрозумів це. Підтримувані формати можна знайти в Діаграми.
6.30 Імпорт: як я можу імпортувати ESRI Shapefiles?¶
ESRI Shapefile насправді є набором декількох файлів, Де .shp файл містить геометричні дані і файл .dbf містить геометричні дані. Для того, щоб прочитати дані з файлу .dbf, вам потрібно мати скомпільований PHP з розширенням dBase (–enable-dbase). Інакше буде імпортовано лише геометричні дані.
Щоб завантажити цей набір файлів, можна скористатися одним із наведених нижче способів:
Налаштуйте каталог завантаження з $cfg['UploadDir']
, завантажте файли .shp та .dbf з однаковим іменем файлу і виберіть файл .shp з сторінки імпорту.
Створіть zip архів з .shp і .dbf файлів і імпортуйте його. Для цього потрібно встановити $cfg['TempDir']
в місце, де користувач веб-сервера може писати (наприклад, './tmp'
).
Щоб створити тимчасову директорію в системі UNIX, ви можете виконати такі дії:
cd phpMyAdmin
mkdir tmp
chmod o+rwx tmp
6.31 Як мені створити відношення у дизайнері?¶
Щоб вибрати відношення, натисніть: стовпець показується в рожевому кольорі. Щоб встановити/вимкнути стовпець, як стовпець для відображення, натисніть значок «Оберіть стовпець для відображення», а потім натисніть назву відповідного стовпця.
6.32 Як я можу використовувати функцію масштабування пошуку?¶
Функція масштабування пошуку є альтернативою функції пошуку в таблиці. Це дозволяє досліджувати таблицю, представляючи її дані в фрагментованому графіку. Ви можете знайти цю функцію, вибравши таблицю та натиснувши вкладку Пошук. Одна з під-вкладок в Пошук таблиці`сторінки є :guilabel:`Масштабований пошук.
Розглянемо таблицю REL_persons в 6.6. Як я можу використати таблицю відносин у запиті за прикладом? для прикладу. Для використання масштабування пошуку потрібно вибрати два стовпці, наприклад, id і town_code. id будуть представлені на одній осі а значення town_code на іншій осі. Кожен рядок буде представлений як точка в фрагментованому графіку на основі id і town_code. Ви можете включити два додаткових критерії пошуку, крім двох полів для відображення.
Ви можете вибрати, яке поле слід відображати як мітку для кожної точки. Якщо для таблиці встановлено стовпець показу (дивіться 6.7. Як я можу використовувати функцію «відображення стовпця»?), він приймається як мітка, якщо ви не вказали інше. Ви також можете вибрати максимальну кількість рядків, які потрібно відображати в графіку, вказавши його у полі „Максимальна кількість рядків для графіку“. Вибравши критерії, натисніть „Виконати“, щоб відобразити графік.
After the plot is generated, you can use the mouse wheel to zoom in and out of the plot. In addition, panning feature is enabled to navigate through the plot. You can zoom-in to a certain level of detail and use panning to locate your area of interest. Clicking on a point opens a dialogue box, displaying field values of the data row represented by the point. You can edit the values if required and click on submit to issue an update query. Basic instructions on how to use can be viewed by clicking the „How to use?“ link located just above the plot.
6.33 Як скопіювати назву стовпця, під час перегляду таблиці?¶
Вибрати назву стовпця в клітині заголовка перегляду таблиці для копіювання важко, оскільки колонки підтримують переміщення за допомогою перетягування клітин заголовків, а також сортування, натиснувши на назву пов’язаного стовпця. Щоб скопіювати назву стовпця, двічі натисніть на порожній області поруч із назвою стовпця, коли підказка скаже вам, щоб зробити це. Це покаже вам поле введення з ім’ям стовпця. Ви можете натиснути правою кнопкою миші назву стовпця в цьому вікні введення, щоб скопіювати його в буфер обміну.
6.34 Як я можу використовувати функцію „Вподобані таблиці“?¶
Функція вподобані таблиці дуже схожа на функцію Останні таблиці. Це дозволяє додавати ярлик для часто використовуваних таблиць будь-якої бази даних на панелі навігації. Ви можете легко перейти до будь-якої таблиці в списку, просто вибравши її зі списку. Ці таблиці зберігаються у локальному сховищі вашого веб-переглядача, якщо ви не налаштували своє Сховище конфігурації phpMyAdmin. В іншому випадку записи зберігаються у файлі phpMyAdmin Configuration Storage.
ВАЖЛИВО: За відсутності Сховища конфігурації phpMyAdmin ваші вподобані таблиці можуть бути різними в різних браузерах, в залежності від вашого вибору в них.
Щоб додати таблицю до вподобаного списку, просто натисніть на Сіру`зірочку перед назвою таблиці в списку таблиць бази даних і зачекайте, доки вона не перетвориться на `Жовту. Щоб видалити таблицю з списку, просто натисніть на Жовту зірочку та зачекайте, доки вона знову не повернеться на Сіру.
Використовуючи $cfg['NumFavoriteTables']
у вашому config.inc.php
файлі, ви можете визначити максимальну кількість вподобаних таблиць, показаних на панелі навігації. Значення за замовчуванням - 10.
6.35 Як я можу використовувати функцію діапазон пошуку?¶
За допомогою функції діапазон пошуку можна вказати діапазон значень для певних стовпців під час виконання операції пошуку в таблиці з вкладки Пошук.
Щоб скористатися цією функцією, просто натисніть на оператори BETWEEN або NOT BETWEEN`з оператора вибирають список перед назвою стовпця. Якщо вибрати один з наведених вище варіантів, з’явиться діалогове вікно з проханням про значення `Мінімум і Максимум для цього стовпця. У випадку BETWEEN буде включено лише зазначений діапазон значень і у випадку NOT BETWEEN між кінцевими результатами.
Примітка: Функція пошуку діапазону буде працювати тільки зі стовпцями типу Число і Дата.
6.36 Що таке Основна колонка і як я можу використовувати цю функцію?¶
Як випливає з назви функція Основна колонка дозволяє підтримувати основний список стовпців по кожній базі даних, щоб уникнути подібного імені для одного елемента даних і забезпечити узгодженість типу даних для одного і того ж елемента даних. Ви можете використовувати основний список стовпців, щоб додати елемент до будь-якої структури таблиці в цій базі даних, що позбавить від написання аналогічного імені стовпця і визначення стовпця.
Щоб додати стовпець до основного списку, перейдіть до таблиці структури таблиці, відмітьте стовпці, які потрібно включити а потім просто натисніть на «Додати до основних стовпців». Якщо ви хочете додати всі унікальні стовпці з більш ніж однієї таблиці з бази даних, перейдіть на сторінку структури бази даних, відмітьте таблиці, які потрібно включити, а потім виберіть » Додати стовпці до основного списку».
Щоб видалити стовпець із центрального списку, перейдіть на сторінку структури, таблиці, відмітьте стовпці, які потрібно видалити, а потім просто натисніть «Видалити з основних стовпців». Якщо ви хочете видалити всі стовпці з декількох таблиць з бази даних, перейдіть на сторінку структури бази даних, відмітьте таблиці, які ви хочете включити, а потім виберіть «Видалити стовпці з основного списку».
Щоб переглянути основний список та керувати ним, виберіть базу даних, в якій ви хочете керувати основними стовпцями, а потім у верхньому меню натисніть «Основні стовпці». Ви перейдете на сторінку, де ви зможете редагувати, видаляти або додавати нові стовпці до основного списку.
6.37 Як я можу використовувати функцію Покращити структуру таблиці?¶
Функція вдосконалення структури таблиці допомагає привести структуру таблиці до трьох нормальних форм. Майстер представляє користувачеві питання про елементи під час різних кроків нормалізації, і пропонує відповідну нову структуру, щоб перевести таблицю в першу/другу/третю нормальну форму. Після запуску майстра користувач може вибрати, до якої нормальної форми вони хочуть нормалізувати структуру таблиці.
Ось приклад таблиці, яку ви можете використовувати для тестування всіх трьох Першої, Другої та Третьої нормальної форми.
CREATE TABLE `VetOffice` (
`petName` varchar(64) NOT NULL,
`petBreed` varchar(64) NOT NULL,
`petType` varchar(64) NOT NULL,
`petDOB` date NOT NULL,
`ownerLastName` varchar(64) NOT NULL,
`ownerFirstName` varchar(64) NOT NULL,
`ownerPhone1` int(12) NOT NULL,
`ownerPhone2` int(12) NOT NULL,
`ownerEmail` varchar(64) NOT NULL,
);
Наведена таблиця не в першій нормальній формі як немає primary key. Первинний ключ повинен бути (petName,`ownerLastName`,`ownerFirstName`) . Якщо primary key вибрано, як запропоновано, отримана таблиця не буде в другій, а також у третій нормальної формі, оскільки існують наступні залежності.
(OwnerLastName, OwnerFirstName) -> OwnerEmail
(OwnerLastName, OwnerFirstName) -> OwnerPhone
PetBreed -> PetType
Що говорить, OwnerEmail залежить від OwnerLastName та OwnerFirstName. OwnerPhone залежить від OwnerLastName та OwnerFirstName.
6.38. Як я можу перепризначити автоматично збільшувані значення?¶
Деякі користувачі віддають перевагу, щоб значення AUTO_INCREMENT були послідовними; це не завжди відбувається після видалення рядка.
Ось кроки для цього. Ці кроки, виконувані вручну, так як вони вимагають ручної перевірки в якийсь момент.
- Переконайтеся, що ви маєте ексклюзивний доступ до таблиці, для перебудови
- В вашому primary key стовпці (тобто id), видалити налаштування AUTO_INCREMENT
- Видаліть свій первинний ключ у Структурі>Індекси
- Створіть новий стовпець future_id як первинний ключ, AUTO_INCREMENT
- Перегляньте таблицю та перевірте, чи нові кроки відповідають тому, що ви очікуєте
- Скиньте ваш старий id стовпець
- Перейменуйте стовпець future_id на id
- Перемістіть новий id стовпець за допомогою Структура>Перемістити стовпці
6,39 Що таке функція «Налаштування привілеїв» при перейменуванні, копіюванні або переміщенні бази даних, таблиці, стовпця, або процедури?¶
При перейменуванні/копіюванні/переміщенні бази даних/таблиці/стовпця/процедури, MySQL не налаштовує оригінальні привілеї, пов’язані з цими об’єктами самостійно. Вибравши цей параметр, phpMyAdmin налаштовує таблицю привілеїв таким чином, щоб користувачі мали однакові права на нові елементи.
Наприклад: Користувач „bob“@“localhost“ має привілей „SELECT“ у стовпці з назвою „id“. Тепер, якщо цей стовпець буде перейменовано на „id_new“, MySQL самостійно не буде коригувати привілеї стовпців до нового імені стовпця. phpMyAdmin може автоматично зробити це коригування.
Примітки:
- Під час коригування привілеїв для бази даних, привілеї всіх елементів, пов’язаних із базою даних (таблиці, стовпці та процедури) також коригуються до нової назви бази даних.
- Аналогічно, під час налаштування привілеїв для таблиці, привілеї всіх стовпців у новій таблиці також скориговані.
- Під час налаштування привілеїв користувач, який виконує операцію повинен мати такі права:
- Привілеї SELECT, INSERT, UPDATE, DELETE в наступних таблицях: mysql.`db`, mysql.`columns_priv`, mysql.`tables_priv`, mysql.`procs_priv`
- Привілей FLUSH (GLOBAL)
Таким чином, якщо ви хочете повторити базу даних/таблицю /стовпець/процедуру, як це відбувається під час перейменування/копіювання/переміщення цих об’єктів, переконайтеся, що ви позначили цю опцію.
6.40 Я бачу параметр „Параметри прив’язки“ на сторінці „SQL“. Як написати SQL запити з параметрами?¶
З версії 4.5 phpMyAdmin дозволяє користувачам виконувати параметризовані запити на сторінці «SQL». Параметри повинні бути приставлені спереду двокрапкою (:), і коли буде встановлено прапорець „Параметри прив’язки“, параметри будуть ідентифіковані і поля вводу для них будуть представлені. Значення, введені в цьому полі, будуть замінені в запиті перед виконанням.
6.41 Я отримую помилки імпорту при імпорті дампа, експортованого з більш старих версій MySQL (попередньо 5.7.6) в нові версії MySQL (5.7.7+), але вони працюють добре, коли імпортовано назад на ті ж старі версії?¶
Якщо ви отримуєте такі помилки, як #1031 - Двигун зберігання таблиці для „table_name“ не має цієї опції при імпорті дампів, експортованих з серверів MySQL до 5.7.7 на нові версії 5.7.7+ сервера MySQL, це може бути тому що ROW_FORMAT=FIXED не підтримується таблицями InnoDB. Крім того, значення innodb_strict_mode буде визначати, чи буде це повідомлено як попередження або помилка.
Починаючи з версії 5.7.9 MySQL, значення за замовчуванням для innodb_strict_mode є `ON, і таким чином буде генерувати помилку, коли виникає операція CREATE TABLE або ALTER TABLE.
Існує два способи запобігання таким помилкам при імпорті:
- Змініть значення innodb_strict_mode до OFF перед початком імпорту та відновіть до ON після успішного імпортування.
- Це можна досягти двома способами:
- Перейдіть на сторінку „Змінні“ та відредагуйте значення innodb_strict_mode
- Запустіть запит : SET GLOBAL `innodb_strict_mode = „[value]“`
Після завершення імпорту, пропонується скинути значення innodb_strict_mode до початкового значення.
Проєкт phpMyAdmin¶
7.1 Я знайшов помилку. Як інформувати розробників?¶
Наш issues tracker знаходиться <https://github.com/phpmyadmin/phpmyadmin/issues>. З питань безпеки, будь ласка, зверніться до інструкцій у <https://www.phpmyadmin.net/security> Надіслати розробникам електронну пошту безпосередньо.
7.2 Я хочу перекласти повідомлення на нову мову або оновити існуючу мову, звідки почати?¶
Переклади дуже вітаються і все, що вам потрібно це мати практичні навички. Найпростіший спосіб - використовувати нашу онлайн службу перекладу. Ви можете ознайомитись з усіма можливостями перекладу в розділі перекладу на нашому вебсайті.
7.3 Я хотів би допомогти з розробкою phpMyAdmin. Як я повинен поступити?¶
Ми вітаємо будь-який внесок у розвиток phpMyAdmin. Ви можете ознайомитись з усіма можливостями внеску в розділі сприяння на нашому вебсайті.
Дивись також
Безпека¶
8.1 Де я можу отримати інформацію про сповіщення про безпеку для phpMyAdmin?¶
Будь ласка зверніться до <https://www.phpmyadmin.net/security/>.
8.2 Як захистити phpMyAdmin від атак грубої сили?¶
Якщо ви використовуєте веб-сервер Apache, phpMyAdmin експортує інформацію про автентифікацію в середовище Apache, і його можна використовувати в журналах Apache. В даний час існує дві перемінні:
userID
- User name of currently active user (they do not have to be logged in).
userStatus
- Статус для поточного користувача, один з
ok
(користувач увійшов до системи),mysql-denied
(MySQL відмовив ввійти користувачеві),allow-denied
(користувачеві відмовлено дозволити/заборонити правила),root-denied
(root заперечується в конфігурації),empty-denied
(порожній пароль відхилено).
Директива LogFormat
для Apache може виглядати наступним чином:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %{userID}n %{userStatus}n" pma_combined
Потім ви можете використовувати будь-який інструмент аналізу журналів для виявлення можливих спроб втручання.
8.3 Чому існує шлях розкриття інформації при прямому завантаженні певних файлів?¶
Це проблема конфігурації сервера. Ніколи не вмикайте display_errors
на виробничому сайті.
Файли CSV, експортовані з phpMyAdmin, можуть дозволити атаку ін’єкції формули.¶
Можна генерувати CSV файл, який при імпорті до електронної таблиці, як Microsoft Excel, потенційно може дозволити виконання будь-яких команд.
Файли CSV, створені phpMyAdmin, можуть містити текст, який інтерпретується програмою електронної таблиці, як формула, але ми не вважаємо, що уникати ці поля є належною поведінкою. Немає засобів для правильного виходу та розрізнення бажаного текстового виводу та формули, які слід уникнути, і CSV - це текстовий формат, де функції у будь-якому разі не повинні інтерпретуватися. Ми докладно обговорили це і вважаємо, що це відповідальність програми електронної таблиці належним чином проаналізувати і очищати такі дані на вході.
Google також має аналогічний вигляд <https://sites.google.com/site/bughunteruniversity/nonvuln/csv-excel-formula-injection>`_.
Інформація для розробників¶
phpMyAdmin є Open Source, так що ви запрошені внести свій вклад в нього. Багато чудових можливостей були написані іншими людьми та ви також можете допомогти зробити phpMyAdmin корисним інструментом.
Про можливість співпраці ви можете взнати в розділі сприяння на нашому сайті.
Політика безпеки¶
Команда розробників phpMyAdmin робить багато зусиль, щоб зробити phpMyAdmin максимально безпечним. Проте веб-додатки, такі як phpMyAdmin, можуть бути вразливими до ряду атак, і все ще вивчаються нові способи експлуатації.
For every reported vulnerability we issue a phpMyAdmin Security Announcement (PMASA) and it get’s assigned a CVE ID as well. We might group similar vulnerabilities to one PMASA (eg. multiple XSS vulnerabilities can be announced under one PMASA).
Якщо ви вважаєте, що ви виявили вразливість, будь ласка, дивіться Звітність про проблеми безпеки.
Типові вразливості¶
In this section, we will describe typical vulnerabilities, which can appear in our code base. This list is by no means complete, it is intended to show typical attack surface.
Перехресні між-сайтові сценарії (XSS)¶
Коли phpMyAdmin покаже частину даних користувача, наприклад, всередині бази даних користувача, всі спеціальні символи html повинні бути вичерпані. Коли цей перехід відсутній зловмисний користувач може заповнити базу даних спеціально розробленим контентом, щоб змусити іншого користувача цієї бази даних виконувати щось. Це може бути, наприклад, частина коду JavaScript, який робив би будь-яку кількість загрозливих речей.
phpMyAdmin намагається уникнути всіх користувацьких даних, перш ніж вони будуть перетворені у html для браузера.
Дивись також
Перехресна між-сайтова підробка запиту (CSRF)¶
Зловмисник змусить користувача phpMyAdmin натиснути посилання, щоб спровокувати якусь дію в phpMyAdmin. Це посилання може бути надіслане електронною поштою або окремим вебсайтом. Якщо це пройде успішно, нападник зможе виконати певні дії з правами користувачів.
Для пом’якшення цього phpMyAdmin потрібно, щоб токен був надісланий на чутливі запити. Ідея полягає в тому, що зловмисник не представляє дійсний токен, який можна включити в представлене посилання.
Токен регенерується для кожного входу, тому, як правило, діє лише на обмежений час, що ускладнює отримання дійсного зловмисникам.
Дивись також
SQL ін’єкція¶
Оскільки цілі phpMyAdmin мають полягати у попередній обробці запитів sql, це не наша перша зацікавленість. SQL-ін’єкція є чутливі для нас, хоча це стосується контрольного з’єднання mysql. Цей контрольний зв’язок може мати додаткові привілеї які вхід користувача не створює. Наприклад, доступ Зберігання конфігурації phpMyAdmin.
User data that is included in (administrative) queries should always be run through DatabaseInterface::quoteString().
Дивись також
Атака грубої сили¶
phpMyAdmin сам по собі ніяким чином не оцінює спроби автентифікації. Це пов’язано з необхідністю працювати в середовищі без громадянства, де неможливо захиститися від такого роду речей.
Щоб пом’якшити це, ви можете використовувати Captcha або використовувати зовнішні інструменти, такі як fail2ban, це більш докладно описано в Забезпечення безпеки установки phpMyAdmin.
Дивись також
Звітність про проблеми безпеки¶
Якщо ви знайдете проблему безпеки в коді програмування phpMyAdmin, зв’яжіться з нами phpMyAdmin security team заздалегідь до її публікації. Таким чином ми можемо підготувати виправлення та випустити виправлення разом з вашим оголошенням. Вам також буде надано кредит у повідомленні з безпеки. За бажанням можна шифрувати ваш звіт за допомогою PGP ключа ID DA68AB39218AB947
з наступним відбитком пальця:
pub 4096R/DA68AB39218AB947 2016-08-02
Key fingerprint = 5BAD 38CF B980 50B9 4BD7 FB5B DA68 AB39 218A B947
uid phpMyAdmin Security Team <security@phpmyadmin.net>
sub 4096R/5E4176FB497A31F7 2016-08-02
Ключ може бути отриманий з сервера ключів або доступний в phpMyAdmin keyring доступно на нашому сервері завантаження або використовується Keybase.
Якщо у вас є пропозиції щодо вдосконалення phpMyAdmin, щоб зробити його безпечнішим, повідомте про це нашому issue tracker. Існуючі поради щодо вдосконалення можна знайти за допомогою hardening label.
Розповсюдження та пакування phpMyAdmin¶
This document is intended to give pieces of advice to people who want to redistribute phpMyAdmin inside other software packages such as Linux distribution or some all in one package including web server and MySQL server.
Як правило, ви можете налаштувати деякі основні аспекти (шляхи до деяких файлів і поведінку) в libraries/vendor_config.php
.
Наприклад, якщо ви хочете встановити скрипт для створення файлу конфігурації в var, змініть SETUP_CONFIG_FILE
до /var/lib/phpmyadmin/config.inc.php
і ви також, мабуть, хочете пропустити перевірку запису в каталозі, тому встановіть SETUP_DIR_WRITABLE
до false.
Зовнішні бібліотеки¶
phpMyAdmin включає в себе кілька зовнішніх бібліотек, ви можете замінити їх на системні, якщо вони доступні, але будь ласка, зверніть увагу, що ви повинні перевірити, чи надана вами версія сумісна з тією, яку ми поставляємо.
На даний момент відомий список зовнішніх бібліотек:
- js/vendor
- jQuery js framework libraries and various js libraries.
- vendor/
- Комплект завантаження містить різні Composer пакети залежностей.
Конкретні файли ЛІЦЕНЗІЇ¶
Розповсюджені теми phpMyAdmin містять певний вміст, на який діють ліцензії.
- The icons of the Original and pmahomme themes are from the Silk Icons.
- Some icons of the Metro theme are from the Silk Icons.
- themes/*/img/b_rename.svg Is a Icons8, icon from the Android L Icon Pack Collection. The icon rename.
- themes/metro/img/user.svg Is a IcoMoon the user
CC BY 4.0 or GPL
Ліцензії для постачальників¶
- Silk Icons знаходяться під ліцензіями CC BY 2.5 або CC BY 3.0.
- rename from Icons8 is under the «public domain» (CC0 1.0) license.
- IcoMoon Free знаходиться під «CC BY 4.0 або GPL».
Авторське право¶
Copyright (C) 1998-2000 Tobias Ratschiller <tobias_at_ratschiller.com>
Copyright (C) 2001-2018 Marc Delisle <marc_at_infomarc.info>
Olivier Müller <om_at_omnis.ch>
Robin Johnson <robbat2_at_users.sourceforge.net>
Alexander M. Turek <me_at_derrabus.de>
Michal Čihař <michal_at_cihar.com>
Garvin Hicking <me_at_supergarv.de>
Michael Keck <mkkeck_at_users.sourceforge.net>
Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
[check credits for more details]
Ця програма є вільним програмним забезпеченням; ви можете розповсюджувати та/або змінювати його відповідно до умов ліцензії GNU General Public версії 2, виданої Фондом вільного програмного забезпечення.
Ця програма розповсюджується в надії, що вона буде корисна, але БЕЗ БУДЬ-ЯКИХ ГАРАНТІЙ; Без навіть передбачуваної гарантії ПРИДАТНОСТІ або ПРИДАТНОСТІ ДЛЯ ОСОБЛИВОГО ПРИЗНАЧЕННЯ. Для отримання додаткової інформації дивіться загальну публічну ліцензію GNU.
Ви повинні були отримати копію Загальної публічної ліцензії GNU разом з цією програмою. Якщо ні, то дивіться <https://www.gnu.org/licenses/>.
Сторонні ліцензії¶
phpMyAdmin includes several third-party libraries which come under their respective licenses.
Ліцензія jQuery, де ми отримали файли під js/vendor/jquery/ є (MIT|GPL), копія кожної ліцензії доступна в цьому сховищі (GPL доступний як LICENSE, MIT як js/vendor/jquery/MIT-LICENSE.txt).
Комплект завантаження додатково включає в себе кілька composer бібліотек. Перегляньте інформацію про їх ліцензування у постачальник/ каталог.
Список учасників¶
Список учасників, в хронологічному порядку¶
- Tobias Ratschiller <tobias_at_ratschiller.com>
- творець phpMyAdmin проєкту
- супровід з 1998 до літа 2000 року
- Marc Delisle <marc_at_infomarc.info>
- багатомовна версія в грудні 1998 року
- різні виправлення і удосконалення
- перша версія з SQL аналізатор (більша частина)
- супровід з 2001 по 2015 рік
- Olivier Müller <om_at_omnis.ch>
- розпочав проєкт SourceForge phpMyAdmin в березні 2001 року
- синхронізовані різні існуючі CVS trees з новими функціями і виправленнями
- удосконалення багатомовності, динамічний вибір мови
- багато виправлень і удосконалень
- Loïc Chapeaux <lolo_at_phpheaven.net>
- переписав і оптимізував JavaScript, DHTML і DOM stuff
- переписав скрипти, щоб вони відповідали PEAR стандартам кодування і генерували XHTML1.0 і CSS2 сумісні коди
- удосконалена система виявлення мови
- багато виправлень і удосконалень
- Robin Johnson <robbat2_at_users.sourceforge.net>
- Armel Fauveau <armel.fauveau_at_globalis-ms.com>
- функція закладок
- функція множинного дампа
- gzip дамп функція
- zip дамп функція
- Geert Lund <glund_at_silversoft.dk>
- різні виправлення
- модератор форуму колишніх користувачів phpMyAdmin на phpwizard.net
- Korakot Chaovavanich <korakot_at_iname.com>
- функція «вставити, як новий рядок»
- Pete Kelly <webmaster_at_trafficg.com>
- переписав і виправив код дампа
- виправлені помилки
- Steve Alberty <alberty_at_neptunlabs.de>
- переписав код дампа для PHP4
- mySQL таблиця статистики
- виправлені помилки
- Benjamin Gandon <gandon_at_isia.cma.fr>
- головний автор версії 2.1.0.1
- виправлені помилки
- Alexander M. Turek <me_at_derrabus.de>
- Сумісність MySQL 4.0 / 4.1 / 5.0
- абстрактний інтерфейс бази даних (PMA_DBI) з підтримкою MySQLi
- адміністрування привілеїв
- XML експорт
- різні функції і виправлення
- оновлення мовних файлів на німецькій мові
- Mike Beck <mike.beck_at_web.de>
- автоматичне об’єднання в QBE
- стовпець посилань у перегляді друку
- Вид відносин
- Michal Čihař <michal_at_cihar.com>
- розширені функції створення/відображення індексу
- функція для використовування різного кодування для HTML і для MySQL
- удосконалення функції експорту
- різні функції і виправлення
- оновлення мовних файлів чеською мовою
- створення поточного сайту phpMyAdmin
- Christophe Gesché з «MySQL Form Generator for PHPMyAdmin» (https://sourceforge.net/projects/phpmysqlformgen/)
- запропонував латку для численних таблиць printviews
- Garvin Hicking <me_at_supergarv.de>
- створив латку для вертикального відображення рядків таблиці
- створив на основі Javascript вікно Query + SQL історія
- Удосконалення column/db коментарів
- (MIME)-трансформація стовпців
- Використання імен користувацьких псевдонімів для баз даних в лівому фреймі
- ієрархічне/вкладене відображення таблиці
- PDF-скретч-лот для WYSIWYG- розподілу PDF відносин
- нові набори іконок
- вертикальне відображення сторінки властивостей стовпців
- деякі виправлення помилок, функцій, підтримка, доповнення німецької мови
- Yukihiro Kawada <kawada_at_den.fujifilm.co.jp>
- функція перетворення кодування в японське kanji
- Piotr Roszatycki <d3xter_at_users.sourceforge.net> і Dan Wilson
- режим аутентифікації cookie
- Axel Sander <n8falke_at_users.sourceforge.net>
- функція реляційних посилань таблиці
- Maxime Delorme <delorme.maxime_at_free.fr>
- PDF схема виведення, спасибі також Olivier Plathey за «FPDF» бібліотеки (дивіться <http://www.fpdf.org/>), Steven Wittens за «UFPDF» бібліотеки і Nicola Asuni для «TCPDF» бібліотеки (дивіться <https://tcpdf.org/>).
- Olof Edlund <olof.edlund_at_upright.se>
- SQL сервер перевірки
- Ivan R. Lanin <ivanlanin_at_users.sourceforge.net>
- phpMyAdmin логотип (до червня 2004 року)
- Mike Cochrane <mike_at_graftonhall.co.nz>
- blowfish бібліотека з Horde проєкту (знято в версії 4.0)
- Marcel Tschopp <ne0x_at_users.sourceforge.net>
- mysqli підтримка
- багато виправлень і удосконалень
- Nicola Asuni (Tecnick.com)
- TCPDF бібліотека (<https://tcpdf.org>)
- Michael Keck <mkkeck_at_users.sourceforge.net>
- перепроєктування 2.6.0
- phpMyAdmin логотип вітрильник (червень 2004 року)
- Mathias Landhäußer
- Представлення на конференціях
- Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
- удосконалення інтерфейсу
- різноманітні виправлення помилок
- Ivan A Kirillov
- нові зв’язки Дизайнера
- Raj Kissu Rajandran (Google Summer of Code 2008)
- BLOBstreaming підтримка (знято в версії 4.0)
- Piotr Przybylski (Google Summer of Code 2008, 2010 і 2011)
- покращений скрипт установки
- налаштування користувача
- Drizzle підтримка
- Derek Schaefer (Google Summer of Code 2009)
- Удосконалена система імпорту
- Alexander Rutkowski (Google Summer of Code 2009)
- Механізм відстеження
- Zahra Naeem (Google Summer of Code 2009)
- Функція синхронізації (видалена в версії 4.0)
- Tomáš Srnka (Google Summer of Code 2009)
- Підтримка реплікації
- Muhammad Adnan (Google Summer of Code 2010)
- Експорт схеми відносин у різних форматах
- Lori Lee (Google Summer of Code 2010)
- Удосконалення інтерфейсу користувача
- ENUM/SET редактор
- Спрощений інтерфейс для експорту/імпорту
- Ninad Pundalik (Google Summer of Code 2010)
- AJAXifying інтерфейс
- Martynas Mickevičius (Google Summer of Code 2010)
- Діаграми
- Barrie Leslie
- BLOBstreaming підтримка з PBMS PHP розширенням (знято в версії 4.0)
- Ankit Gupta (Google Summer of Code 2010)
- Візуальний конструктор запитів
- Madhura Jayaratne (Google Summer of Code 2011)
- OpenGIS підтримка
- Ammar Yasir (Google Summer of Code 2011)
- Розширений пошук
- Aris Feryanto (Google Summer of Code 2011)
- Удосконалення режиму перегляду
- Thilanka Kaushalya (Google Summer of Code 2011)
- AJAXification
- Tyron Madlener (Google Summer of Code 2011)
- Статистика запитів і діаграми для сторінки стану
- Zarubin Stas (Google Summer of Code 2011)
- Автоматизоване тестування
- Rouslan Placella (Google Summer of Code 2011 і 2012)
- Удосконалена підтримка збережених процедур, тригерів і подій
- Оновлення перекладу італійською мовою
- Видалення фреймів, нова навігація
- Dieter Adriaenssens
- Різні виправлення помилок
- Оновлення перекладу німецькою мовою
- Alex Marin (Google Summer of Code 2012)
- Нові плагіни і властивості системи
- Thilina Buddika Abeyrathna (Google Summer of Code 2012)
- Рефакторинг
- Atul Pratap Singh (Google Summer of Code 2012)
- Рефакторинг
- Chanaka Indrajith (Google Summer of Code 2012)
- Рефакторинг
- Yasitha Pandithawatta (Google Summer of Code 2012)
- Автоматизоване тестування
- Jim Wigginton (phpseclib.sourceforge.net)
- phpseclib
- Bin Zu (Google Summer of Code 2013)
- Рефакторинг
- Supun Nakandala (Google Summer of Code 2013)
- Рефакторинг
- Mohamed Ashraf (Google Summer of Code 2013)
- повідомлення про помилки AJAX
- Adam Kang (Google Summer of Code 2013)
- Автоматизоване тестування
- Ayush Chaudhary (Google Summer of Code 2013)
- Автоматизоване тестування
- Kasun Chathuranga (Google Summer of Code 2013)
- Удосконалення інтерфейсу
- Hugues Peccatte
- Завантажити/зберегти запит, наприклад (пошуку закладок бази даних)
- Smita Kumari (Google Summer of Code 2014)
- Головний список стовпців
- Удосконалення структури таблиці (нормалізація)
- Ashutosh Dhundhara (Google Summer of Code 2014)
- Удосконалення інтерфейсу
- Dhananjay Nakrani (Google Summer of Code 2014)
- повідомлення про помилки PHP
- Edward Cheng (Google Summer of Code 2014)
- Консоль SQL запитів
- Kankanamge Bimal Yashodha (Google Summer of Code 2014)
- Рефакторинг: Дизайнер/схеми інтеграції
- Chirayu Chiripal (Google Summer of Code 2014)
- Користувацькі поля обробників (Вхідні дані на основі MIME трансформацій)
- Експорт із змінами імені таблиці/стовпця
- Dan Ungureanu (Google Summer of Code 2015)
- Новий обробник і аналізатор
- Nisarg Jhaveri (Google Summer of Code 2015)
- Налаштування пов’язаної сторінки
- Налагодження інтеграції SQL в консолі
- Інші удосконалення користувацького інтерфейсу
- Deven Bansod (Google Summer of Code 2015)
- Версія для друку за допомогою CSS
- Інші удосконалення користувацького інтерфейсу і нові функції
- Deven Bansod (Google Summer of Code 2017)
- Удосконалення на сервері звітування про помилки
- Покращене Selenium тестування
- Manish Bisht (Google Summer of Code 2017)
- Мобільний інтерфейс користувача
- Видалити вбудований код JavaScript
- Інші удосконалення користувацького інтерфейсу
- Raghuram Vadapalli (Google Summer of Code 2017)
- Інтерфейс багато табличних запитів
- Дозволити Дизайнеру працювати з таблицями з інших баз даних
- Інші удосконалення користувацького інтерфейсу
- Maurício Meneghini Fauth
- Основні вдосконалення і оновлення ядра JavaScript
- Модернізація функцій бібліотеки JavaScript
- Модернізація створення шаблону та впровадження Twig
- William Desportes
- Покращення стилю кодування на основі PHPStan
- Покращення посилань на зовнішню документацію MySQL та MariaDB
- Інші численні виправлення помилок
- Emanuel Bronshtein
- Комплексна оцінка безпеки та пропозиції
- Lakshya Arora (Google Summer of Code 2018)
- Різні удосконалення в тому числі:
- Інтеграція налаштувань користувача з локальним сховищем
- Використання модального входу після закінчення сеансу
- Додавання підтримки для CHECK CONSTRAINTS
- і більше!
- Різні удосконалення в тому числі:
- Saksham Gupta (Google Summer of Code 2018)
- Автоматизований інструмент генерації теми
- Leonardo Strozzi (Google Summer of Code 2018)
- Рефакторинг шаблонів Twig та інші вдосконалення внутрішнього коду
- Piyush Vijay (Google Summer of Code 2018)
- Модернізація коду JavaScript, включаючи введення Webpack, Babel, і Yarn а також eslint і Jsdoc
А також люди, які внесли невеликі зміни, поліпшення, виправлення помилок або надали підтримку для впровадження нової мови, починаючи з версії 2.1.0:
Bora Alioglu, Ricardo ?, Sven-Erik Andersen, Alessandro Astarita, Péter Bakondy, Borges Botelho, Olivier Bussier, Neil Darlow, Mats Engstrom, Ian Davidson, Laurent Dhima, Kristof Hamann, Thomas Kläger, Lubos Klokner, Martin Marconcini, Girish Nair, David Nordenberg, Andreas Pauley, Bernard M. Piller, Laurent Haas, «Sakamoto», Yuval Sarna, www.securereality.com.au, Alexis Soulard, Alvar Soome, Siu Sun, Peter Svec, Michael Tacelosky, Rachim Tamsjadi, Kositer Uros, Luís V., Martijn W. van der Lee, Algis Vainauskas, Daniel Villanueva, Vinay, Ignacio Vazquez-Abrams, Chee Wai, Jakub Wilk, Thomas Michael Winningham, Vilius Zigmantas, «Manuzhai».
Перекладачі¶
Ці люди внесли свій вклад в переклад phpMyAdmin:
Албанська
- Arben Çokaj <acokaj_at_shkoder.net>
Арабська
- Ahmed Saleh Abd El-Raouf Ismae <a.saleh.ismael_at_gmail.com>
- Ahmed Saad <egbrave_at_hotmail.com>
- hassan mokhtari <persiste1_at_gmail.com>
Вірменська
- Andrey Aleksanyants <aaleksanyants_at_yahoo.com>
Азербайджанська
- Mircəlal <01youknowme_at_gmail.com>
- Huseyn <huseyn_esgerov_at_mail.ru>
- Sevdimali İsa <sevdimaliisayev_at_mail.ru>
- Jafar <sharifov_at_programmer.net>
Білоруська
- Viktar Palstsiuk <vipals_at_gmail.com>
Болгарська
- Boyan Kehayov <bkehayov_at_gmail.com>
- Valter Georgiev <blagynchy_at_gmail.com>
- Valentin Mladenov <hudsonvsm_at_gmail.com>
- P <plamen_mbx_at_yahoo.com>
- krasimir <vip_at_krasio-valia.com>
Каталонська
- josep constanti <jconstanti_at_yahoo.es>
- Xavier Navarro <xvnavarro_at_gmail.com>
Китайська (Китай)
- Vincent Lau <3092849_at_qq.com>
- Zheng Dan <clanboy_at_163.com>
- disorderman <disorderman_at_qq.com>
- Rex Lee <duguying2008_at_gmail.com>
- <fundawang_at_gmail.com>
- popcorner <memoword_at_163.com>
- Yizhou Qiang <qyz.yswy_at_hotmail.com>
- zz <tczzjin_at_gmail.com>
- Terry Weng <wengshiyu_at_gmail.com>
- whh <whhlcj_at_126.com>
Китайська (Тайвань)
- Albert Song <albb0920_at_gmail.com>
- Chien Wei Lin <cwlin0416_at_gmail.com>
- Peter Dave Hello <xs910203_at_gmail.com>
Кельнська
- Purodha <publi_at_web.de>
Чеська
- Aleš Hakl <ales_at_hakl.net>
- Dalibor Straka <dalibor.straka3_at_gmail.com>
- Martin Vidner <martin_at_vidner.net>
- Ondra Šimeček <ondrasek.simecek_at_gmail.com>
- Jan Palider <palider_at_seznam.cz>
- Petr Kateřiňák <petr.katerinak_at_gmail.com>
Датська
- Aputsiaĸ Niels Janussen <aj_at_isit.gl>
- Dennis Jakobsen <dennis.jakobsen_at_gmail.com>
- Jonas <jonas.den.smarte_at_gmail.com>
- Claus Svalekjaer <just.my.smtp.server_at_gmail.com>
Нідерландська
- Voogt <a.voogt_at_hccnet.nl>
- dingo thirteen <dingo13_at_gmail.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Dieter Adriaenssens <ruleant_at_users.sourceforge.net>
- Niko Strijbol <strijbol.niko_at_gmail.com>
Англійська (Сполучене Королівство)
- Dries Verschuere <dries.verschuere_at_outlook.com>
- Francisco Rocha <j.francisco.o.rocha_at_zoho.com>
- Marc Delisle <marc_at_infomarc.info>
- Marek Tomaštík <tomastik.m_at_gmail.com>
Есперанто
- Eliovir <eliovir_at_gmail.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
Естонська
- Kristjan Räts <kristjanrats_at_gmail.com>
Фінська
- Juha Remes <jremes_at_outlook.com>
- Lari Oesch <lari_at_oesch.me>
Французька
- Marc Delisle <marc_at_infomarc.info>
Фризька
- Robin van der Vliet <info_at_robinvandervliet.nl>
Галісійська
- Xosé Calvo <xosecalvo_at_gmail.com>
Німецька
- Julian Ladisch <github.com-t3if_at_ladisch.de>
- Jan Erik Zassenhaus <jan.zassenhaus_at_jgerman.de>
- Lasse Goericke <lasse_at_mydom.de>
- Matthias Bluthardt <matthias_at_bluthardt.org>
- Michael Koch <michael.koch_at_enough.de>
- Ann + J.M. <phpMyAdmin_at_ZweiSteinSoft.de>
- <pma_at_sebastianmendel.de>
- Phillip Rohmberger <rohmberger_at_hotmail.de>
- Hauke Henningsen <sqrt_at_entless.org>
Грецька
- Παναγιώτης Παπάζογλου <papaz_p_at_yahoo.com>
Іврит
- Moshe Harush <mmh15_at_windowslive.com>
- Yaron Shahrabani <sh.yaron_at_gmail.com>
- Eyal Visoker <visokereyal_at_gmail.com>
Хінді
- Atul Pratap Singh <atulpratapsingh05_at_gmail.com>
- Yogeshwar <charanyogeshwar_at_gmail.com>
- Deven Bansod <devenbansod.bits_at_gmail.com>
- Kushagra Pandey <kushagra4296_at_gmail.com>
- Nisarg Jhaveri <nisargjhaveri_at_gmail.com>
- Roohan Kazi <roohan_cena_at_yahoo.co.in>
- Yugal Pantola <yug.scorpio_at_gmail.com>
Угорська
- Akos Eros <erosakos02_at_gmail.com>
- Dániel Tóth <leedermeister_at_gmail.com>
- Szász Attila <undernetangel_at_gmail.com>
- Balázs Úr <urbalazs_at_gmail.com>
Індонезійська
- Deky Arifianto <Deky40_at_gmail.com>
- Andika Triwidada <andika_at_gmail.com>
- Dadan Setia <da2n_s_at_yahoo.co.id>
- Dadan Setia <dadan.setia_at_gmail.com>
- Yohanes Edwin <edwin_at_yohanesedwin.com>
- Fadhiil Rachman <fadhiilrachman_at_gmail.com>
- Benny <tarzq28_at_gmail.com>
- Tommy Surbakti <tommy_at_surbakti.net>
- Zufar Fathi Suhardi <zufar.bogor_at_gmail.com>
Інтерлінгва
- Giovanni Sora <g.sora_at_tiscali.it>
Італійська
- Francesco Saverio Giacobazzi <francesco.giacobazzi_at_ferrania.it>
- Marco Pozzato <ironpotts_at_gmail.com>
- Stefano Martinelli <stefano.ste.martinelli_at_gmail.com>
Японська
- k725 <alexalex.kobayashi_at_gmail.com>
- Hiroshi Chiyokawa <hiroshi.chiyokawa_at_gmail.com>
- Masahiko HISAKAWA <orzkun_at_ageage.jp>
- worldwideskier <worldwideskier_at_yahoo.co.jp>
Каннада
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Shameem Ahmed A Mulla <shameem.sam_at_gmail.com>
Корейська
- Bumsoo Kim <bskim45_at_gmail.com>
- Kyeong Su Shin <cdac1234_at_gmail.com>
- Dongyoung Kim <dckyoung_at_gmail.com>
- Myung-han Yu <greatymh_at_gmail.com>
- JongDeok <human.zion_at_gmail.com>
- Yong Kim <kim_at_nhn.com>
- 이경준 <kyungjun2_at_gmail.com>
- Seongki Shin <skshin_at_gmail.com>
- Yoon Bum-Jong <virusyoon_at_gmail.com>
- Koo Youngmin <youngminz.kr_at_gmail.com>
Курдська Сорані
- Alan Hilal <alan.hilal94_at_gmail.com>
- Aso Naderi <aso.naderi_at_gmail.com>
- muhammad <esy_vb_at_yahoo.com>
- Zrng Abdulla <zhyarabdulla94_at_gmail.com>
Латвійська
- Latvian TV <dnighttv_at_gmail.com>
- Edgars Neimanis <edgarsneims5092_at_inbox.lv>
- Ukko <perkontevs_at_gmail.com>
Лімбурзька
- Robin van der Vliet <info_at_robinvandervliet.nl>
Литовська
- Vytautas Motuzas <v.motuzas_at_gmail.com>
Малайська
- Amir Hamzah <amir.overlord666_at_gmail.com>
- diprofinfiniti <anonynuine-999_at_yahoo.com>
Непальська
- Nabin Ghimire <nnabinn_at_hotmail.com>
Норвезька букмол
- Børge Holm-Wennberg <borge947_at_gmail.com>
- Tor Stokkan <danorse_at_gmail.com>
- Espen Frøyshov <efroys_at_gmail.com>
- Kurt Eilertsen <kurt_at_kheds.com>
- Christoffer Haugom <ph3n1x.nobody_at_gmail.com>
- Sebastian <sebastian_at_sgundersen.com>
- Tomas <tomas_at_tomasruud.com>
Перська
- ashkan shirian <ashkan.shirian_at_gmail.com>
- HM <goodlinuxuser_at_chmail.ir>
Польська
- Andrzej <andrzej_at_kynu.pl>
- Przemo <info_at_opsbielany.waw.pl>
- Krystian Biesaga <krystian4842_at_gmail.com>
- Maciej Gryniuk <maciejka45_at_gmail.com>
- Michał VonFlynee <vonflynee_at_gmail.com>
Португальська
- Alexandre Badalo <alexandre.badalo_at_sapo.pt>
- João Rodrigues <geral_at_jonilive.com>
- Pedro Ribeiro <p.m42.ribeiro_at_gmail.com>
- Sandro Amaral <sandro123iv_at_gmail.com>
Португальська (Бразилія)
- Alex Rohleder <alexrohleder96_at_outlook.com>
- bruno mendax <brunomendax_at_gmail.com>
- Danilo GUia <danilo.eng_at_globomail.com>
- Douglas Rafael Morais Kollar <douglas.kollar_at_pg.df.gov.br>
- Douglas Eccker <douglaseccker_at_hotmail.com>
- Ed Jr <edjacobjunior_at_gmail.com>
- Guilherme Souza Silva <g.szsilva_at_gmail.com>
- Guilherme Seibt <gui_at_webseibt.net>
- Helder Santana <helder.bs.santana_at_gmail.com>
- Junior Zancan <jrzancan_at_hotmail.com>
- Luis <luis.eduardo.braschi_at_outlook.com>
- Marcos Algeri <malgeri_at_gmail.com>
- Marc Delisle <marc_at_infomarc.info>
- Renato Rodrigues de Lima Júnio <renatomdd_at_yahoo.com.br>
- Thiago Casotti <thiago.casotti_at_uol.com.br>
- Victor Laureano <victor.laureano_at_gmail.com>
- Vinícius Araújo <vinipitta_at_gmail.com>
- Washington Bruno Rodrigues Cav <washingtonbruno_at_msn.com>
- Yan Gabriel <yansilvagabriel_at_gmail.com>
Пенджабська
- Robin van der Vliet <info_at_robinvandervliet.nl>
Румунська
- Alex <amihaita_at_yahoo.com>
- Costel Cocerhan <costa1988sv_at_gmail.com>
- Ion Adrian-Ionut <john_at_panevo.ro>
- Raul Molnar <molnar.raul_at_wservices.eu>
- Deleted User <noreply_at_weblate.org>
- Stefan Murariu <stefan.murariu_at_yahoo.com>
Російська
- Andrey Aleksanyants <aaleksanyants_at_yahoo.com>
- <ddrmoscow_at_gmail.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Хомутов Иван Сергеевич <khomutov.ivan_at_mail.ru>
- Alexey Rubinov <orion1979_at_yandex.ru>
- Олег Карпов <salvadoporjc_at_gmail.com>
- Egorov Artyom <unlucky_at_inbox.ru>
Сербська
- Smart Kid <kidsmart33_at_gmail.com>
Сингальська
- Madhura Jayaratne <madhura.cj_at_gmail.com>
Словацька
- Martin Lacina <martin_at_whistler.sk>
- Patrik Kollmann <parkourpotex_at_gmail.com>
- Jozef Pistej <pistej2_at_gmail.com>
Словенська
- Domen <mitenem_at_outlook.com>
Іспанська
- Daniel Hinostroza, MD <phpmyadmin_at_cerebroperiferico.com>
- Luis García Sevillano <floss.dev_at_gmail.com>
- Franco <fulanodetal.github1_at_openaliasbox.org>
- Luis Ruiz <luisan00_at_hotmail.com>
- Macofe <macofe.languagetool_at_gmail.com>
- Matías Bellone <matiasbellone+weblate_at_gmail.com>
- Rodrigo A. <ra4_at_openmailbox.org>
- FAMMA TV NOTICIAS MEDIOS DE CO <revistafammatvmusic.oficial_at_gmail.com>
- Ronnie Simon <ronniesimonf_at_gmail.com>
Шведська
- Anders Jonsson <anders.jonsson_at_norsjovallen.se>
Тамільська
- கணேஷ் குமார் <GANESHTHEONE_at_gmail.com>
- Achchuthan Yogarajah <achch1990_at_gmail.com>
- Rifthy Ahmed <rifthy456_at_gmail.com>
Тайська
- <nontawat39_at_gmail.com>
- Somthanat W. <somthanat_at_gmail.com>
Турецька
- Burak Yavuz <hitowerdigit_at_hotmail.com>
Українська
- Сергій Педько <nitrotoll_at_gmail.com>
- Igor <vmta_at_yahoo.com>
- Vitaliy Perekupka <vperekupka_at_gmail.com>
В’єтнамська
- Bao Phan <baophan94_at_icloud.com>
- Xuan Hung <mr.hungdx_at_gmail.com>
- Bao trinh minh <trinhminhbao_at_gmail.com>
Західнофламандська
- Robin van der Vliet <info_at_robinvandervliet.nl>
Перекладачі документації¶
Ці люди внесли свій вклад в переклад phpMyAdmin документації:
Албанська
- Arben Çokaj <acokaj_at_shkoder.net>
Арабська
- Ahmed El Azzabi <ahmedtek1993 _at _gmail.com>
- Omar Essam <omar_2412_at_live.com>
Вірменська
- Andrey Aleksanyants <aaleksanyants_at_yahoo.com>
Азербайджанська
- Mircəlal <01youknowme_at_gmail.com>
- Sevdimali İsa <sevdimaliisayev_at_mail.ru>
Каталонська
- josep constanti <jconstanti_at_yahoo.es>
- Joan Montané <joan_at_montane.cat>
- Xavier Navarro <xvnavarro_at_gmail.com>
Китайська (Китай)
- Vincent Lau <3092849_at_qq.com>
- 罗攀登 <6375lpd_at_gmail.com>
- disorderman <disorderman_at_qq.com>
- ITXiaoPang <djh1017555_at_126.com>
- tunnel213 <tunnel213_at_aliyun.com>
- Terry Weng <wengshiyu_at_gmail.com>
- whh <whhlcj_at_126.com>
Китайська (Тайвань)
- Chien Wei Lin <cwlin0416_at_gmail.com>
- Peter Dave Hello <xs910203_at_gmail.com>
Чеська
- Aleš Hakl <ales_at_hakl.net>
- Michal Čihař <michal_at_cihar.com>
- Jan Palider <palider_at_seznam.cz>
- Petr Kateřiňák <petr.katerinak_at_gmail.com>
Датська
- Aputsiaĸ Niels Janussen <aj_at_isit.gl>
- Claus Svalekjaer <just.my.smtp.server_at_gmail.com>
Нідерландська
- Voogt <a.voogt_at_hccnet.nl>
- dingo thirteen <dingo13_at_gmail.com>
- Dries Verschuere <dries.verschuere_at_outlook.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Stefan Koolen <nast3zz_at_gmail.com>
- Ray Borggreve <ray_at_datahuis.net>
- Dieter Adriaenssens <ruleant_at_users.sourceforge.net>
- Tom Hofman <tom.hofman_at_gmail.com>
Естонська
- Kristjan Räts <kristjanrats_at_gmail.com>
Фінська
- Juha <jremes_at_outlook.com>
Французька
- Cédric Corazza <cedric.corazza_at_wanadoo.fr>
- Étienne Gilli <etienne.gilli_at_gmail.com>
- Marc Delisle <marc_at_infomarc.info>
- Donavan_Martin <mart.donavan_at_hotmail.com>
Фризька
- Robin van der Vliet <info_at_robinvandervliet.nl>
Галісійська
- Xosé Calvo <xosecalvo_at_gmail.com>
Німецька
- Daniel <d.gnauk89_at_googlemail.com>
- JH M <janhenrikm_at_yahoo.de>
- Lasse Goericke <lasse_at_mydom.de>
- Michael Koch <michael.koch_at_enough.de>
- Ann + J.M. <phpMyAdmin_at_ZweiSteinSoft.de>
- Niemand Jedermann <predatorix_at_web.de>
- Phillip Rohmberger <rohmberger_at_hotmail.de>
- Hauke Henningsen <sqrt_at_entless.org>
Грецька
- Παναγιώτης Παπάζογλου <papaz_p_at_yahoo.com>
Угорська
- Balázs Úr <urbalazs_at_gmail.com>
Італійська
- Francesco Saverio Giacobazzi <francesco.giacobazzi_at_ferrania.it>
- Marco Pozzato <ironpotts_at_gmail.com>
- Stefano Martinelli <stefano.ste.martinelli_at_gmail.com>
- TWS <tablettws_at_gmail.com>
Японська
- Eshin Kunishima <ek_at_luna.miko.im>
- Hiroshi Chiyokawa <hiroshi.chiyokawa_at_gmail.com>
Литовська
- Jur Kis <atvejis_at_gmail.com>
- Dovydas <dovy.buz_at_gmail.com>
Норвезька букмол
- Tor Stokkan <danorse_at_gmail.com>
- Kurt Eilertsen <kurt_at_kheds.com>
Португальська (Бразилія)
- Alexandre Moretti <alemoretti2010_at_hotmail.com>
- Douglas Rafael Morais Kollar <douglas.kollar_at_pg.df.gov.br>
- Guilherme Seibt <gui_at_webseibt.net>
- Helder Santana <helder.bs.santana_at_gmail.com>
- Michal Čihař <michal_at_cihar.com>
- Michel Souza <michel.ekio_at_gmail.com>
- Danilo Azevedo <mrdaniloazevedo_at_gmail.com>
- Thiago Casotti <thiago.casotti_at_uol.com.br>
- Vinícius Araújo <vinipitta_at_gmail.com>
- Yan Gabriel <yansilvagabriel_at_gmail.com>
Словацька
- Martin Lacina <martin_at_whistler.sk>
- Michal Čihař <michal_at_cihar.com>
- Jozef Pistej <pistej2_at_gmail.com>
Словенська
- Domen <mitenem_at_outlook.com>
Іспанська
- Luis García Sevillano <floss.dev_at_gmail.com>
- Franco <fulanodetal.github1_at_openaliasbox.org>
- Matías Bellone <matiasbellone+weblate_at_gmail.com>
- Ronnie Simon <ronniesimonf_at_gmail.com>
Турецька
- Burak Yavuz <hitowerdigit_at_hotmail.com>
Оригінальний список учасників версії 2.1.0¶
Ця робота заснована на MySQL-Webadmin Peter Kuppelwieser’s. Це була його ідея, щоб створити веб-інтерфейс, заснований на MySQL, використовуючи PHP3. Хоча я не використовував жодного його вихідного коду, є деякі поняття, запозичені у нього. phpMyAdmin був створений тому, що Peter сказав мені, що він не збирається і далі розвивати свій (великий) інструмент.
Подяка
- Amalesh Kempf <ak-lsml_at_living-source.com> сприяв написанню кода для перевірки при видаленні таблиці або бази даних. Також запропонував, що ви повинні мати можливість вказати первинний ключ в tbl_create.php3. Для версії 1.1.1 брав участь в розробці ldi_*.php3-set (імпорт текстових файлів), а також повідомлень про помилки. Плюс безліч дрібних удосконалень.
- Jan Legenhausen <jan_at_nrw.net>: зробив багато змін, які були введені в 1.3.0 (в тому числі й досить значні такі, як аутентифікація). Для версії 1.4.1 розширив функцію дампа таблиці. Плюс помилка-виправлення і допомога.
- Marc Delisle <DelislMa_at_CollegeSherbrooke.qc.ca> зробив phpMyAdmin незалежний від мови за рахунок передачі рядка в окремий файл. Він також сприяв французькому перекладу.
- Alexandr Bravo <abravo_at_hq.admiral.ru> вніс свій вклад в tbl_select.php3, функція для відображення тільки деяких стовпців з таблиці.
- Chris Jackson <chrisj_at_ctel.net> додана підтримка функцій MySQL в tbl_change.php3. Він також додав «Запит за зразком» функцію в 2.0.
- Dave Walton <walton_at_nordicdms.com> додана підтримка декількох серверів і є постійним автором для виправлень.
- Gabriel Ash <ga244_at_is8.nyu.edu> сприяв функції довільного доступу до 2.0.6.
Наступні люди внесли невеликі зміни, удосконалення, виправлення помилок і підтримку для нової мови:
Jim Kraai, Jordi Bruguera, Miquel Obrador, Geert Lund, Thomas Kleemann, Alexander Leidinger, Kiko Albiol, Daniel C. Chao, Pavel Piankov, Sascha Kettler, Joe Pruett, Renato Lins, Mark Kronsbein, Jannis Hermanns, G. Wieggers.
І дякую всім іншим, хто надіслав мені листи з пропозиціями, звіти про помилки і чи просто відгуки.
Глосарій¶
З Вікіпедії, вільної енциклопедії
- .htaccess
ім’я за замовчуванням конфігураційного файлу на рівні каталогу Apache.
Дивись також
- ACL
- Access Control List
- Blowfish
a keyed, symmetric block cipher, designed in 1993 by Bruce Schneier.
Дивись також
- Браузер
програмний додаток, який дає користувачеві можливість відображати та взаємодіяти з текстом, зображеннями та іншою інформацією, яка зазвичай розміщується на веб-сторінці вебсайту в World Wide Web.
Дивись також
- bzip2
a free software/open-source data compression algorithm and program developed by Julian Seward.
Дивись також
- CGI
Common Gateway Interface is an important World Wide Web technology that enables a client web browser to request data from a program executed on the web server.
Дивись також
- Журнал змін
журнал або звіт про зміни, внесені до проєкту.
Дивись також
- Клієнт
комп’ютерна система, яка звертається до (дистанційної) служби на іншому комп’ютері певною мережею.
Дивись також
- стовпець
набір значень даних особливо простого типу, по одному для кожного рядка таблиці.
Дивись також
пакет інформації, який надсилається сервером на веб-браузер World Wide Web, а потім відправляється назад браузером кожного разу, коли він отримує доступ до цього сервера.
Дивись також
- CSV
Значення, розділені комами
Дивись також
- DB
- дивіться Database
- База даних
організована колекція даних.
Дивись також
- Механізм
- дивіться Storage Engines
- PHP розширення
PHP-модуль, який розширює PHP з додатковою функціональністю.
Дивись також
- FAQ
Frequently Asked Questions is a list of commonly asked question and their answers.
Дивись також
- Поле
частина розділених даних/стовпців.
Дивись також
- Зовнішній ключ
a column or group of columns in a database row that points to a key column or group of columns forming a key of another database row in some (usually different) table.
Дивись також
- GD
Графічна бібліотека Thomas Boutell та інших для динамічного управління зображеннями.
Дивись також
- GD2
- дивіться GD
- GZip
GZip is short for GNU zip, a GNU free software file compression program.
Дивись також
- хост
будь-яка машина, підключена до комп’ютерної мережі, вузол, що має ім’я хоста.
Дивись також
- ім’я хоста
the unique name by which a network-attached device is known on a network.
Дивись також
- HTTP
Hypertext Transfer Protocol is the primary method used to transfer or convey information on the World Wide Web.
Дивись також
- HTTPS
HTTP - з’єднання з додатковими заходами безпеки.
Дивись також
- IEC
- Міжнародна електротехнічна комісія
- IIS
Internet Information Services is a set of internet-based services for servers using Microsoft Windows.
Дивись також
<https://en.wikipedia.org/wiki/Internet_Information_Services>
- Індекс
функція, яка дозволяє швидко отримати доступ до рядків у таблиці.
Дивись також
- IP
«Internet Protocol» is a data-oriented protocol used by source and destination hosts for communicating data across a packet-switched internetwork.
Дивись також
- IP-адреса
унікальний номер, який використовують пристрої для ідентифікації та зв’язку між собою в мережі за допомогою стандарту Інтернет-протоколу.
Дивись також
- IPv6
IPv6 (Internet Protocol version 6) is the latest revision of the Internet Protocol (IP), designed to deal with the long-anticipated problem of its predecessor IPv4 running out of addresses.
Дивись також
- ISAPI
Інтерфейс програми-програмування Internet Server - це API інформаційних служб Інтернету (IIS).
- ISP
An Internet service provider is a business or organization that offers users access to the Internet and related services.
Дивись також
- ISO
International Standards Organization
Дивись також
- JPEG
найбільш часто використовуваний стандартний метод алгоритму стиснення для фотографічних зображень.
Дивись також
- JPG
- look at JPEG
- Ключ
- look at Index
- LATEX
a document preparation system for the TeX typesetting program.
Дивись також
- Mac
Apple Macintosh - лінія персональних комп’ютерів, спроєктована, розроблена, виготовлена та продана компанією Apple Computer.
Дивись також
- macOS
операційна система, яка входить до всіх комп’ютерів Apple Macintosh, які в даний час представленні на споживчому та професійному ринку.
Дивись також
- mbstring
Функції PHP mbstring забезпечують підтримку мов, представлених багатобайтовими наборами символів, особливо UTF-8.
Якщо у вас виникли проблеми з встановленням цього розширення, зверніться до 1.20 Я отримую помилку про відсутність розширень mysqli і mysql., він містить корисні підказки.
Дивись також
- Медіотип
A media type (formerly known as MIME type) is a two-part identifier for file formats and format contents transmitted on the Internet.
Дивись також
- MIME
Багатофункціональні розширення Інтернет-пошти є стандартом Інтернету для формату електронної пошти.
Дивись також
- модуль
modular extension for the Apache HTTP Server httpd.
Дивись також
- mod_proxy_fcgi
an Apache module implementing a Fast CGI interface; PHP can be run as a CGI module, FastCGI, or directly as an Apache module.
Дивись також
- MySQL
Багатопоточний, багатокористувацький, SQL (Мова Структурованих Запитів) система управління базами даних (СУБД).
Дивись також
- MySQLi
покращена MySQL - розширення клієнтського PHP.
Дивись також
Дивись також
- mysql
MySQL - розширення клієнтського PHP.
Дивись також
- OpenDocument
an open standard for office documents.
Дивись також
- OS X
look at macOS.
Дивись також
Portable Document Format is a file format developed by Adobe Systems for representing two-dimensional documents in a device-independent and resolution-independent format.
Дивись також
- PEAR
Розширення PHP та сховище програм.
Дивись також
Дивись також
- PCRE
Perl-Compatible Regular Expressions is the Perl-compatible regular expression functions for PHP
Дивись також
Дивись також
- PHP
скорочено «PHP: Гіпертекстовий препроцесор» - відкрите джерело, рефлексивна мова програмування, що використовується в основному для розробки додатків на сервері та динамічного веб-вмісту, а зовсім недавно - більш широкого кола програмних додатків.
Дивись також
- порт
з’єднання, за допомогою якого дані надсилаються та приймаються.
Дивись також
- первинний ключ
A primary key is an index over one or more fields in a table with unique values for every single row in this table. Every table should have a primary key for easier accessing/identifying data in this table. There can only be one primary key per table and it is named always PRIMARY. In fact, a primary key is just an unique key with the name PRIMARY. If no primary key is defined MySQL will use first unique key as primary key if there is one.
Ви можете створити первинний ключ під час створення таблиці (у phpMyAdmin просто перевірте перемикачі основного ключа для кожного поля, яке ви хочете мати частиною первинного ключа).
Ви також можете додати первинний ключ до існуючої таблиці за допомогою ALTER TABLE або CREATE INDEX (в phpMyAdmin ви можете просто натиснути на „Додати індекс“ на сторінці структури таблиці нижче зазначених полів).
- RFC
Запит на коментарі (RFC) - це серія меморандумів, що включає нові дослідження, інновації та методології, що застосовуються до Інтернет-технологій.
Дивись також
- RFC 1952
Специфікація формату файлу GZIP версії 4.3
Дивись також
- Рядок (запис, кортеж)
являє собою єдиний, неявно структурований елемент даних у таблиці.
Дивись також
- Сервер
комп’ютерна система, яка надає послуги іншим обчислювальним системам по мережі.
Дивись також
- Sodium
The Sodium PHP extension.
Дивись також
- Механізмами зберігання
MySQL може використовувати кілька різних форматів для зберігання даних на диску: вони називаються двигунами зберігання або типами таблиці. phpMyAdmin дозволяє користувачеві змінити свій механізм зберігання для певної таблиці за допомогою вкладки операцій.
Загальні типи таблиці - InnoDB та MyISAM, хоча існують деякі інші і можуть бути бажаними в деяких ситуаціях.
Дивись також
Дивись також
- гніздо
форма міжпроцесного зв’язку.
Дивись також
- SSL
Secure Sockets Layer, (now superseded by TLS) is a cryptographic protocol which provides secure communication on the Internet.
Дивись також
- Збережена процедура
підпрограма, доступна для програм, що мають доступ до реляційної системи бази даних
Дивись також
- SQL
Мова Структурованих Запитів
Дивись також
- таблиця
a set of data elements (cells) that is organized, defined and stored as horizontal rows and vertical columns where each item can be uniquely identified by a label or key or by its position in relation to other items.
Дивись також
- tar
a type of archive file format, from «Tape Archive».
Дивись також
- TCP
Протокол керування передачею - це один з основних протоколів пакету Інтернет-протоколів.
Дивись також
- TCPDF
PHP бібліотека для створення файлів PDF.
Дивись також
Дивись також
- тригер
процедурний код, який автоматично виконується у відповідь на певні події на конкретній таблиці або перегляді в базі даних
Дивись також
- унікальний ключ
- A unique key is an index over one or more fields in a table which has a unique value for each row. The first unique key will be treated as primary key if there is no primary key defined.
- URL
Uniform Resource Locator - це послідовність символів, що відповідає стандартному формату, який використовується для посилання на ресурси, такі як документи та зображення в Інтернеті, за їх розташуванням.
Дивись також
- Веб-сервер
A computer (program) that is responsible for accepting HTTP requests from clients and serving them web pages.
Дивись також
- XML
Extensible Markup Language is a W3C-recommended general-purpose markup language for creating special-purpose markup languages, capable of describing many different kinds of data.
Дивись також
- ZIP
популярне стиснення даних та архівний формат.
Дивись також
- Zlib
an open-source, cross-platform data compression library by Jean-loup Gailly and Mark Adler.
Дивись також
- Content Security Policy
The HTTP Content-Security-Policy response header allows web site administrators to control resources the user agent is allowed to load for a given page.
Дивись також
Дивись також