To jest (częściowe) tłumaczenie oficjalnej dokumentacji programu
phpMyAdmin - wersja 3.5.0-beta1-dev. Wszystkich użytkowników phpMyAdmin
zapraszamy do wspólnego tłumaczenia tej dokumentacji. Nasz serwer tłumaczeń
znajduje sie pod adresem: https://l10n.cihar.com/projects/pmadoc/
Wymagania
- PHP
- Potrzebny jest PHP w wersji 5.2.0 lub nowszej, z obsługą sesji (zobacz: FAQ
1.31), rozszerzenie Standard PHP Library (SPL) oraz obsługa JSON.
- Do obsługi wysyłania plików ZIP na serwer, potrzebne jest rozszerzenie
PHPzip.
- Do poprawnej obsługi wielobajtowych napisów (np. UTF-8, który obecnie jest
formatem domyślnym), potrzebna jest instalacja rozszerzeń mbstring
i ctype.
- Do bezpośredniego wyświetlania miniaturek plików w formacie JPEG
("image/jpeg: inline"), w oryginalnych proporcjach, potrzebna jest
obsługa GD2.
- Używanie metody uwierzytelniania
"cookie", zakłada również stosowanie rozszerzenia mcrypt. Jest to stanowcze
zalecenie dla większości użytkowników; w przypadku komputerów
64–bitowych zalecenie to ma charakter obowiązkowy. Brak użycia
mcrypt spowoduje, że phpMyAdmin będzie wczytywać strony WWW
znacznie wolniej, niż zwykle.
- Aby obsługiwać paski postępu wczytywania stron, zobacz
FAQ 2.9.
- Obsługa strumieni danych BLOB, zobacz: wymagania PHP i MySQL, w: FAQ
6.25.
- Do obsługi XML oraz importu arkuszy Open Document potrzebny jest PHP, w
wersji 5.2.17 lub nowszej, a także rozszerzenie libxml.
- MySQL 5.0 or newer (details);
- Przeglądarka stron WWW z włączonymi plikami cookies.
Wprowadzenie
Za pomocą phpMyAdmin można zarządzać całym serwerem MySQL (potrzebne jest
konto super-użytkownika), jak również pojedynczą bazą danych. W tym drugim
przypadku pod warunkiem, że prawidłowo skonfigurowane jest konto użytkownika
MySQL (włączenie odczytu / modyfikacji tylko określonej bazy danych). Do
ciebie, Użytkowniku tej dokumentacji, należy odszukanie odpowiedniego
fragmentu podręcznika MySQL, gdzie znacznie szerzej omówione są
zasygnalizowane tutaj kwestie.
Obecnie, za pomocą phpMyAdmin można:
- przeglądać i usuwać bazy danych, tabele, widoki, kolumny i indeksy,
- tworzyć, kopiować, usuwać, zmieniać nazwy baz danych; dotyczy to również
tabel, kolumn i indeksów,
- utrzymywać w dobrym stanie serwer, bazy danych i tabele, z propozycjami na
temat konfiguracji serwera,
- wykonywać, edytować i tworzyć zakładki dowolnego wyrażeniaSQL; dotyczy to także zapytań
wsadowych,
- wczytywać pliki tekstowe do tabel,
- tworzyć1 i odczytywać zrzuty tabel,
- eksportować dane do różnych formatów:1CSV, XML,
PDF, ISO/IEC 26300 -
OpenDocument (pliki tekstowe i arkusze kalkulacyjne), Word, LaTeX.
- importować dane i struktury MySQL z arkuszy kalkulacyjnych OpenDocument, jak
również XML, CSV, i plików SQL,
- administrować wieloma serwerami,
- zarządzać użytkownikami MySQL i ich uprawnieniami,
- sprawdzać referencyjną integralność powiązań w tabelach MyISAM,
- używać zapytań przez przykład (Query-by-example - QBE); tworzyć automatyczne
zapytania, łączące żądane tabele,
- tworzyć grafikę PDF z układu
bazy danych,
- wyszukiwać dane w sposób globalny w bazie lub w jej podzestawie,
- przekształcać składowane dane do dowolnego formatu, używając zestawu
predefiniowanych funkcji, takich jak wyświetlanie danych BLOB w postaci
obrazu lub odsyłacza do pobrania,
- śledzić zmiany w bazach danych, tabelach i widokach,
- obsługiwać tabele InnoDB i klucze obce . (zobacz: FAQ 3.6),
- obsługiwać mysqli, ulepszone rozszerzenie MySQL, . (zobacz: FAQ 1.17),
- tworzyć, edytować, wywoływać, eksportować i usuwać przechowywane procedury i
funkcje,
- tworzyć, edytować, eksportować i usuwać zdarzenia i wyzwalacze,
- komunikować się w 62 językach
narodowych,
- synchronizować dwie bazy danych umieszczone na tych samych lub zdalnych
serwerach, (zobacz: FAQ 9.1,
Kilka słów na temat użytkowników:
Wiele osób ma trudności ze zrozumieniem koncepcji zarządzania użytkownikami
w phpMyAdmin. Mechanizm tego zarządzania wygląda następująco: 1. aby
zalogować się do phpMyAdmin, wszyscy użytkownicy muszą mieć wcześniej
założone konta w MySQL. 2. gdy użytkownik loguje się do phpMyAdmin, jego
nazwa i hasło przesyłane są bezpośrednio do MySQL. 3. zarządzanie
użytkownikami w phpMyAdmin może odbywać się wyłącznie na
zasadzie przetwarzania i/lub modyfikacji informacji o kontach użytkownika.
Instalacja
- Szybka instalacja
- Użycie skryptu instalacyjnego
- Przechowywanie konfiguracji phpMyAdmin
- Aktualizacja phpMyAdmin ze starszej wersji
- Używanie trybów uwierzytelnienia
phpMyAdmin nie stosuje żadnych specjalnych mechanizmów zabezpieczeń serwera
MySQL. Przyznanie odpowiednich uprawnień do baz danych jest zadaniem
administratora. Można to zrobić na stronie "Uprawnienia"
interfejsu phpMyAdmin.
Ostrzeżenie dla użytkowników Mac
jeśli pracujesz w wersji Mac
OS, która poprzedza wersję OS X, archiwa trzeba rozpakować do formatów
Mac.
Trzeba ponownie zapisać, w programie BBEdit, WSZYSTKIE skrypty phpMyAdmin
napisane w stylu Unix przed wysłaniem ich na serwer. Język PHP wydaje się
"nie lubić" znaków końca linii w stylu Mac.
Szybka instalacja
- Wybrać odpowiedni zestaw dystrybucyjny ze strony pobierania phpmyadmin.net
Uwaga: niektóre zestawy zawierają wiadomości tylko w języku
angielskim, inne - wszystkie języki w formacie UTF-8 (w większości
przypadków jest to wystarczające), jeszcze inne -wszystkie języki z pełnym
zestawem kodowania znaków. Zakładamy, że wybrany będzie zestaw podobny do
tego:phpMyAdmin-x.x.x-all-languages.tar.gz
- Rozpakować zestaw za pomocą programów untar lub unzip
(upewnić się, że zostały rozpakowane również wszystkie podkatalogi) do
katalogu root serwera zdalnego:tar -xzvf
phpMyAdmin_x.x.x-all-languages.tar.gz Jeżeli brak bezpośredniego
dostępu do tego katalogu - umieścić pliki w jakimś katalogu na maszynie
lokalnej, a po wykonaniu kroku 4, przesłać katalog na serwer za pomocą, na
przykład, klienta FTP.
- Upewnić się, że wszystkie skrypty mają odpowiedniego właściciela (jeśli PHP
pracuje w trybie bezpiecznym, posiadanie skryptów, mających innego
właściciela niż właściciel podstawowy, będzie powodować problemy). Zobacz
sugestie w: FAQ 4.2 i FAQ 1.26.
- Skonfigurować instalację. Istnieją dwie metody, które można użyć w tym celu:
1. metoda tradycyjna - ręczna edycja kopii plikuconfig.inc.php,
(szybki sposób na rozpoczęcie instalacji w trybie tekstowym dla użytkowników
zaawansowanych), 2. instalacja za pomocą skryptu (kreator graficzny).
- Aby ręcznie utworzyć plik config.inc.php, trzeba w dowolnym
edytorze tekstowym utworzyć nowy plik o tej właśnie nazwie, a następnie
umieścić w nim odpowiednie wpisy (dyrektywy konfiguracyjne). Można też
skopiować do niego zawartość pliku config.sample.inc.php, który
zawiera minimalny zestaw konfiguracyjny; w tym przypadku plik z nową
zawartością należy skopiować do głównego katalogu phpMyAdmin (do katalogu, w
którym znajduje się plik index.php). phpMyAdmin wczytuje najpierw
plik libraries/config.default.php, a następnie nadpisuje
umieszczoną w nim zawartość tym, co znajdzie w pliku
config.inc.php. Jeśli wartość domyślna jest odpowiednio dobra dla
określonych ustawień, nie ma potrzeby załączać jej do pliku
config.inc.php, trzeba natomiast zastosować kilka dodatkowych
dyrektyw; prosta konfiguracja może wyglądać następująco:
<?php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003'; // użyć dowolnej wartości
$i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
?>
Albo, jeśli użytkownik nie chce podawać hasła za każdym razem, gdy loguje
się do PhpMyAdmin (opcja mniej bezpieczna):
<?php
$i=0;
$i++;
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'cbb74bc'; // wpisać swoje hasło
$cfg['Servers'][$i]['auth_type'] = 'config';
?>
Pełne wyjaśnienie możliwych wartości konfiguracyjnych dostępne jest w sekcji
Konfiguracja tego dokumentu.
- Zamiast ręcznej edycji pliku config.inc.php, można użyć Skryptu instalacyjnego. W tym celu trzeba ręcznie utworzyć
katalog config w katalogu głównym phpMyAdmin. Jest to podyktowane
koniecznymi środkami bezpieczeństwa. W systemie Linux/Unix można użyć
następujących poleceń:
cd phpMyAdmin
mkdir config # utworzyć katalog do zapisu
chmod o+rw config # nadać mu uprawnienia do zapisu
Aby wyedytować istniejącą konfigurację, trzeba ją najpierw skopiować:
cp config.inc.php config/ # skopiować bieżacą konfigurację
chmod o+w config/config.inc.php # nadać uprawnienia do zapisu
Na innych platformach systemowych trzeba także utworzyć katalog
config i sprawdzić, czy serwer WWW ma ustawiony dostęp do odczytu i
zapisu. Zobacz: FAQ 1.26
Następnie, klikamy w przeglądarce odnośnik skrypt
instalacyjny, co uruchomi proces konfiguracyjny. Pojawia się
najpierw okno z informacją: "phpMyAdmin Setup Script", gdzie, po kliknięciu
odnośnika "phpMyAdmin Setup Script" możemy, alternatywnie, przejść na stronę
WWW serwera demo phpMyAdmin, gdzie można kontynuować
graficzny, zaawansowany, proces konfiguracji. Proszę zauważyć, że
zmiany konfiguracji, dokonane w tym oknie będą zapisane dopiero
wtedy, gdy klikniemy przycisk Zachowaj. Zwykle, skrypt
zapisuje nowy plik config.inc.php w katalogu
config/. Jeśli jednak serwer WWW nie ma ustawionych uprawnień do
zapisu, lub katalog config/ nie istnieje, pojawia się komunikat:
"Nie udało się załadować lub zapisać konfiguracji". Trzeba wtedy ustawić, na
serwerze WWW, odpowiednie uprawnienia oraz sprawdzić, czy katalog
config/ faktycznie istnieje; można też kliknąć przycisk
Ściągnij i zapisać plik na maszynie lokalnej, a następnie wysłać na
serwer WWW za pomocą, na przykład, klienta FTP.
Jak tylko nasz plik zostanie zapisany, musimy go usunąć z katalogu
config/; trzeba także ponownie zresetować
uprawnienia, jest to podyktowane względami bezpieczeństwa:
mv config/config.inc.php . # przenieść plik do bieżacego katalogu
chmod o-rw config.inc.php # usunać uprawnienia odczytu i zapisu dla innych
rm -rf config # usunąć zbędny katalog
Teraz plik jest gotowy do użytku. Możemy go przeglądać lub edytować w
dowolnym edytorze tekstowym, jeśli chcemy ustawić opcje, których brak w
skrypcie instalacyjnym.
- W przypadku używania auth_type sugerujemy, aby zabezpieczyć katalog
instalacyjny phpMyAdmin, ponieważ użycie trybu config nie nakłada
na użytkownika obowiązku wprowadzenia hasła podczas dostępu do instalacji
phpMyAdmin. Zalecane jest użycie jednej z alternatywnych metod
uwierzytelnienia, na przykład za pomocą HTTP–AUTH w pliku .htaccess lub przełączenie się na używanie pliku
cookie lub uwierzytelnienie za pomocą http
auth_type. Zobacz też podsekcję "tryb wielu
użytkowników"FAQ, a
szczególnie FAQ 4.4.
- Otworzyć główny katalog phpMyAdmin w
przeglądarce. Powinien wyświetlić się ekran powitalny phpMyAdmin i bazy
danych, albo okno dialogowe logowania - jeśli używamy trybu uwierzytelnienia
HTTP lub cookie.
- Powinno zabronić się dostępu do podkatalogów ./libraries i
./setup/lib w konfiguracji serwera WWW. Zmiany konfiguracji serwera
Apache można dokonać za pomocą pliku .htaccess, który już znajduje się na
serwerze. W przypadku innych typów serwerów konfigurację należy
przeprowadzić według odrębnych zasad. Zabezpieczenie dostępu do katalogów
chroni konfigurację przed ewentualnym, niepożądanym ujawnieniem ścieżek
dostępu do plików instalacyjnych i przed zagrożeniami ze strony szkodliwych
skryptów.
-
Podczas instalacji phpMyAdmin na serwerze publicznym warto
ograniczyć robotom wyszukiwarek sieciowych dostęp do
naszych zasobów. Można to zrobić albo za pomocą pliku
robots.txt, który umieszczamy w katalogu głównym naszej domeny
na serwerze WWW (z odpowiednim wpisem wewnątrz tego pliku), albo przez
konfigurację pliku .htaccess, którego przykład, z odpowiednimi
wpisami konfiguracyjnymi, można znaleźć w katalogucontrib w
phpMyAdmin.
Przechowywanie konfiguracji phpMyAdmin
Aby w pełni wykorzystać zestaw nowych możliwości phpMyAdmin, takich jak:
zakładki, komentarze, SQL,
historia zdarzeń, mechanizmy monitorowania, generowanie plików PDF, transformacja zawartości
kolumn, itd., trzeba utworzyć zestaw specjalnych tabel. Tabele te mogą
znajdować się albo w indywidualnej bazie danych użytkownika, albo w
centralnej bazie danych, jeśli zastosowano instalację dla wielu
użytkowników. W tym ostatnim przypadku baza powinna być dostępna za pomocą
konta użytkownika kontrolnego - po to, aby nikt inny, oprócz danego
użytkownika, nie miał do niej dostępu.
Proszę zajrzeć do katalogu ./scripts/, gdzie powinien znajdować się
plik o nazwie create_tables.sql. (użytkownicy serwerów Windows
powinni zwrócić szczególną uwagę na FAQ 1.23).
Użytkownicy, którzy mają już taką infrastrukturę tabel i posiadają MySQL w
wersji 4.1.2 lub wyższej, powinni użyć pliku
./scripts/upgrade_tables_mysql_4_1_2+.sql, a następnie utworzyć nowe
tabele importując plik ./scripts/create_tables.sql
Zwykły użytkownik może używać phpMyAdmin do tworzenia własnych baz danych i
tabel. Czasami do tych czynności mogą być potrzebne specjalne
(administracyjne) uprawnienia; wspomniany wcześniej skrypt może wymagać
odpowiedniego dostosowania, zależnie od nazwy bazy danych.
Mając zaimportowany plik ./scripts/create_tables.sql trzeba określić
nazwy tabel w pliku ./config.inc.php Dyrektywy, które określają
zmiany nazw, można znaleźć w sekcji Konfiguracja W
tabelach trzeba ustawić uprawnienia dla użytkownika kontrolnego (zobacz
sekcję Używanie trybów
uwierzytelnienia).
Aktualizacja ze starszej wersji
Skopiować plik ./config.inc.php z poprzedniej instalacji do
instalacji już rozpakowanej. Pliki konfiguracyjne ze starszych wersji mogą
wymagać dostosowania, ponieważ pewne opcje zostały zmienione lub usunięte; w
szczególności, zmieniono definicję $cfg['AttributeTypes'], a więc
lepiej usunąć ją z pliku konfiguracyjnego zastępując definicją domyślną. Aby
konfiguracja była zgodna z PHP 6 należy też usunąć zdanie
set_magic_quotes_runtime(0); Zdanie to może znajdować się blisko
końca pliku konfiguracyjnego.
Nie powinno się nadpisywać pliku
libraries/config.default.php plikiem config.inc.php (który
jest plikiem konfiguracji domyślnej), gdyż ten ostatni plik ma zapisane
ustawienia zależne od wersji phpMyAdmin.
Jeśli serwer MySQL, mający wersję 4.1.2 zaktualizowano do wersji 5.x lub
wyższej, a stosuje się przechowywanie konfiguracji phpMyAdmin, powinno się
uruchomić skrypt, znajdujący się w pliku
scripts/upgrade_tables_mysql_4_1_2+.sql.
Używanie trybów uwierzytelniania
- Tryby uwierzytelniania HTTP i cookie są zalecane w środowisku
wieloużytkownikowym, to znaczy wszędzie tam, gdzie wielu użytkowników ma
dostęp do tej samej bazy danych lub do różnych baz danych, przy założeniu,
że użytkownicy ci mają ustawione różne prawa dostępu do tych baz.
Warto przy tym wiedzieć, że przeglądarka Internet Explorer wydaje się być
bardzo "dziurawa" pod względem "ciasteczek", przynajmniej do wersji 6.0.
Nawet w środowisku jednoużytkownikowym zastosowanie trybu HTTP lub cookie wydaje się być
podejściem rozsądnym, gdyż w ten sposób nazwa użytkownika /hasło nie są
przechowywane w sposób jawny w pliku konfiguracyjnym.
- Tryby uwierzytelnienia HTTP
i cookie są bezpieczniejsze: informacje o logowaniu do MySQL nie muszą być
przechowywane w pliku konfiguracyjnym phpMyAdmin (z możliwym wyjątkiem dla
użytkownika kontrolnego -
ang. controluser).
Należy jednak pamiętać, że hasło przesyłane jest w tak zwanym "czystym
tekście" (ang. plain text); w przypadku użycia bezpiecznego protokołu
HTTPS uwaga ta nie ma zastosowania.
W trybie 'cookie' hasło, zakodowane za pomocą algorytmu blowfish,
jest przechowywane w ciasteczku tymczasowym.
- Uwaga: ta sekcja ma zastosowanie tylko wtedy, gdy serwer MySQL jest
uruchamiany za pomocą --skip-show-database.
Dla trybów 'HTTP' i
'cookie', phpMyAdmin potrzebuje użytkownika kontrolnego, który ma tylko
uprawnienie SELECT do: `mysql.user` (wszystkie kolumny z
wyjątkiem `Password`), `mysql.db` (wszystkie kolumny),
`mysql.host` (wszystkie kolumny) i `mysql.tables_priv` (wszystkie
kolumny z wyjątkiem tabel `Grantor` i `Timestamp`).
Należy określić szczegóły dla użytkownika
kontrolnego w pliku config.inc.php, w ustawieniach
$cfg['Servers'][$i]['controluser'] i
$cfg['Servers'][$i]['controlpass'].
Następujący przykład zakłada, że użytkownik chce użyć pma jako
użytkownika kontrolnego i pmapass jako jego hasło, ale to tylko
przykład: zaleca się użycie innej nazwy/hasła w tym pliku! Instrukcje te
można wprowadzić z okna SQL Query w phpMyAdmin lub z linii poleceń klienta
mysql.
Jeśli nazwa serwera MySQL jest inna, trzeba zamienić localhost na
nazwę hosta serwera WWW.
GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';
GRANT SELECT (
Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
File_priv, Grant_priv, References_priv, Index_priv, Alter_priv,
Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv,
Execute_priv, Repl_slave_priv, Repl_client_priv
) ON mysql.user TO 'pma'@'localhost';
GRANT SELECT ON mysql.db TO 'pma'@'localhost';
GRANT SELECT ON mysql.host TO 'pma'@'localhost';
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv)
ON mysql.tables_priv TO 'pma'@'localhost';
Jeśli użytkownik chce używać wielu nowych cech relacji i zakładek:
GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';
(wymaga to ustawienia przechowywania konfiguracji
phpMyAdmin).
- Każdy z faktycznych użytkowników powinien uzyskać uprawnienia do
poszczególnych pojedynczych baz danych. Zwykle nie powinno nadawać się
uprawnień globalnych zwykłemu użytkownikowi, chyba że administrator bazy
danych zdaje sobie sprawę ze skutków takiej decyzji (np. tworzy
superużytkownika).
Na przykład, aby nadać wszystkie uprawnienia użytkownikowi
prawdziwy_uzytkownik do bazy danych baza_uzytkownika:
GRANT ALL PRIVILEGES ON user_base.* TO 'real_user'@localhost IDENTIFIED BY 'real_password';
Wszystkie działania użytkownika są od tej chwili całkowicie kontrolowane
przez system zarządzania użytkownikami MySQL.
W trybach uwierzytelniania 'HTTP' lub 'cookie' nie trzeba wypełniać pól
użytkownik/hasło wewnątrz tablicy $cfg['Servers'].
Tryb uwierzytelniania 'HTTP'
- Używa metody uwierzytelniania 'Basic HTTP' i pozwala na logowanie się jako ważny (=prawomocny)
użytkownik MySQL.
- Jest obsługiwany przez większość konfiguracji PHP do obsługi interfejsu
IIS (ISAPI),
który używa CGI PHP, zobacz:
FAQ
1.32, do używania z serwerem Apache CGI, zobacz: FAQ 1.35.
- Zobacz także: FAQ 4.4 na temat nieużywania mechanizmu
.htaccess razem z trybem uwierzytelniania 'HTTP'.
tryb uwierzytelniania 'cookie'
- Może to być zamiennik dla trybu uwierzytelniania 'HTTP' (na przykład, jeśli jest uruchomiony
interfejs IIS).
- Użytkownik w tym trybie musi mieć włączone 'ciasteczka' w swojej
przeglądarce WWW.
- W tym trybie użytkownik może wylogować się z phpMyAdmina i zalogować się
ponownie mając tę samą nazwę użytkownika.
- Jeśli użytkownik chce zalogować się do dowolnego serwera, zobacz dyrektywę
$cfg['AllowArbitraryServer'].
- Jak już wspomniano w sekcji wymagania, posiadanie
rozszerzenia mcrypt znacznie przyspiesza dostep do serwera (choć
nie jest to bezwzględnie wymagane).
tryb uwierzytelniania 'signon'
- Tryb ten jest wygodnym sposobem używania poświadczeń z innej aplikacji do
uwierzytelnienia w phpMyAdmin.
- Inna aplikacja musi przechować informacje logowania w danych sesyjnych.
- Więcej szczegółów w sekcji auth_type.
tryb uwierzytelniania 'config'
- Ten tryb jest mniej bezpieczny, ponieważ wymaga wypełniania pól $cfg['Servers'][$i]['user'] i
$cfg['Servers'][$i]['password'] (i w rezultacie, ktokolwiek, kto odczyta
plik config.inc.php może odkryć nazwę użytkownika i hasło).
Nie należy jednak ustawiać tutaj "użytkownika kontrolnego" użycie
$cfg['Servers'][$i]['only_db'] może być wystarczające.
- W sekcji ISP FAQ
jest wpis, który wyjaśnia, jak zabezpieczyć plik konfiguracyjny.
- Dla dodatkowego bezpieczeństwa w tym trybie, można rozważyć uwierzytelnienie
hosta w oparciu o dyrektywy konfiguracyjne
$cfg['Servers'][$i]['AllowDeny']['order'] i
$cfg['Servers'][$i]['AllowDeny']['rules'].
- Unlike cookie and http, does not require a user to log in when first loading
the phpMyAdmin site. This is by design but could allow any user to access
your installation. Use of some restriction method is suggested, perhaps a .htaccess file with the HTTP-AUTH directive or
disallowing incoming HTTP requests at one’s router or firewall will
suffice (both of which are beyond the scope of this manual but easily
searchable with Google).
uwierzytelnianie Swekey
The Swekey is a low cost authentication USB key that can be used in web
applications.
When Swekey authentication is activated, phpMyAdmin requires the users's
Swekey to be plugged before entering the login page (currently supported for
cookie authentication mode only). Swekey Authentication is disabled by
default.
To enable it, add the following line to config.inc.php:
$cfg['Servers'][$i]['auth_swekey_config'] = '/etc/swekey.conf';
You then have to create the swekey.conf file that will associate
each user with their Swekey Id. It is important to place this file outside
of your web server's document root (in the example, it is located in
/etc). A self documented sample file is provided in the
contrib directory. Feel free to use it with your own users'
information.
If you want to purchase a Swekey please visit http://phpmyadmin.net/auth_key
since this link provides funding for phpMyAdmin.
Konfiguracja
Warning for Mac users: PHP does not seem to like Mac end of lines character
("\r"). So ensure you choose the option that allows to
use the *nix end of line character ("\n") in your text
editor before saving a script you have modified.
Configuration note: Almost all configurable
data is placed in config.inc.php. If this file does not exist,
please refer to the Quick install section to create
one. This file only needs to contain the parameters you want to change from
their corresponding default value in libraries/config.default.php.
The parameters which relate to design (like colors) are placed in
themes/themename/layout.inc.php. You might also want to create
config.footer.inc.php and config.header.inc.php files to add
your site specific code to be included on start and end of each page.
- $cfg['PmaAbsoluteUri'] string
- Sets here the complete URL
(with full path) to your phpMyAdmin installation's directory.
E.g. http://www.your_web.net/path_to_your_phpMyAdmin_directory/.
Note also that the URL on some
web servers are case–sensitive. Don’t forget the trailing slash
at the end.
Starting with version 2.3.0, it is advisable to try leaving this blank. In
most cases phpMyAdmin automatically detects the proper setting. Users of
port forwarding will need to set PmaAbsoluteUri (more
info). A good test is to browse a table, edit a row and save it. There
should be an error message if phpMyAdmin is having trouble
auto–detecting the correct value. If you get an error that this must
be set or if the autodetect code fails to detect your path, please post a
bug report on our bug tracker so we can improve the code.
- $cfg['PmaNoRelation_DisableWarning'] boolean
- Starting with version 2.3.0 phpMyAdmin offers a lot of features to work with
master / foreign – tables (see $cfg['Servers'][$i]['pmadb']).
Jeśli próbowałeś ustawiać ten parametr i nadal nie działa, spójrz na stronę
"Struktura" bazy danych, gdzie chciałbyś ich użyć. Znajdziesz tam link,
który przeanalizuje, dlaczego funkcje te są nieaktywne.
Jeżeli nie chcesz ich używać, ustaw tę zmienną na TRUE, a komunikat
przestanie się pojawiać.
- $cfg['SuhosinDisableWarning'] boolean
- A warning is displayed on the main page if Suhosin is detected. You can set
this parameter to TRUE to stop this message from appearing.
- $cfg['McryptDisableWarning'] boolean
- Disable the default warning that is displayed if mcrypt is missing for
cookie authentication. You can set this parameter to TRUE to stop
this message from appearing.
- $cfg['TranslationWarningThreshold'] integer
- Show warning about incomplete translations on certain threshold.
- $cfg['AllowThirdPartyFraming'] boolean
- Setting this to true allows a page located on a different domain to
call phpMyAdmin inside a frame, and is a potential security hole allowing
cross-frame scripting attacks.
- $cfg['blowfish_secret'] string
- The "cookie" auth_type uses blowfish algorithm to encrypt the
password.
If you are using the "cookie" auth_type, enter here a random
passphrase of your choice. It will be used internally by the blowfish
algorithm: you won’t be prompted for this passphrase. There is no
maximum length for this secret.
Since version 3.1.0 phpMyAdmin can generate this on the fly, but it makes a
bit weaker security as this generated secret is stored in session and
furthermore it makes impossible to recall user name from cookie.
- $cfg['Servers'] array
- 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. In
./libraries/config.default.php, there is only one section for
server definition, however you can put as many as you need in
./config.inc.php, copy that block or needed parts (you don't have
to define all settings, just those you need to change).
- $cfg['Servers'][$i]['host'] string
- The hostname or IP address of your
$i-th MySQL-server. E.g. localhost.
- $cfg['Servers'][$i]['port'] string
- The port-number of your $i-th MySQL-server. Default is 3306 (leave
blank). If you use "localhost" as the hostname, MySQL ignores this
port number and connects with the socket, so if you want to connect to a
port different from the default port, use "127.0.0.1" or the real
hostname in $cfg['Servers'][$i]['host'].
- $cfg['Servers'][$i]['socket'] string
- Ścieżka do gniazda, którego należy użyć. Pozostawione puste oznacza wartość
domyślną.
To determine the correct socket, check your MySQL configuration or, using
the mysql command–line client, issue the status
command. Among the resulting information displayed will be the socket used.
- $cfg['Servers'][$i]['ssl'] boolean
- Whether to enable SSL for connection to MySQL server.
- $cfg['Servers'][$i]['connect_type'] string
- What type connection to use with the MySQL server. Your options are
'socket' and 'tcp'. It defaults to 'tcp' as that is nearly
guaranteed to be available on all MySQL servers, while sockets are not
supported on some platforms.
Aby użyć trybu gniazda, Twój serwer MySQL musi być na tej samej maszynie co
serwer www.
- $cfg['Servers'][$i]['extension'] string
- What php MySQL extension to use for the connection. Valid options are:
mysql : The classic MySQL extension.
mysqli : The improved MySQL extension. This extension became
available with PHP 5.0.0 and is the recommended way to connect to a server
running MySQL 4.1.x or newer.
- $cfg['Servers'][$i]['compress'] boolean
- Czy używać protokołu kompresji dla połączeń z serwerem MySQL, czy też nie
(opcja eksperymentalna).
-
$cfg['Servers'][$i]['controlhost']
string
- Permits to use an alternate host to hold the configuration storage data.
-
$cfg['Servers'][$i]['controluser']
string
$cfg['Servers'][$i]['controlpass']
string
- This special account is used for 2 distinct purposes: to make possible all
relational features (see $cfg['Servers'][$i]['pmadb']) and, for a MySQL
server running with --skip-show-database, to enable a multi-user
installation (HTTP or
cookie authentication mode).
When using HTTP or cookie
authentication modes (or 'config' authentication mode since phpMyAdmin
2.2.1), you need to supply the details of a MySQL account that has
SELECT privilege on the mysql.user (all columns except
"Password"), mysql.db (all columns) and
mysql.tables_priv (all columns except "Grantor" and
"Timestamp") tables. This account is used to check what
databases the user will see at login.
Please see the install section on "Using
authentication modes" for more information.
In phpMyAdmin versions before 2.2.5, those were called
"stduser/stdpass".
- $cfg['Servers'][$i]['auth_type'] string ['HTTP'|'http'|'cookie'|'config'|'signon']
- Whether config or cookie or HTTP or signon authentication should be used for this
server.
- 'config' authentication ($auth_type = 'config') is the
plain old way: username and password are stored in config.inc.php.
- 'cookie' authentication mode ($auth_type = 'cookie') as
introduced in 2.2.3 allows you to log in as any valid MySQL user with the
help of cookies. Username and password are stored in cookies during the
session and password is deleted when it ends. This can also allow you to log
in in arbitrary server if $cfg['AllowArbitraryServer'] enabled.
- 'HTTP' authentication (was
called 'advanced' in previous versions and can be written also as 'http')
($auth_type = 'HTTP') as introduced in 1.3.0 allows you to log in as
any valid MySQL user via HTTP-Auth.
- 'signon' authentication mode ($auth_type = 'signon') as
introduced in 2.10.0 allows you to log in from prepared PHP session data or
using supplied PHP script. This is useful for implementing single signon
from another application. Sample way how to seed session is in signon
example:
scripts/signon.php. There is also alternative example
using OpenID - scripts/openid.php and example for scripts based
solution - scripts/signon-script.php. You need to configure session name or script to be
executed and signon
URL to use this authentication method.
Please see the install section on "Using
authentication modes" for more information.
-
$cfg['Servers'][$i]['auth_http_realm']
string
-
When using auth_type = 'HTTP', this field allows to define a custom HTTP Basic Auth Realm which will
be displayed to the user. If not explicitly specified in your configuration,
a string combined of "phpMyAdmin " and either $cfg['Servers'][$i]['verbose'] or $cfg['Servers'][$i]['host']
will be used.
-
$cfg['Servers'][$i]['auth_swekey_config']
string
-
The name of the file containing Swekey ids and login
names for hardware authentication. Leave empty to deactivate this feature.
-
$cfg['Servers'][$i]['user'] string
$cfg['Servers'][$i]['password']
string
-
When using auth_type = 'config', this is the user/password-pair which
phpMyAdmin will use to connect to the MySQL server. This user/password pair
is not needed when HTTP or
cookie authentication is used and should be empty.
-
$cfg['Servers'][$i]['nopassword']
boolean
-
Allow attempt to log in without password when a login with password
fails. This can be used together with http authentication, when
authentication is done some other way and phpMyAdmin gets user name from
auth and uses empty password for connecting to MySQL. Password login is
still tried first, but as fallback, no password method is tried.
-
$cfg['Servers'][$i]['only_db'] string
or array
-
If set to a (an array of) database name(s), only this (these) database(s)
will be shown to the user. Since phpMyAdmin 2.2.1, this/these database(s)
name(s) may contain MySQL wildcards characters ("_" and
"%"): if you want to use literal instances of these characters,
escape them (I.E. use 'my\_db' and not 'my_db').
This setting is an efficient way to lower the server load since the latter
does not need to send MySQL requests to build the available database
list. But it does not replace the privileges rules
of the MySQL database server. If set, it just means only these
databases will be displayed but not that all other
databases can't be used.
An example of using more that one database:
$cfg['Servers'][$i]['only_db'] = array('db1', 'db2');
As of phpMyAdmin 2.5.5 the order inside the array is used for sorting the
databases in the left frame, so that you can individually arrange your
databases.
If you want to have certain databases at the top, but don't care about the
others, you do not need to specify all other databases. Use:
$cfg['Servers'][$i]['only_db'] = array('db3', 'db4', '*'); instead
to tell phpMyAdmin that it should display db3 and db4 on top, and the rest
in alphabetic order.
- $cfg['Servers'][$i]['hide_db'] string
- Regular expression for hiding some databases from unprivileged users. This
only hides them from listing, but a user is still able to access them
(using, for example, the SQL query area). To limit access, use the MySQL
privilege system.
For example, to hide all databases starting with the letter "a", use
$cfg['Servers'][$i]['hide_db'] = '^a';
and to hide both "db1" and "db2" use
$cfg['Servers'][$i]['hide_db'] = '^(db1|db2)$';
More information on regular expressions can be found in the PCRE
pattern syntax portion of the PHP reference manual.
- $cfg['Servers'][$i]['verbose'] string
- Only useful when using phpMyAdmin with multiple server entries. If set, this
string will be displayed instead of the hostname in the pull-down menu on
the main page. This can be useful if you want to show only certain databases
on your system, for example. For HTTP auth, all non-US-ASCII characters will
be stripped.
-
$cfg['Servers'][$i]['pmadb'] string
- The name of the database containing the phpMyAdmin configuration storage.
See the phpMyAdmin configuration storage
section in this document to see the benefits of this feature, and for a
quick way of creating this database and the needed tables.
If you are the only user of this phpMyAdmin installation, you can use your
current database to store those special tables; in this case, just put your
current database name in $cfg['Servers'][$i]['pmadb']. For a
multi-user installation, set this parameter to the name of your central
database containing the phpMyAdmin configuration storage.
-
$cfg['Servers'][$i]['bookmarktable']
string
- Since release 2.2.0 phpMyAdmin allows users to bookmark queries. This can be
useful for queries you often run.
To allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- wprowadzić nazwę tabeli do $cfg['Servers'][$i]['bookmarktable']
-
$cfg['Servers'][$i]['relation']
string
- Since release 2.2.4 you can describe, in a special 'relation' table, which
column is a key in another table (a foreign key). phpMyAdmin currently uses
this to
- stworzenia klikalnymi, gdy przeglądasz główną tabelę, wartości danych, które
wskazują na tabelę zewnętrzną;
- display in an optional tool-tip the "display column" when browsing
the master table, if you move the mouse to a column containing a foreign key
(use also the 'table_info' table);
(see
FAQ 6.7)
- in edit/insert mode, display a drop-down list of possible foreign keys (key
value and "display column" are shown)
(see FAQ
6.21)
- wyświetlenia linków na stronie z właściwościami tabeli, by sprawdzić
spójność powiązań (wskazanie brakujących kluczy zewnętrznych) dla każdego
opisanego klucza;
- in query-by-example, create automatic joins (see FAQ 6.6)
- enable you to get a PDF schema
of your database (also uses the table_coords table).
Klucze mogą być liczbowe lub znakowe.
To allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- umieścić nazwę tabeli relacji w $cfg['Servers'][$i]['relation']
- now as normal user open phpMyAdmin and for each one of your tables where you
want to use this feature, click "Structure/Relation view/" and
choose foreign columns.
Please note that in the current version, master_db must be the same
as foreign_db. Those columns have been put in future development of
the cross-db relations.
-
$cfg['Servers'][$i]['table_info']
string
-
Since release 2.3.0 you can describe, in a special 'table_info' table, which
column is to be displayed as a tool-tip when moving the cursor over the
corresponding key.
This configuration variable will hold the name of this special table. To
allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- put the table name in $cfg['Servers'][$i]['table_info'] (e.g.
'pma_table_info')
- then for each table where you want to use this feature, click
"Structure/Relation view/Choose column to display" to choose the
column.
Usage tip: Display column.
-
$cfg['Servers'][$i]['table_coords']
string
$cfg['Servers'][$i]['pdf_pages']
string
- Since release 2.3.0 you can have phpMyAdmin create PDF pages showing the relations between your
tables. To do this it needs two tables "pdf_pages" (storing
information about the available PDF pages) and "table_coords" (storing coordinates
where each table will be placed on a PDF schema output).
You must be using the "relation" feature.
To allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- put the correct table names in $cfg['Servers'][$i]['table_coords']
and $cfg['Servers'][$i]['pdf_pages']
Usage tips: PDF output.
-
$cfg['Servers'][$i]['column_info']
string
-
Od wersji 2.3.0 możesz przechowywać komentarze opisujące każdą kolumnę
dowolnej tabeli. Będzie to pokazane w "widoku do wydruku".
Starting with release 2.5.0, comments are consequently used on the table
property pages and table browse view, showing up as tool-tips above the
column name (properties page) or embedded within the header of table in
browse view. They can also be shown in a table dump. Please see the relevant
configuration directives later on.
Also new in release 2.5.0 is a MIME-transformation system which is also
based on the following table structure. See
Transformations for further information. To use the MIME-transformation
system, your column_info table has to have the three new columns 'mimetype',
'transformation', 'transformation_options'.
To allow the usage of this functionality:
-
$cfg['Servers'][$i]['history'] string
- Since release 2.5.0 you can store your SQL history, which means all queries you entered manually
into the phpMyAdmin interface. If you don't want to use a table-based
history, you can use the JavaScript-based history. Using that, all your
history items are deleted when closing the window.
Using $cfg['QueryHistoryMax'] you can specify an amount of
history items you want to have on hold. On every login, this list gets cut
to the maximum amount.
The query history is only available if JavaScript is enabled in your
browser.
To allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- put the table name in $cfg['Servers'][$i]['history']
(e.g. 'pma_history')
-
$cfg['Servers'][$i]['recent'] string
-
Since release 3.5.0 you can show recently used tables in the left navigation
frame. It helps you to jump across table directly, without the need to
select the database, and then select the table. Using $cfg['LeftRecentTable']
you can configure the maximum number of recent tables shown. When you select
a table from the list, it will jump to the page specified in $cfg['LeftDefaultTabTable'].
Without configuring the storage, you can still access the recently used
tables, but it will disappear after you logout.
To allow the usage of this functionality persistently:
- set up pmadb and the phpMyAdmin configuration storage
- put the table name in $cfg['Servers'][$i]['recent']
(e.g. 'pma_recent')
-
$cfg['Servers'][$i]['table_uiprefs']
string
-
Since release 3.5.0 phpMyAdmin can be configured to remember several things
(sorted column $cfg['RememberSorting'] , column order, and column
visibility from a database table) for browsing tables. Without configuring
the storage, these features still can be used, but the values will disappear
after you logout.
To allow the usage of these functionality persistently:
- set up pmadb and the phpMyAdmin configuration storage
- put the table name in $cfg['Servers'][$i]['table_uiprefs']
(e.g. 'pma_table_uiprefs')
-
$cfg['Servers'][$i]['tracking']
string
-
Since release 3.3.x a tracking mechanism is available. It helps you to
track every SQL command which
is executed by phpMyAdmin. The mechanism supports logging of data
manipulation and data definition statements. After enabling it you can
create versions of tables.
The creation of a version has two effects:
- phpMyAdmin saves a snapshot of the table, including structure and indexes.
- phpMyAdmin logs all commands which change the structure and/or data of the
table and links these commands with the version number.
Of course you can view the tracked changes. On the "Tracking" page a
complete report is available for every version. For the report you can use
filters, for example you can get a list of statements within a date range.
When you want to filter usernames you can enter * for all names or you enter
a list of names separated by ','. In addition you can export the (filtered)
report to a file or to a temporary database.
To allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- put the table name in $cfg['Servers'][$i]['tracking']
(e.g. 'pma_tracking')
-
$cfg['Servers'][$i]['tracking_version_auto_create']
boolean
-
Whether the tracking mechanism creates versions for tables and views
automatically. Default value is false.
If this is set to true and you create a table or view with
- CREATE TABLE ...
- CREATE VIEW ...
and no version exists for it, the mechanism will create a version for you
automatically.
-
$cfg['Servers'][$i]['tracking_default_statements']
string
-
Defines the list of statements the auto-creation uses for new
versions. Default value is
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
-
Whether a DROP VIEW IF EXISTS statement will be added as first line to the
log when creating a view. Default value is true.
-
$cfg['Servers'][$i]['tracking_add_drop_table']
boolean
-
Whether a DROP TABLE IF EXISTS statement will be added as first line to the
log when creating a table. Default value is true.
-
$cfg['Servers'][$i]['tracking_add_drop_database']
boolean
-
Whether a DROP DATABASE IF EXISTS statement will be added as first line to
the log when creating a database. Default value is true.
-
$cfg['Servers'][$i]['userconfig']
string
-
Since release 3.4.x phpMyAdmin allows users to set most preferences by
themselves and store them in the database.
If you don't allow for storing preferences in pmadb,
users can still personalize phpMyAdmin, but settings will be saved in
browser's local storage, or, it is is unavailable, until the end of session.
To allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- put the table name in $cfg['Servers'][$i]['userconfig']
-
$cfg['Servers'][$i]['designer_coords']
string
- Since release 2.10.0 a Designer interface is available; it permits to
visually manage the relations.
To allow the usage of this functionality:
- set up pmadb and the phpMyAdmin configuration storage
- put the table name in $cfg['Servers'][$i]['designer_coords']
(e.g. 'pma_designer_coords')
- $cfg['Servers'][$i]['MaxTableUiprefs']
integer
- Maximum number of rows saved in $cfg['Servers'][$i]['table_uiprefs']
table.
When tables are dropped or renamed, table_uiprefs may contain invalid data
(referring to tables which no longer exist).
We only keep this number of newest rows in table_uiprefs and automatically
delete older rows.
- $cfg['Servers'][$i]['verbose_check']
boolean
- Because release 2.5.0 introduced the new MIME-transformation support, the
column_info table got enhanced with three new columns. If the above variable
is set to TRUE (default) phpMyAdmin will check if you have the
latest table structure available. If not, it will emit a warning to the
superuser.
Możesz wyłączyć sprawdzanie, ustawiając zmienną na FALSE, co powinno
zaowocować poprawą wydajności.
Gdy jest pewne, że struktura tabeli jest aktualna, zalecane jest ustawienie
na FALSE.
- $cfg['Servers'][$i]['AllowRoot']
boolean
- Whether to allow root access. This is just a shortcut for the AllowDeny
rules below.
- $cfg['Servers'][$i]['AllowNoPassword']
boolean
- Whether to allow logins without a password. The default value of
false for this parameter prevents unintended access to a MySQL
server with was left with an empty password for root or on which an
anonymous (blank) user is defined.
-
$cfg['Servers'][$i]['AllowDeny']['order']
string
- If your rule order is empty, then IP
authorization is disabled.
If your rule order is set to 'deny,allow' then the system applies
all deny rules followed by allow rules. Access is allowed by default. Any
client which does not match a Deny command or does match an Allow command
will be allowed access to the server.
Jeśli jest ustawiony na 'allow,deny', system stosuje wszystkie
reguły pozytywne przed regułami negatywnymi. Dostęp jest domyślnie
zabroniony. Dowolny klient, które nie pasuje do żadnego polecenia Allow lub
pasuje do jakiegoś polecenia Deny, nie zyska dostępu do serwera.
If your rule order is set to 'explicit', authorization is performed in a
similar fashion to rule order 'deny,allow', with the added restriction that
your host/username combination must be listed in the allow
rules, and not listed in the deny rules. This is the most
secure means of using Allow/Deny rules, and was available in Apache by
specifying allow and deny rules without setting any order.
Please also see $cfg['TrustedProxies'] for
detecting IP address behind proxies.
-
$cfg['Servers'][$i]['AllowDeny']['rules']
array of strings
- Ogólny format reguł jest następujący:
<'allow' | 'deny'> <username> [from] <ipmask>
Aby reguła pasowała do wszystkich użytkowników, można w polu
nazwa-użytkownika jako symbolu wieloznacznego użyć znaku
'%'.
There are a few shortcuts you can use in the ipmask field as well
(please note that those containing SERVER_ADDRESS might not be available on
all webservers):
'all' -> 0.0.0.0/0
'localhost' -> 127.0.0.1/8
'localnetA' -> SERVER_ADDRESS/8
'localnetB' -> SERVER_ADDRESS/16
'localnetC' -> SERVER_ADDRESS/24
Pusta lista reguł jest równoważna albo użyciu 'allow % from all',
jeśli Twój porządek reguł jest ustawiony na 'deny,allow', albo
'deny % from all', jeśli Twój porządek reguł ustawiony jest na
'allow,deny' lub 'explicit'.
For the IP matching system, the
following work:
xxx.xxx.xxx.xxx (an exact IP
address)
xxx.xxx.xxx.[yyy-zzz] (an IP
address range)
xxx.xxx.xxx.xxx/nn (CIDR, Classless Inter-Domain Routing type IP addresses)
To natomiast nie zadziała:
xxx.xxx.xxx.xx[yyy-zzz] (partial IP address range)
Also IPv6 addresses are not supported.
- $cfg['Servers'][$i]['DisableIS']
boolean
- Disable using INFORMATION_SCHEMA to retrieve information (use
SHOW commands instead), because of speed issues when many databases
are present. Currently used in some parts of the code, more to come.
- $cfg['Servers'][$i]['ShowDatabasesCommand']
string
- On a server with a huge number of databases, the default SHOW
DATABASES command used to fetch the name of available databases will
probably be too slow, so it can be replaced by faster commands (see
libraries/config.default.php for examples).
- $cfg['Servers'][$i]['CountTables']
boolean
- Whether to count the number of tables for each database when preparing the
list of databases for the navigation frame.
- $cfg['Servers'][$i]['SignonScript']
string
- Name of PHP script to be sourced and executed to obtain login
credentials. This is alternative approach to session based single
signon. The script needs to provide function
get_login_credentials which returns list of username and
password, accepting single parameter of existing username (can be empty).
See scripts/signon-script.php for an example.
- $cfg['Servers'][$i]['SignonSession']
string
- Name of session which will be used for signon authentication method. You
should use something different than
phpMyAdmin, because this is
session which phpMyAdmin uses internally. Takes effect only if SignonScript is not
configured.
- $cfg['Servers'][$i]['SignonURL']
string
- URL where user will be redirected to log in for signon authentication
method. Should be absolute including protocol.
- $cfg['Servers'][$i]['LogoutURL']
string
- URL where user will be redirected after logout (doesn't affect config
authentication method). Should be absolute including protocol.
- $cfg['ServerDefault'] integer
- Jeżeli masz skonfigurowany więcej niż jeden serwer, możesz ustawić
$cfg['ServerDefault'] na jeden z nich, by połączyć się
automatycznie z tym serwerem przy starcie phpMyAdmina, albo na 0, żeby
dostać listę serwerów bez logowania się.
Jeżeli tylko jeden serwer jest skonfigurowany,
$cfg['ServerDefault'] MUSI wskazywać na ten serwer.
- $cfg['AjaxEnable'] boolean
- Defines whether to refresh only parts of certain pages using Ajax
techniques. Applies only where a non-Ajax behavior is possible; for example,
the Designer feature is Ajax-only so this directive does not apply to it.
- $cfg['VersionCheck'] boolean
- Enables check for latest versions using javascript on main phpMyAdmin page.
- $cfg['MaxDbList'] integer
- The maximum number of database names to be displayed in the navigation frame
and the database list.
- $cfg['MaxTableList'] integer
- The maximum number of table names to be displayed in the main panel's list
(except on the Export page). This limit is also enforced in the navigation
panel when in Light mode.
- $cfg['ShowHint'] boolean
- Whether or not to show hints (for example, hints when hovering over table
headers).
- $cfg['MaxCharactersInDisplayedSQL'] integer
- The maximum number of characters when a SQL query is displayed. The default
limit of 1000 should be correct to avoid the display of tons of hexadecimal
codes that represent BLOBs, but some users have real SQL queries that are
longer than 1000 characters. Also, if a query's length exceeds this limit,
this query is not saved in the history.
- $cfg['OBGzip'] string/boolean
- Defines whether to use GZip output buffering for increased speed in HTTP transfers.
Set to true/false for enabling/disabling. When set to 'auto' (string),
phpMyAdmin tries to enable output buffering and will automatically disable
it if your browser has some problems with buffering. IE6 with a certain
patch is known to cause data corruption when having enabled buffering.
- $cfg['PersistentConnections'] boolean
- Whether persistent
connections should be used or not. Works with following extensions:
- $cfg['ForceSSL'] boolean
- Whether to force using https while accessing phpMyAdmin.
- $cfg['ExecTimeLimit'] integer [number of seconds]
- Liczba sekund, w czasie których może działać skrypt. Jeżeli jest ustawione
na na zero, żadne ograniczenia nie są nakładane.
This setting is used while importing/exporting dump files and in the
Synchronize feature but has no effect when PHP is running in safe mode.
- $cfg['SessionSavePath'] string
- Path for storing session data (session_save_path PHP
parameter).
- $cfg['MemoryLimit'] string [number of bytes]
- Set the number of bytes a script is allowed to allocate. If set to zero, no
limit is imposed.
This setting is used while importing/exporting dump files and at some other
places in phpMyAdmin so you definitely don't want to put here a too low
value. It has no effect when PHP is running in safe mode.
You can also use any string as in php.ini, eg. '16M'. Ensure you don't omit
the suffix (16 means 16 bytes!)
- $cfg['SkipLockedTables'] boolean
- Mark used tables and make it possible to show databases with locked tables
(since MySQL 3.23.30).
- $cfg['ShowSQL'] boolean
- Defines whether SQL queries
generated by phpMyAdmin should be displayed or not.
- $cfg['RetainQueryBox'] boolean
- Defines whether the SQL query
box should be kept displayed after its submission.
- $cfg['AllowUserDropDatabase'] boolean
- Defines whether normal users (non-administrator) are allowed to delete their
own database or not. If set as FALSE, the link "Drop Database"
will not be shown, and even a "DROP DATABASE mydatabase" will be
rejected. Quite practical for ISP's with many customers.
Please note that this limitation of SQL queries is not as strict as when
using MySQL privileges. This is due to nature of SQL queries which might be
quite complicated. So this choice should be viewed as help to avoid
accidental dropping rather than strict privilege limitation.
- $cfg['Confirm'] boolean
- Whether a warning ("Are your really sure...") should be displayed
when you're about to lose data.
- $cfg['LoginCookieRecall'] boolean
- Określa, czy poprzedni login powinien być ponownie przywołany w trybie
uwierzytelniania cookie, czy też nie.
This is automatically disabled if you do not have configured $cfg['blowfish_secret'].
- $cfg['LoginCookieValidity'] integer [number of seconds]
- Define how long is login cookie valid. Please note that php configuration
option session.gc_maxlifetime
might limit session validity and if session is lost, login cookie is also
invalidated. So it is a good idea to set
session.gc_maxlifetime
not lower than the value of $cfg['LoginCookieValidity'].
- $cfg['LoginCookieStore'] integer [number of seconds]
- Define how long login cookie should be stored in browser. Default 0 means
that it will be kept for existing session. This is recommended for not
trusted environments.
- $cfg['LoginCookieDeleteAll'] boolean
- If enabled (default), logout deletes cookies for all servers, otherwise only
for current one. Setting this to false makes it easy to forget to log out
from other server, when you are using more of them.
- $cfg['UseDbSearch'] boolean
- Określa, czy "szukanie tekstu wewnątrz bazy danych" jest włączone, czy też
nie.
- $cfg['IgnoreMultiSubmitErrors'] boolean
- Define whether phpMyAdmin will continue executing a multi-query statement if
one of the queries fails. Default is to abort execution.
- $cfg['VerboseMultiSubmit'] boolean
- Define whether phpMyAdmin will output the results of each query of a
multi-query statement embedded into the SQL output as inline comments. Defaults to TRUE.
-
$cfg['AllowArbitraryServer']
boolean
- If enabled, allows you to log in to arbitrary servers using cookie auth and
permits to specify servers of your choice in the Synchronize dialog.
NOTE: Please use this carefully, as this may allow users access to
MySQL servers behind the firewall where your HTTP server is placed.
- $cfg['Error_Handler']['display'] boolean
- Whether to display errors from PHP or not.
- $cfg['Error_Handler']['gather'] boolean
- Whether to gather errors from PHP or not.
- $cfg['LeftFrameLight'] boolean
- Defines whether to use a select-based menu and display only the current
tables in the left frame (smaller page). Only in Non-Lightmode you can use
the feature to display nested folders using $cfg['LeftFrameTableSeparator']
- $cfg['LeftFrameDBTree'] boolean
- Defines whether to display the names of databases (in the selector) using a
tree, see also $cfg['LeftFrameDBSeparator'].
- $cfg['LeftFrameDBSeparator'] string or array
- The string used to separate the parts of the database name when showing them
in a tree. Alternatively you can specify more strings in an array and all of
them will be used as a separator.
- $cfg['LeftFrameTableSeparator'] string
- Defines a string to be used to nest table spaces. Defaults to '__'. This
means if you have tables like 'first__second__third' this will be shown as a
three-level hierarchy like: first > second > third. If set to FALSE
or empty, the feature is disabled. NOTE: You should not use this separator
at the beginning or end of a table name or multiple times after another
without any other characters in between.
- $cfg['LeftFrameTableLevel'] string
- Defines how many sublevels should be displayed when splitting up tables by
the above separator.
- $cfg['LeftRecentTable'] integer
- The maximum number of recently used tables shown in the left navigation
frame. Set this to 0 (zero) to disable the listing of recent tables.
- $cfg['ShowTooltip'] boolean
- Określa, czy komentarz tabeli ma być wyświetlany jako etykieta narzędzia w
lewej ramce, czy też nie.
- $cfg['ShowTooltipAliasDB'] boolean
- If tool-tips are enabled and a DB comment is set, this will flip the comment
and the real name. That means that if you have a table called 'user0001' and
add the comment 'MyName' on it, you will see the name 'MyName' used
consequently in the left frame and the tool-tip shows the real name of the
DB.
- $cfg['ShowTooltipAliasTB'] boolean/string
- Same as $cfg['ShowTooltipAliasDB'], except this works for
table names. When setting this to 'nested', the Alias of the Tablename is
only used to split/nest the tables according to the $cfg['LeftFrameTableSeparator'] directive. So only
the folder is called like the Alias, the tablename itself stays the real
tablename.
- $cfg['LeftDisplayLogo'] boolean
- Defines whether or not to display the phpMyAdmin logo at the top of the left
frame. Defaults to TRUE.
- $cfg['LeftLogoLink'] string
- Enter URL where logo in the navigation frame will point to. For use
especially with self made theme which changes this. The default value for
this is main.php.
- $cfg['LeftLogoLinkWindow'] string
- Whether to open the linked page in the main window (main) or in a
new one (new). Note: use new if you are linking to
phpmyadmin.net.
- $cfg['LeftDisplayTableFilterMinimum'] integer
- Defines the minimum number of tables to display a JavaScript filter box
above the list of tables in the left frame. Defaults to 30. To
disable the filter completely some high number can he used (e.g. 9999)
- $cfg['LeftDisplayServers'] boolean
- Defines whether or not to display a server choice at the top of the left
frame. Defaults to FALSE.
- $cfg['DisplayServersList'] boolean
- Defines whether to display this server choice as links instead of in a
drop-down. Defaults to FALSE (drop-down).
- $cfg['DisplayDatabasesList'] boolean or text
- Defines whether to display database choice in light navigation frame as
links instead of in a drop-down. Defaults to 'auto' - on main page list is
shown, when database is selected, only drop down is displayed.
- $cfg['LeftDefaultTabTable'] string
- Defines the tab displayed by default when clicking the small icon next to
each table name in the navigation panel. Possible values:
"tbl_structure.php", "tbl_sql.php",
"tbl_select.php", "tbl_change.php" or
"sql.php".
- $cfg['ShowStats'] boolean
- Defines whether or not to display space usage and statistics about databases
and tables.
Warto zauważyć, że statystyki wymagają MySQL-a w wersji przynajmniej 3.23.3
oraz że, jak dotąd, MySQL nie podaje takich informacji dla tabel Berkeley
DB.
- $cfg['ShowServerInfo'] boolean
- Defines whether to display detailed server information on main page. You
can additionally hide more information by using $cfg['Servers'][$i]['verbose'].
- $cfg['ShowPhpInfo'] boolean
$cfg['ShowChgPassword'] boolean
$cfg['ShowCreateDb'] boolean
- Defines whether to display the "PHP information" and "Change
password " links and form for creating database or not at the starting
main (right) frame. This setting does not check MySQL commands entered
directly.
Please note that to block the usage of phpinfo() in scripts, you have to put
this in your php.ini:
disable_functions = phpinfo()
Proszę również zauważyć, że aktywacja linku do "Zmiany hasła" nie ma żadnych
skutków przy trybie uwierzytelniania "config": z powodu hasła ustalonego w
pliku konfiguracyjnym, użytkownikowi końcowemu nie można pozwolić na jego
zmianę.
- $cfg['SuggestDBName'] boolean
- Określa, czy sugerować nazwę bazy danych w formularzu "Utworzenie bazy
danych", czy też pozostawić pole tekstowe puste.
- $cfg['NavigationBarIconic'] string
- Defines whether navigation bar buttons and the right panel top menu contain
text or symbols only. A value of TRUE displays icons, FALSE displays text
and 'both' displays both icons and text.
- $cfg['ShowAll'] boolean
- Defines whether a user should be displayed a "show all (rows)"
button in browse mode or not.
- $cfg['MaxRows'] integer
- Number of rows displayed when browsing a result set and no LIMIT clause is
used. If the result set contains more rows, "Previous" and
"Next" links will be shown.
- $cfg['Order'] string [DESC|ASC|SMART]
- Defines whether columns are displayed in ascending (ASC) order, in
descending (DESC) order or in a "smart" (SMART)
order - I.E. descending order for columns of type TIME, DATE, DATETIME and
TIMESTAMP, ascending order else- by default.
- $cfg['DisplayBinaryAsHex'] boolean
- Defines whether the "Show binary contents as HEX" browse option is
ticked by default.
- $cfg['ProtectBinary'] boolean or string
- Defines whether BLOB or BINARY columns are protected from
editing when browsing a table's content. Valid values are:
- FALSE to allow editing of all columns;
- 'blob' to allow editing of all columns except BLOBS;
- 'all' to disallow editing of all BINARY or BLOB
columns.
- $cfg['ShowFunctionFields'] boolean
- Defines whether or not MySQL functions fields should be initially displayed
in edit/insert mode. Since version 2.10, the user can toggle this setting
from the interface.
- $cfg['ShowFieldTypesInDataEditView'] boolean
- Defines whether or not type fields should be initially displayed in
edit/insert mode. The user can toggle this setting from the interface.
- $cfg['CharEditing'] string
- Defines which type of editing controls should be used for CHAR and VARCHAR
columns. Possible values are:
- input - this allows to limit size of text to size of columns in MySQL, but
has problems with newlines in columns
- textarea - no problems with newlines in columns, but also no length
limitations
Domyślnym jest stare zachowanie, a więc input.
- $cfg['MinSizeForInputField'] integer
- Defines the minimum size for input fields generated for CHAR and VARCHAR
columns.
- $cfg['MaxSizeForInputField'] integer
- Defines the maximum size for input fields generated for CHAR and VARCHAR
columns.
- $cfg['InsertRows'] integer
- Defines the maximum number of concurrent entries for the Insert page.
- $cfg['ForeignKeyMaxLimit'] integer
- If there are fewer items than this in the set of foreign keys, then a
drop-down box of foreign keys is presented, in the style described by the $cfg['ForeignKeyDropdownOrder'] setting.
- $cfg['ForeignKeyDropdownOrder'] array
- For the foreign key drop-down fields, there are several methods of display,
offering both the key and value data. The contents of the array should be
one or both of the following strings: 'content-id',
'id-content'.
- $cfg['ZipDump'] boolean
$cfg['GZipDump'] boolean
$cfg['BZipDump'] boolean
- Defines whether to allow the use of zip/GZip/BZip2 compression when creating
a dump file
- $cfg['CompressOnFly'] boolean
- Defines whether to allow on the fly compression for GZip/BZip2 compressed
exports. This doesn't affect smaller dumps and allows users to create larger
dumps that won't otherwise fit in memory due to php memory limit. Produced
files contain more GZip/BZip2 headers, but all normal programs handle this
correctly.
- $cfg['LightTabs'] boolean
- If set to TRUE, use less graphically intense tabs on the top of the
mainframe.
- $cfg['PropertiesIconic'] string
- If set to TRUE, will display icons instead of text for db and table
properties links (like 'Browse', 'Select', 'Insert', ...).
Can be set to 'both' if you want icons AND text.
When set to FALSE, will only show text.
- $cfg['PropertiesNumColumns'] integer
- How many columns will be utilized to display the tables on the database
property view? Default is 1 column. When setting this to a value larger than
1, the type of the database will be omitted for more display space.
- $cfg['DefaultTabServer'] string
- Defines the tab displayed by default on server view. Possible values:
"main.php" (recommended for multi-user setups),
"server_databases.php", "server_status.php",
"server_variables.php", "server_privileges.php" or
"server_processlist.php".
- $cfg['DefaultTabDatabase'] string
- Defines the tab displayed by default on database view. Possible values:
"db_structure.php", "db_sql.php" or
"db_search.php".
- $cfg['DefaultTabTable'] string
- Defines the tab displayed by default on table view. Possible values:
"tbl_structure.php", "tbl_sql.php",
"tbl_select.php", "tbl_change.php" or
"sql.php".
- $cfg['MySQLManualBase'] string
- If set to an URL which points
to the MySQL documentation (type depends on $cfg['MySQLManualType']), appropriate help links are
generated.
See MySQL Documentation page for
more information about MySQL manuals and their types.
- $cfg['MySQLManualType'] string
- Typ dokumentacji MySQL-a:
- viewable - "viewable online", current one used on MySQL website
- searchable - "Przeszukiwalny, z komentarzami użytkowników"
- chapters - "HTML, jedna strona na rozdział"
- big - "HTML, wszystko na jednej stronie"
- none - nie pokazuje żadnych linków do dokumentacji
- $cfg['DefaultLang'] string
- Określa domyślny język, jakiego należy użyć, jeżeli nie został określony ani
przez przeglądarkę, ani użytkownika.
The corresponding language file needs to be in
locale/code/LC_MESSAGES/phpmyadmin.mo.
- $cfg['DefaultConnectionCollation'] string
- Defines the default connection collation to use, if not user-defined.
See the MySQL
documentation for list of possible values. This setting is ignored when
connected to Drizzle server.
- $cfg['Lang'] string
- Force language to use.
The corresponding language file needs to be in
locale/code/LC_MESSAGES/phpmyadmin.mo.
- $cfg['FilterLanguages'] string
- Limit list of available languages to those matching the given regular
expression. For example if you want only Czech and English, you should set
filter to
'^(cs|en)'.
- $cfg['RecodingEngine'] string
- You can select here which functions will be used for character set
conversion. Possible values are:
- auto - automatycznie użyj dostępnej funkcji (najpierw sprawdzana jest iconv,
później recode)
- iconv - użyj funkcji iconv lub libiconv
- recode - użyj funkcji recode_string
- none - disable encoding conversion
Domyślną wartością jest auto.
-
Enabled charset conversion activates a pull-down menu in the Export and
Import pages, to choose the character set when exporting a file. The default
value in this menu comes from $cfg['Export']['charset'] and
$cfg['Import']['charset'].
- Specify some parameters for iconv used in charset conversion. See iconv
documentation for details. By default
//TRANSLIT is used,
so that invalid characters will be transliterated.
- $cfg['AvailableCharsets'] array
- Dostępne systemy kodowania znaków dla konwersji MySQL. Możesz dodać tutaj
swoje własne (dowolne obsługiwane przez recode/iconv) lub usunąć te, których
nie używasz. Systemy kodowania będą pokazane w tej samej kolejności, w
jakiej zostały tu umieszczone; jeśli więc często używasz niektórych z nich,
przenieś je na górę.
- $cfg['TrustedProxies'] array
- Lists proxies and HTTP headers which are trusted for IP Allow/Deny. This list is by default
empty, you need to fill in some trusted proxy servers if you want to use
rules for IP addresses behind proxy.
The following example specifies that phpMyAdmin should trust a
HTTP_X_FORWARDED_FOR (X-Forwarded-For) header coming from the proxy
1.2.3.4:
$cfg['TrustedProxies'] =
array('1.2.3.4' => 'HTTP_X_FORWARDED_FOR');
The $cfg['Servers'][$i]['AllowDeny']['rules'] directive uses the client's IP
address as usual.
- $cfg['GD2Available'] string
- Określa, czy GD >= 2 jest dostępny. Jeśli tak, może zostać użyty do
transformacji MIME.
Możliwymi wartościami są:
- auto - automatically detect
- yes - funkcje GD 2 mogą być użyte
- no - GD 2 function cannot be used
Domyślną wartością jest auto.
- $cfg['CheckConfigurationPermissions'] boolean
-
We normally check the permissions on the configuration file to ensure it's
not world writable. However, phpMyAdmin could be installed on a NTFS
filesystem mounted on a non-Windows server, in which case the permissions
seems wrong but in fact cannot be detected. In this case a sysadmin would
set this parameter to FALSE. Default is TRUE.
- $cfg['LinkLengthLimit'] integer
-
Limit for length of URL in links. When length would be above this limit, it
is replaced by form with button. This is required as some web servers (IIS)
have problems with long URLs. Default is
1000.
- $cfg['DisableMultiTableMaintenance'] boolean
-
In the database Structure page, it's possible to mark some tables then
choose an operation like optimizing for many tables. This can slow down a
server; therefore, setting this to
true prevents this kind of
multiple maintenance operation. Default is false.
- $cfg['NaviWidth'] integer
- Navi frame width in pixels. See themes/themename/layout.inc.php.
- $cfg['NaviBackground'] string [CSS
color for background]
$cfg['MainBackground'] string [CSS
color for background]
- The background styles used for both the frames. See
themes/themename/layout.inc.php.
- $cfg['NaviPointerBackground'] string [CSS color for background]
$cfg['NaviPointerColor'] string [CSS
color]
- The style used for the pointer in the navi frame. See
themes/themename/layout.inc.php.
- $cfg['LeftPointerEnable'] boolean
- A value of TRUE activates the navi pointer (when LeftFrameLight is
FALSE).
- $cfg['Border'] integer
- The size of a table's border. See themes/themename/layout.inc.php.
- $cfg['ThBackground'] string [CSS color for background]
$cfg['ThColor'] string [CSS color]
- The style used for table headers. See
themes/themename/layout.inc.php.
- $cfg['BgOne'] string [CSS color]
- The color (HTML) #1 for table rows. See
themes/themename/layout.inc.php.
- $cfg['BgTwo'] string [CSS color]
- The color (HTML) #2 for table rows. See
themes/themename/layout.inc.php.
- $cfg['BrowsePointerBackground']
string [CSS color]
$cfg['BrowsePointerColor'] string
[CSS color]
$cfg['BrowseMarkerBackground']
string [CSS color]
$cfg['BrowseMarkerColor'] string
[CSS color]
- The colors (HTML) uses for the pointer and the marker in browse mode.
The former feature highlights the row over which your mouse is passing and
the latter lets you visually mark/unmark rows by clicking on
them. Highlighting / marking a column is done by hovering over / clicking
the column's header (outside of the text).
See themes/themename/layout.inc.php.
- $cfg['FontFamily'] string
- You put here a valid CSS font family value, for example arial,
sans-serif.
See themes/themename/layout.inc.php.
- $cfg['FontFamilyFixed'] string
- You put here a valid CSS font family value, for example
monospace. This one is used in textarea.
See themes/themename/layout.inc.php.
- $cfg['BrowsePointerEnable'] boolean
- Whether to activate the browse pointer or not.
- $cfg['BrowseMarkerEnable'] boolean
- Whether to activate the browse marker or not.
- $cfg['TextareaCols'] integer
$cfg['TextareaRows'] integer
$cfg['CharTextareaCols'] integer
$cfg['CharTextareaRows'] integer
- Liczba kolumn i wierszy w obszarach tekstowych (textarea).
This value will be emphasized (*2) for SQL query textareas and (*1.25) for SQL textareas inside the query window.
The Char* values are used for CHAR and VARCHAR editing (if configured via $cfg['CharEditing']).
- $cfg['LongtextDoubleTextarea']
boolean
- Defines whether textarea for LONGTEXT columns should have double size.
- $cfg['TextareaAutoSelect'] boolean
- Określa, czy cały obszar tekstowy pola zapytania będzie zaznaczony przy
kliknięciu.
- $cfg['LimitChars'] integer
- Maximum number of characters shown in any non-numeric field on browse view.
Can be turned off by a toggle button on the browse page.
- $cfg['RowActionLinks'] string
- Defines the place where table row links (Edit, Copy, Delete) would be put
when tables contents are displayed (you may have them displayed at the left
side, right side, both sides or nowhere). "left" and
"right" are parsed as "top" and "bottom" with
vertical display mode.
- $cfg['DefaultDisplay'] string
- There are 3 display modes: horizontal, horizontalflipped and vertical.
Define which one is displayed by default. The first mode displays each row
on a horizontal line, the second rotates the headers by 90 degrees, so you
can use descriptive headers even though columns only contain small values
and still print them out. The vertical mode sorts each row on a vertical
lineup.
- $cfg['RememberSorting'] boolean
- If enabled, remember the sorting of each table when browsing them.
-
The HeaderFlipType can be set to 'auto', 'css' or 'fake'. When using 'css'
the rotation of the header for horizontalflipped is done via CSS. The CSS
transformation currently works only in Internet Explorer.If set to 'fake'
PHP does the transformation for you, but of course this does not look as
good as CSS. The 'auto' option enables CSS transformation when browser
supports it and use PHP based one otherwise.
- By setting the corresponding variable to TRUE you can enable the
display of column comments in Browse or Property display. In browse mode,
the comments are shown inside the header. In property mode, comments are
displayed using a CSS-formatted dashed-line below the name of the
column. The comment is shown as a tool-tip for that column.
- $cfg['SQLQuery']['Edit'] boolean
- Whether to display an edit link to change a query in any SQL Query box.
- $cfg['SQLQuery']['Explain'] boolean
- Whether to display a link to explain a SELECT query in any SQL Query box.
- $cfg['SQLQuery']['ShowAsPHP'] boolean
- Whether to display a link to wrap a query in PHP code in any SQL Query box.
- $cfg['SQLQuery']['Validate'] boolean
- Whether to display a link to validate a query in any SQL Query box. See
also $cfg_SQLValidator.
- $cfg['SQLQuery']['Refresh'] boolean
- Whether to display a link to refresh a query in any SQL Query box.
- $cfg['UploadDir'] string
-
The name of the directory where SQL files have been uploaded by other means than phpMyAdmin
(for example, ftp). Those files are available under a drop-down box when
you click the database or table name, then the Import tab.
If you want different directory for each user, %u will be replaced with
username.
Please note that the file names must have the suffix ".sql" (or
".sql.bz2" or ".sql.gz" if support for compressed
formats is enabled).
This feature is useful when your file is too big to be uploaded via HTTP, or when file uploads are
disabled in PHP.
Proszę zauważyć, że jeżeli PHP jest uruchomiony w trybie bezpiecznym,
właścicielem tego katalogu musi być ten sam użytkownik, który jest
właścicielem skryptów phpMyAdmina.
See also FAQ 1.16 for alternatives.
- $cfg['SaveDir'] string
-
The name of the directory where dumps can be saved.
If you want different directory for each user, %u will be replaced with
username.
Please note that the directory must exist and has to be writable for the
user running webserver.
Proszę zauważyć, że jeżeli PHP jest uruchomiony w trybie bezpiecznym,
właścicielem tego katalogu musi być ten sam użytkownik, który jest
właścicielem skryptów phpMyAdmina.
- $cfg['TempDir'] string
-
The name of the directory where temporary files can be stored.
This is needed for importing ESRI Shapefiles, see FAQ 6.30 and to work around
limitations of open_basedir for uploaded files, see FAQ
1.11.
If the directory where phpMyAdmin is installed is subject to an
open_basedir restriction, you need to create a temporary directory
in some directory accessible by the web server. However for security
reasons, this directory should be outside the tree published by
webserver. If you cannot avoid having this directory published by webserver,
place at least an empty index.html file there, so that directory
listing is not possible.
This directory should have as strict permissions as possible as the only
user required to access this directory is the one who runs the webserver. If
you have root privileges, simply make this user owner of this directory and
make it accessible only by it:
chown www-data:www-data tmp
chmod 700 tmp
If you cannot change owner of the directory, you can achieve a similar setup
using ACL:
chmod 700 tmp
setfacl -m "g:www-data:rwx" tmp
setfacl -d -m "g:www-data:rwx" tmp
If neither of above works for you, you can still make the directory
chmod 777, but it might impose risk of other users on system
reading and writing data in this directory.
- $cfg['Export'] array
-
In this array are defined default parameters for export, names of items are
similar to texts seen on export page, so you can easily identify what they
mean.
- $cfg['Export']['method'] string
-
Defines how the export form is displayed when it loads. Valid values are:
- quick to display the minimum number of options to configure
- custom to display every available option to configure
- custom-no-form same as custom but does not display the
option of using quick export
- $cfg['Import'] array
-
In this array are defined default parameters for import, names of items are
similar to texts seen on import page, so you can easily identify what they
mean.
- $cfg['SaveCellsAtOnce'] boolean
-
Defines whether or not to save all edited cells at once in browse-mode.
- $cfg['ShowDisplayDirection'] boolean
-
Defines whether or not type display direction option is shown when browsing
a table.
- $cfg['RepeatCells'] integer
-
Powtórz nagłówki co X komórek. Wartość 0 powoduje dezaktywację.
- $cfg['EditInWindow'] boolean
$cfg['QueryWindowWidth'] integer
$cfg['QueryWindowHeight'] integer
$cfg['QueryHistoryDB'] boolean
$cfg['QueryWindowDefTab'] string
$cfg['QueryHistoryMax'] integer
-
All those variables affect the query window feature. A SQL link or icon is always
displayed on the left panel. If JavaScript is enabled in your browser, a
click on this opens a distinct query window, which is a direct interface to
enter SQL queries. Otherwise,
the right panel changes to display a query box.
The size of this query window can be customized with
$cfg['QueryWindowWidth'] and $cfg['QueryWindowHeight'] -
both integers for the size in pixels. Note that normally, those parameters
will be modified in layout.inc.php for the theme you are using.
If $cfg['EditInWindow'] is set to true, a click on [Edit] from the
results page (in the "Showing Rows" section) opens the query
window and puts the current query inside it. If set to false, clicking on
the link puts the SQL query
in the right panel's query box.
Jeśli masz przeglądarkę z obsługą JavaScriptu, użycie JavaScriptowego okna
zapytań jest zalecane. Używane są proste funkcje by wymienić zaledwie kilka
zmiennych, więc większość przeglądarek czwartej generacji powinna móc
skorzystać z tej opcji. Aktualnie jest tylko testowana z Internet
Explorerem 6 i Mozillą 1.x.
If $cfg['QueryHistoryDB'] is set to TRUE, all your Queries
are logged to a table, which has to be created by you (see $cfg['Servers'][$i]['history']). If
set to FALSE, all your queries will be appended to the form, but only as
long as your window is opened they remain saved.
When using the JavaScript based query window, it will always get updated
when you click on a new table/db to browse and will focus if you click on
"Edit SQL" after using a
query. You can suppress updating the query window by checking the box "Do
not overwrite this query from outside the window" below the query
textarea. Then you can browse tables/databases in the background without
losing the contents of the textarea, so this is especially useful when
composing a query with tables you first have to look in. The checkbox will
get automatically checked whenever you change the contents of the
textarea. Please uncheck the button whenever you definitely want the query
window to get updated even though you have made alterations.
If $cfg['QueryHistoryDB'] is set to TRUE you can specify
the amount of saved history items using $cfg['QueryHistoryMax'].
The query window also has a custom tabbed look to group the features. Using
the variable $cfg['QueryWindowDefTab'] you can specify the default
tab to be used when opening the query window. It can be set to either 'sql',
'files', 'history' or 'full'.
- $cfg['BrowseMIME'] boolean
- Włącza transformacje MIME.
- $cfg['MaxExactCount'] integer
- For InnoDB tables, determines for how large tables phpMyAdmin should get the
exact row count using
SELECT COUNT. If the approximate row
count as returned by SHOW TABLE STATUS is smaller than this
value, SELECT COUNT will be used, otherwise the approximate
count will be used.
- $cfg['MaxExactCountViews'] integer
- For VIEWs, since obtaining the exact count could have an impact on
performance, this value is the maximum to be displayed, using a
SELECT
COUNT ... LIMIT. Setting this to 0 bypasses any row counting.
- $cfg['NaturalOrder'] boolean
- Sorts database and table names according to natural order (for example, t1,
t2, t10). Currently implemented in the left panel (Light mode) and in
Database view, for the table list.
- If set to 'closed', the visual sliders are initially in a closed
state. A value of 'open' does the reverse. To completely disable
all visual sliders, use '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
libraries/config/user_preferences.forms.php.
- $cfg['UserprefsDeveloperTab'] boolean
- Activates in the user preferences a tab containing options for developers of
phpMyAdmin.
- $cfg['TitleTable'] string
- $cfg['TitleDatabase'] string
- $cfg['TitleServer'] string
- $cfg['TitleDefault'] string
- Allows you to specify window's title bar. You can use format string expansion.
- $cfg['ErrorIconic'] boolean
- Uses icons for warnings, errors and informations.
- $cfg['MainPageIconic'] boolean
- Uses icons on main page in lists and menu tabs.
- $cfg['ReplaceHelpImg'] boolean
- Shows a help button instead of the "Documentation" message.
- $cfg['ThemePath'] string
- If theme manager is active, use this as the path of the subdirectory
containing all the themes.
- $cfg['ThemeManager'] boolean
- Enables user-selectable themes. See FAQ 2.7.
- $cfg['ThemeDefault'] string
- The default theme (a subdirectory under cfg['ThemePath']).
- $cfg['ThemePerServer'] boolean
- Whether to allow different theme for each server.
- $cfg['DefaultQueryTable'] string
$cfg['DefaultQueryDatabase']
string
- Default queries that will be displayed in query boxes when user didn't
specify any. You can use standard format string
expansion.
- $cfg['SQP']['fmtType'] string [html|none]
-
The main use of the new SQL
Parser is to pretty-print SQL
queries. By default we use HTML to format the query, but you can disable
this by setting this variable to 'none'.
- $cfg['SQP']['fmtInd'] float
$cfg['SQP']['fmtIndUnit'] string
[em|px|pt|ex]
- For the pretty-printing of SQL queries, under some cases the part of a query inside a
bracket is indented. By changing $cfg['SQP']['fmtInd'] you can
change the amount of this indent.
Podobny cel ma $cfg['SQP']['fmtIndUnit'], który określa jednostki
ilości wcięcia, którą określiłeś. Jest to używane w arkuszach stylów.
- $cfg['SQP']['fmtColor'] array of string tuples
- This array is used to define the colours for each type of element of the
pretty-printed SQL
queries. The tuple format is
klasa => [kod koloru HTML | pusty napis]
Jeśli określisz pusty napis jako kolor klasy, jest on ignorowany podczas
tworzenia arkusza stylów. Nie powinno się zmieniać nazwy klas, a jedynie
napisy kolorów.
Klucz nazw klas:
- comment stosuje się do wszystkich podklas komentarzy
- comment_mysql komentarze takie jak "#...\n"
- comment_ansi komentarze takie jak "-- ...\n"
- comment_c komentarze takie jak "/*...*/"
- digit stosuje się do wszystkich podklas liczb
- digit_hex liczby szesnastkowe
- digit_integer liczby całkowite
- digit_float liczby zmiennoprzecinkowe
- punct stosuje się do wszystkich podklas znaków przestanowych
- punct_bracket_open_round nawiasy otwierające "("
- punct_bracket_close_round nawiasy zamykające ")"
- punct_listsep separator elementów listy ","
- punct_qualifier kwantyfikator tabel/kolumn "."
- punct_queryend znacznik końca zapytania ";"
- alpha stosuje się do wszystkich klas napisowych
- alpha_columnType identyfikator pasujący do typu kolumny
- alpha_columnAttrib identyfikator pasujący do atrybutu bazy
danych/tabeli/kolumny
- alpha_functionName identyfikator pasujący do nazwy funkcji MySQL
- alpha_reservedWord identyfikator pasujący do innego słowa
zarezerwowanego
- alpha_variable Identifiers matching a SQL variable "@foo"
- alpha_identifier wszystkie inne identyfikatory
- quote pasuje do wszystkich klas cudzysłowów i apostrofów
- quote_double cudzysłowy "
- quote_single apostrofy '
- quote_backtick odwrócone apostrofy `
- $cfg['SQLValidator'] boolean
- $cfg['SQLValidator']['use'] boolean
- phpMyAdmin now supports use of the Mimer SQL Validator service, as
originally published on Slashdot.
For help in setting up your system to use the service, see the FAQ
6.14.
- $cfg['SQLValidator']['username'] string
$cfg['SQLValidator']['password']
string
- The SOAP service allows you to log in with anonymous and any
password, so we use those by default. Instead, if you have an account with
them, you can put your login details here, and it will be used in place of
the anonymous login.
- $cfg['DBG']
- TYLKO DLA PROGRAMISTÓW!
- $cfg['DBG']['sql'] boolean
- TYLKO DLA PROGRAMISTÓW!
Enable logging queries and execution times to be displayed in the bottom of
main page (right frame).
- $cfg['ColumnTypes'] array
- Wszystkie możliwe typy kolumn MySQL. W większości przypadków nie ma potrzeby
zmiany.
- $cfg['AttributeTypes'] array
- Possible attributes for columns. In most cases you don't need to edit this.
- $cfg['Functions'] array
- Lista funkcji, które obsługuje MySQL. W większości przypadków nie ma
potrzeby zmiany.
- $cfg['RestrictColumnTypes'] array
- Mapping of column types to meta types used for preferring displayed
functions. In most cases you don't need to edit this.
- $cfg['RestrictFunctions'] array
- Functions preferred for column meta types as defined in $cfg['RestrictColumnTypes']. In most cases you don't
need to edit this.
- $cfg['DefaultFunctions'] array
- Functions selected by default when inserting/changing row, Functions are
defined for meta types from $cfg['RestrictColumnTypes'] and for
first_timestamp, which is used for first timestamp column in
table.
- Introduction
- Usage
- File structure
To enable transformations, you have to setup the column_info table
and the proper directives. Please see the Configuration
section on how to do so.
You can apply different transformations to the contents of each column. The
transformation will take the content of each column and transform it with
certain rules defined in the selected transformation.
Say you have a column 'filename' which contains a filename. Normally you
would see in phpMyAdmin only this filename. Using 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 consult your
<www.your-host.com>/<your-install-dir>/transformation_overview.php
installation.
For a tutorial on how to effectively use transformations, see our Link section on the
official phpMyAdmin homepage.
Go to your tbl_structure.php page (i.e. reached through clicking on
the 'Structure' link for a table). There click on "Change" (or
change icon) and there you will see three new fields at the end of the
line. They are called 'MIME-type', 'Browser transformation' and
'Transformation options'.
- The field 'MIME-type' is a drop-down field. Select the MIME-type that
corresponds to the column's contents. Please note that transformations are
inactive as long as no MIME-type is selected.
- Pole 'Sposób prezentacji danych' jest polem wyboru. Możesz wybierać z -
miejmy nadzieję - rosnącej liczby predefiniowanych transformacji. Informacje
o tym, jak zbudować własną transformację, znajdują się poniżej.
Mamy transformacje globalne i przywiązane do typu MIME. Transformacje
globalne mogą zostać użyte dla każdego typu MIME. Jeśli to konieczne, wezmą
one typ pod rozwagę. Transformacje związane z typem MIME zwykle operują
tylko na określonym typie. Istnieją transformacje, które operują na głównym
typie MIME (jak 'image'), które zwykle biorą pod rozwagę podtyp, oraz takie,
które operują tylko na określonym podtypie (jak 'image/jpeg').
Możesz użyć transformacji dla typów MIME, dla których funkcja nie została
zdefiniowana. Nie ma żadnego zabezpieczenia przed wybraniem niewłaściwej
tranformacji, więc sam zadbaj o to, jak wyglądał będzie wynik.
- Pole 'Opcje transformacji' jest polem tekstowym. Musisz wprowadzić tu
właściwe opcje funkcji przekształcającej. Zwykle tranformacje mogą działać z
domyślnymi opcjami, lecz zwykle dobrym pomysłem jest rzucenie okiem na opis,
by zobaczyć, które opcje są niezbędne.
Bardzo podobnie jak w kolumnach ENUM/SET, musisz oddzielić poszczególne
opcje używając formatu 'a','b','c',...(UWAGA NA BRAK ODSTĘPÓW). To dlatego,
że wewnętrznie opcje będą przetwarzane jako tablica, gdzie pierwsza wartość
to pierwszy element w tablicy, i tak dalej.
Jeśli chcesz określić zestaw kodowania znaków MIME, możesz zdefiniować go w
opcjach. Musisz umieścić tę definicję po opcjach predefiniowanych właściwej
transformacji MIME, jako ostatnią wartość zestawu. Użyj formatu "';
charset=XXX'". Jeśli używasz transformacji, dla której możesz określić 2
opcje i chcesz dodać zestaw kodowania znaków, wprowadź "'pierwszy
parameter','drugi parameter','charset=iso-8859-2'". Możesz jednakże użyć
domyślnych wartości parametrów: "'','','charset=iso-8859-2'".
Wszystkie typy MIME i ich tranformacje są zdefiniowane poprzez pojedyncze
pliki w katalogu 'libraries/transformations/'.
Są one składowane w plikach, aby ułatwić ich przystosowanie do własnych
potrzeb i dodawanie nowych transformacji.
Because the user cannot enter own mimetypes, it is kept sure that
transformations always work. It makes no sense to apply a transformation to
a mimetype the transform-function doesn't know to handle.
One can, however, use empty mime-types and global transformations which
should work for many mimetypes. You can also use transforms on a different
mimetype than what they where built for, but pay attention to option usage
as well as what the transformation does to your column.
There is a basic file called 'global.inc.php'. This function can be
included by any other transform function and provides some basic functions.
Jest 5 możliwych nazw plików:
- Transformacja typu+podtypu MIME:
[mimetype]_[subtype]__[transform].inc.php
Proszę zauważyć, że typ-mime i podtyp są oddzielone znakiem '_', który nie
powinien się znajdować w ich nazwach. Nazwa funkcji/pliku transformacji może
zawierać tylko takie znaki, które nie powodują problemów w systemie plików,
ani nie łamią konwencji nazewnictwa funkcji PHP.
The transform function will the be called
'PMA_transform_[mimetype]_[subtype]__[transform]()'.
Przykład:
text_html__formatted.inc.php
PMA_transform_text_html__formatted()
- Transformacja typu MIME (bez podtypu):
[mimetype]__[transform].inc.php
Proszę zauważyć, że brak jest pojedynczych znaków '_' w nazwie pliku. Nazwa
funkcji/pliku transformacji może zawierać tylko takie znaki, które nie
powodują problemów w systemie plików, ani nie łamią konwencji nazewnictwa
funkcji PHP.
The transform function will the be called
'PMA_transform_[mimetype]__[transform]()'.
Przykład:
text__formatted.inc.php
PMA_transform_text__formatted()
- Typ+podtyp MIME bez właściwej funkcji przekształcającej
[mimetype]_[subtype].inc.php
Proszę zauważyć, że w nazwie pliku nie ma znaków '__'. Nie można używać
specjalnych znaków powodujących problemy w systemie plików.
Żadna funkcja przekształcająca nie jest zdefiniowana w samym pliku.
Przykład:
text_plain.inc.php
(Brak funkcji)
- Typ MIME (bez podtypu) bez właściwej funkcji przekształcającej
[mimetype].inc.php
Proszę zauważyć, że brak jest pojedynczych znaków '_' w nazwie pliku. Nie
można używać specjalnych znaków powodujących problemy w systemie plików.
Żadna funkcja przekształcająca nie jest zdefiniowana w samym pliku.
Przykład:
text.inc.php
(Brak funkcji)
- Transformacja globalna bez właściwego typu MIME
global__[transform].inc.php
The transform function will the be called
'PMA_transform_global__[transform]()'.
Przykład:
global__formatted
PMA_transform_global__formatted()
Zatem, ogólnie rzecz biorąc, używaj '_' by rozdzielić typ i podtyp MIME, a
'__' by dostarczyć nazwę funkcji przekształcającej.
Wszystkie pliki nie zawierające w nazwie '__' nie są pokazywane jako
poprawne funkcje przekształcające w polu wyboru.
Please see the libraries/transformations/TEMPLATE file for adding your own
transform function. See the libraries/transformations/TEMPLATE_MIMETYPE for
adding a mimetype without a transform function.
To create a new transform function please see
libraries/transformations/template_generator.sh. To create a new,
empty mimetype please see
libraries/transformations/template_generator_mimetype.sh.
A transform function always gets passed three variables:
- $buffer - Contains the text inside of the column. This is the text,
you want to transform.
- $options - Contains any user-passed options to a transform function
as an array.
- $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 MIME-type of the
column (i.e. 'text/plain', 'image/jpeg' etc.)
Additionally you should also provide additional function to provide
information about the transformation to the user. This function should have
same name as transformation function just with appended _info
suffix. This function accepts no parameters and returns array with
information about the transformation. Currently following keys can be used:
info
- Long description of the transformation.
FAQ - Często zadawane pytania
- Server
- Configuration
- Known limitations
- ISPs, multi-user installations
- Browsers or client OS
- Using phpMyAdmin
- phpMyAdmin project
- Security
- Synchronization
Please have a look at our Link section on the
official phpMyAdmin homepage for in-depth coverage of phpMyAdmin's features
and or interface.
Server
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.
Po pierwsze, powinieneś wypróbować najnowszą wersję Apache'a (i, być może,
MySQL-a).
See also the FAQ 1.1 entry about PHP bugs with output buffering.
Jeżeli serwer nadal pada, poproś o pomoc na różnych grupach pomocy
technicznej Apache'a.
You just forgot to read the install.txt file from the PHP
distribution. Have a look at the last message in this bug report from the official
PHP bug database.
This is a known problem with the PHP ISAPI filter: it's not so
stable. Please use instead the cookie authentication mode.
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 libraries/header.inc.php,
libraries/header_printview.inc.php, index.php,
navigation.php and libraries/common.lib.php.
These features are based on the gzencode() and
bzcompress() PHP functions to be more independent of the platform
(Unix/Windows, Safe Mode or not, and so on). So, you must have Zlib/Bzip2
support (--with-zlib and --with-bz2).
Twój wysyłany plik jest zapisywany przez PHP w "katalogu uploadu",
zdefiniowanego w php.ini przez zmienną upload_tmp_dir
(zwykle domyślną wartością systemową jest /tmp).
Zalecamy poniższą konfigurację dla serwerów Apache uruchomionym w trybie
bezpiecznym, która włącza wysyłanie plików i jednocześnie jest przyzwoicie
bezpieczna:
- utwórz osobny katalog na uploady: mkdir /tmp/php
- przekaż własność do użytkownika.grupy serwera Apache: chown
apache.apache /tmp/php
- daj odpowiednie prawa: chmod 600 /tmp/php
- put upload_tmp_dir = /tmp/php in php.ini
- zrestartuj Apache'a
Jak zasugerował "Rob M" na forum phpWizarda, dodaj tę linijkę do swojego
httpd.conf:
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
Wygląda na to, że usuwa to wiele problemów pomiędzy Internet Explorerem i
SSL.
Since version 2.2.4, phpMyAdmin supports servers with open_basedir
restrictions. However you need to create temporary directory and configure
it as $cfg['TempDir']. The
uploaded files will be moved there, and after execution of your SQL commands, removed.
The MySQL manual explains how to reset
the permissions.
In previous MySQL versions, the User and Passwordcolumns
were named user and password. Please modify your column
names to align with current standards.
Starting with version 2.7.0, the import engine has been re–written and
these problems should not occur. If possible, upgrade your phpMyAdmin to the
latest version to take advantage of the new import features.
The first things to check (or ask your host provider to check) are the
values of upload_max_filesize, memory_limit and
post_max_size in the php.ini configuration file. All of
these three settings limit the maximum size of data that can be submitted
and handled by PHP. One user also said that post_max_size and memory_limit
need to be larger than upload_max_filesize.
There exist several workarounds if your upload is too big or your hosting
provider is unwilling to change the settings:
- Look at the $cfg['UploadDir'] feature. This allows one to upload
a file to the server via scp, ftp, or your favorite file transfer
method. PhpMyAdmin is then able to import the files from the temporary
directory. More information is available in the Configuration section of this document.
- Using a utility (such as
BigDump) to split the files before uploading. We cannot support this or
any third party applications, but are aware of users having success with it.
- If you have shell (command line) access, use MySQL to import the files
directly. You can do this by issuing the "source" command from
within MySQL: source filename.sql.
Since phpMyAdmin 3.0.x, only MySQL 5.0.1 and newer are supported. For older
MySQL versions, you need to use the latest 2.x branch. phpMyAdmin can
connect to your MySQL server using PHP's classic MySQL extension as well as the improved MySQL extension (MySQLi) that is
available in PHP 5.0. The latter one should be used unless you have a good
reason not to do so.
When compiling PHP, we strongly recommend that you manually link the MySQL
extension of your choice to a MySQL client library of at least the same
minor version since the one that is bundled with some PHP distributions is
rather old and might cause problems (see FAQ 1.17a).
MariaDB is also supported (versions 5.1
and 5.2 were tested).
Since phpMyAdmin 3.5 Drizzle is
supported.
You tried to access MySQL with an old MySQL client library. The version of
your MySQL client library can be checked in your phpinfo() output. In
general, it should have at least the same minor version as your server - as
mentioned in FAQ 1.17.
This problem is generally caused by using MySQL version 4.1 or newer. MySQL
changed the authentication hash and your PHP is trying to use the old
method. The proper solution is to use the mysqli extension with the proper client
library to match your MySQL installation. Your chosen extension is specified
in $cfg['Servers'][$i]['extension']. More information
(and several workarounds) are located in the MySQL
Documentation.
Biblioteka "FPDF", której używamy dla tej funkcji wymaga pewnych specjalnych
plików dla krojów czcionek.
Please refers to the FPDF manual to build
these files.
To connect to a MySQL server, PHP needs a set of MySQL functions called
"MySQL extension". This extension may be part of the PHP
distribution (compiled-in), otherwise it needs to be loaded dynamically. Its
name is probably mysql.so or php_mysql.dll. phpMyAdmin tried
to load the extension but failed.
Zwykle problem można rozwiązać instalując pakiet oprogramowania o nazwie
"PHP-MySQL" lub podobnej.
W pliku php.ini ustaw mysql.max_links na więcej niż 1.
Najczęstszym powodem jest to, że w php.ini parametr
file_uploads nie jest ustawiony na "on".
Dzieje się to z powodu dyrektywy MySQL lower_case_table_names
domyślnie ustawionej na 1 (ON) w wersji MySQL dla Win32. Możesz
zmienić to zachowanie po prostu poprzez zmianę jej na 0 (OFF):
Po prostu zmodyfikuj swój plik my.ini, który powinien znajdować się
w katalogu Windows, dodając następująca linię do grupy [mysqld]:
set-variable = lower_case_table_names=0
Następnie zapis plik i zrestartuj usługę MySQL. Zawsze możesz sprawdzić
wartość tej dyrektywy używając zapytania
SHOW VARIABLES LIKE 'lower_case_table_names';
Wskazówka od Josego Fandosa: zakomentuj następujące dwie linie w httpd.conf,
w ten sposób:
# mod_gzip_item_include file \.php$
# mod_gzip_item_include mime "application/x-httpd-php.*"
ponieważ ta wersja mod_gzip na serwerze Apache (w systemie Windows) ma
problemy z obsługą skryptów PHP. Oczywiście serwer Apache musisz potem
zrestartować.
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 his
permissions and it should work.
This is a PHP bug that occur when
GZIP output buffering is enabled. If you turn off it (by $cfg['OBGzip'] = false in
config.inc.php), it should work. This bug will be fixed in
PHP 5.0.0.
Może się to dziać z powodu błędu MySQL-a w sytuacji posiadania nazw baz
danych / tabel z dużymi literami, pomimo lower_case_table_names
ustawionego na 1. Aby to naprawić, wyłącz tę dyrektywę, przekształć
wszystkie nazwy baz danych i tabel na składające się z małych liter i włącz
ją ponownie. Błąd ten został także poprawiony w MySQL-u począwszy od wersji
3.23.56 / 4.0.11-gamma.
Istnieje możliwość skonfigurowania Apache'a w taki sposób, że PHP ma
problemy z interpretacją plików .php.
Problemy występują, gdy używane są 2 różne (i niezgodne) zestawy dyrektyw:
SetOutputFilter PHP
SetInputFilter PHP
and
AddType application/x-httpd-php .php
In the case we saw, one set of directives was in
/etc/httpd/conf/httpd.conf, while the other set was in
/etc/httpd/conf/addon-modules/php.conf.
Polecanym sposobem jest ten z AddType, więc po prostu zakomentuj
pierwszy zestaw linii i zrestartuj Apache'a:
#SetOutputFilter PHP
#SetInputFilter PHP
This problem is known to happen when the server is running Turck MMCache but
upgrading MMCache to version 2.3.21 solves the problem.
Yes.
Since release 3.0 only PHP 5.2 and newer. For older PHP versions 2.9 branch
is still maintained.
Yes. This procedure was tested with phpMyAdmin 2.6.1, PHP 4.3.9 in ISAPI mode
under IIS 5.1.
- In your php.ini file, set cgi.rfc2616_headers = 0
- In Web Site Properties -> File/Directory Security -> Anonymous
Access dialog box, check the Anonymous access checkbox and
uncheck any other checkboxes (i.e. uncheck Basic authentication,
Integrated Windows authentication, and Digest if it's
enabled.) Click OK.
- In Custom Errors, select the range of 401;1 through
401;5 and click the Set to Default button.
Yes. Out of the box, you can use URLs like
http://server/phpMyAdmin/index.php?server=X&db=database&table=table&target=script.
For server you use the server number which refers to the order of
the server paragraph in config.inc.php. Table and script parts are
optional. If you want http://server/phpMyAdmin/database[/table][/script]
URLs, you need to do some
configuration. Following lines apply only for Apache web server. First make sure, that
you have enabled some features within global configuration. You need
Options FollowSymLinks and AllowOverride FileInfo
enabled for directory where phpMyAdmin is installed and you need mod_rewrite
to be enabled. Then you just need to create following .htaccess
file in root folder of phpMyAdmin installation (don't forget to change
directory name inside of it):
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]
Yes. However you need to pass authentication variable to CGI using following rewrite rule:
RewriteEngine On
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
There can be many explanations to this and a look at your server's error log
file might give a clue.
If your cluster consist of different architectures, PHP code used for
encryption/decryption won't work correct. This is caused by use of
pack/unpack functions in code. Only solution is to use mcrypt extension
which works fine in this case.
Yes but the default configuration values of Suhosin are known to cause
problems with some operations, for example editing a table with many columns
and no primary key or with textual primary key.
Suhosin configuration might lead to malfunction in some cases and it can not
be fully avoided as phpMyAdmin is kind of application which needs to
transfer big amounts of columns in single HTTP request, what is something
what Suhosin tries to prevent. Generally all suhosin.request.*,
suhosin.post.* and suhosin.get.* directives can
have negative effect on phpMyAdmin usability. You can always find in your
error logs which limit did cause dropping of variable, so you can diagnose
the problem and adjust matching configuration variable.
The default values for most Suhosin configuration options will work in most
scenarios, however you might want to adjust at least following parameters:
You can also disable the warning using the SuhosinDisableWarning
directive.
Be sure that you have enabled SSLOptions and StdEnvVars in
your Apache configuration. See http://httpd.apache.org/docs/2.0/mod/mod_ssl.html#ssloptions.
To be able to use cookie auth Apache must know that it has to rewrite the
set-cookie headers.
Example from the Apache 2.2 documentation:
ProxyPass /mirror/foo/ http://backend.example.com/
ProxyPassReverse /mirror/foo/ http://backend.example.com/
ProxyPassReverseCookieDomain backend.example.com public.example.com
ProxyPassReverseCookiePath / /mirror/foo/
Note: if the backend url looks like http://host/~user/phpmyadmin, the tilde
(~) must be url encoded as %7E in the ProxyPassReverse* lines. This is not
specific to phpmyadmin, it's just the behavior of Apache.
ProxyPass /mirror/foo/ http://backend.example.com/~user/phpmyadmin
ProxyPassReverse /mirror/foo/
http://backend.example.com/%7Euser/phpmyadmin
ProxyPassReverseCookiePath /%7Euser/phpmyadmin /mirror/foo
See http://httpd.apache.org/docs/2.2/mod/mod_proxy.html
for more details.
The MySQL server's privilege tables are not up to date, you need to run the
mysql_upgrade command on the server.
Konfiguracja
Edit your config.inc.php file and ensure there is nothing (I.E. no
blank lines, no spaces, no characters...) neither before the
<?php tag at the beginning, neither after the ?> tag
at the end. We also got a report from a user under IIS, that used a zipped
distribution kit: the file libraries/Config.class.php contained an
end-of-line character (hex 0A) at the end; removing this character cleared
his errors.
Albo jest to błąd konfiguracji PHP, albo nazwa-użytkownika/hasło są
błędne. Spróbuj stworzyć mały skrypt, który używa mysql_connect i zobacz,
czy działa. Jeśli nie, być może nawet nie wkompilowałeś obsługi MySQL-a do
PHP.
Dla użytkowników RedHata Harald Legner sugeruje na liście dyskusyjnej co
następuje:
On my RedHat-Box the socket of MySQL is /var/lib/mysql/mysql.sock.
In your php.ini you will find a line
mysql.default_socket = /tmp/mysql.sock
Zmień ją na
mysql.default_socket = /var/lib/mysql/mysql.sock
Potem zrestartuj Apache'a i będzie działało.
Here is a fix suggested by Brad Ummer:
- Po pierwsze: musisz określić jakiego gniazda używa MySQL.
Aby to zrobić, zatelnetuj na swój serwer, wejdź go katalogu bin MySQL-a. W
tym katalogu powinien być plik o nazwie mysqladmin. Napisz
./mysqladmin variables, co powinno dać sporo informacji o serwerze
MySQL, w tym gniazdo (/tmp/mysql.sock, na przykład).
- Następnie musisz powiedzieć PHP, żeby używał tego gniazda.
To do this in phpMyAdmin, you need to complete the socket information in the
config.inc.php.
For example:
$cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';
Proszę również upewnić się, że prawa tego pliku pozwalają go odczytać przez
Twój serwer WWW (tj. '0755').
Have also a look at the
corresponding section of the MySQL documentation.
Try to set the $cfg['OBGZip']
directive to FALSE in the phpMyAdmin configuration file. It helps
sometime.
Also have a look at your PHP version number: if it contains "b" or
"alpha" it means you're running a testing version of PHP. That's
not a so good idea, please upgrade to a plain revision.
Check the value you set for the $cfg['PmaAbsoluteUri'] directive in the phpMyAdmin
configuration file.
Kiedy używasz portu na swoim hoście lokalnym, którego port jest
przekierowywany do innego hosta, MySQL nie rozwiązuje nazwy localhost
zgodnie z oczekiwaniami.
Erik Wasser explains: The solution is: if your host is "localhost"
MySQL (the command line tool mysql as well) always tries to use
the socket connection for speeding up things. And that doesn't work in this
configuration with port forwarding.
If you enter "127.0.0.1" as hostname, everything is right and MySQL uses the
TCP connection.
Themes are configured with $cfg['ThemePath'], $cfg['ThemeManager'] and $cfg['ThemeDefault'].
Under $cfg['ThemePath'], you
should not delete the directory "original" or its underlying
structure, because this is the system theme used by phpMyAdmin.
"original" 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.
To create a theme:
- make a new subdirectory (for example "your_theme_name") under $cfg['ThemePath'] (by default
themes)
- copy the files and directories from "original" to
"your_theme_name"
- edit the css-files in "your_theme_name/css"
- put your new images in "your_theme_name/img"
- edit layout.inc.php in "your_theme_name"
- edit info.inc.php in "your_theme_name" to contain your
chosen theme name, that will be visible in user interface
- make a new screenshot of your theme and save it under
"your_theme_name/screen.png"
In theme directory there is file info.inc.php which contains theme
verbose name, theme generation and theme version. These versions and
generations are enumerated from 1 and do not have any direct dependence on
phpMyAdmin version. Themes within same generation should be backwards
compatible - theme with version 2 should work in phpMyAdmin requiring
version 1. Themes with different generation are incompatible.
If you do not want to use your own symbols and buttons, remove the directory
"img" in "your_theme_name". phpMyAdmin will use the
default icons and buttons (from the system-theme "original").
Here are a few points to check:
- In config.inc.php, try to leave the $cfg['PmaAbsoluteUri'] directive empty. See also FAQ 4.7.
- Maybe you have a broken PHP installation or you need to upgrade your Zend
Optimizer. See
http://bugs.php.net/bug.php?id=31134.
- If you are using Hardened PHP with the ini directive
varfilter.max_request_variables set to the default (200) or another
low value, you could get this error if your table has a high number of
columns. Adjust this setting accordingly. (Thanks to Klaus Dorninger for the
hint).
- In the php.ini directive arg_separator.input, a value of
";" will cause this error. Replace it with "&;".
- If you are using Hardened-PHP,
you might want to increase request
limits.
- The directory specified in the php.ini directive
session.save_path does not exist or is read-only.
To be able to see a progress bar during your uploads, your server must have
either the APC extension or
the uploadprogress
one. Moreover, the JSON extension has to be enabled in your PHP.
If using APC, you must set apc.rfc1867 to on in your
php.ini.
Known limitations
This is related to the authentication mechanism (protocol) used by
phpMyAdmin. To bypass this problem: just close all the opened browser
windows and then go back to phpMyAdmin. You should be able to log in again.
Compressed dumps are built in memory and because of this are limited to
php's memory limit. For GZip/BZip2 exports this can be overcome since 2.5.4
using $cfg['CompressOnFly'] (enabled by default). Zip
exports can not be handled this way, so if you need Zip files for larger
dump, you have to use another way.
This is an InnoDB bug, see http://bugs.mysql.com/bug.php?id=21704.
The problem is that older versions of mysqldump created invalid
comments like this:
-- MySQL dump 8.22
--
-- Host: localhost Database: database
---------------------------------------------------------
-- Server version 3.23.54
The invalid part of the code is the horizontal line made of dashes that
appears once in every dump created with mysqldump. If you want to run your
dump you have to turn it into valid MySQL. This means, you have to add a
whitespace after the first two dashes of the line or add a # before it:
-- -------------------------------------------------------
lub
#---------------------------------------------------------
Please note that you should not use the separating string multiple times
without any characters between them, or at the beginning/end of your table
name. If you have to, think about using another TableSeparator or disabling
that feature
In Relation view, being able to choose a table in another database, or
having more than one index column in the foreign key.
In Query-by-example (Query), automatic generation of the query LEFT JOIN
from the foreign table.
Your table neither have a primary key nor an unique one, so we must use a
long expression to identify this row. This causes problems to parse_url
function. The workaround is to create a primary or unique key.
Due to a surrounding form-container (for multi-row delete checkboxes), no
nested forms can be put inside the table where phpMyAdmin displays the
results. You can, however, use any form inside of a table if keep the
parent form-container with the target to tbl_row_delete.php and just put
your own input-elements inside. If you use a custom submit input field, the
form will submit itself to the displaying page again, where you can validate
the $HTTP_POST_VARS in a transformation. For a tutorial on how to
effectively use transformations, see our Link section on the
official phpMyAdmin-homepage.
When MySQL is running in ANSI-compatibility mode, there are some major
differences in how SQL is
structured (see
http://dev.mysql.com/doc/mysql/en/ansi-mode.html). Most important of
all, the quote-character (") is interpreted as an identifier quote character
and not as a string quote character, which makes many internal phpMyAdmin
operations into invalid SQL
statements. There is no workaround to this behaviour. News to this item will
be posted in Bug report #816858
Please make sure that your table has a primary key, so that phpMyAdmin can
use it for the Edit and Delete links.
phpMyAdmin uses a quick method to get the row count, and this method only
returns an approximate count in the case of InnoDB tables. See $cfg['MaxExactCount'] for a
way to modify those results, but this could have a serious impact on
performance.
The tests I have made with MySQL 5.1.49 shows that the API does not accept
this syntax for the USE command.
This has been a known limitation of phpMyAdmin since the beginning and it's
not likely to be solved in the future.
There is no reliable way to differentiate tables in CSV format. For the time
being, you will have to break apart CSV files containing multiple tables.
Currently, the import type-detection system can only assign these MySQL
types to columns. In future, more will likely be added but for the time
being you will have to edit the structure to your liking post-import.
Also, you should note the fact that phpMyAdmin will use the size of the
largest item in any given column as the column size for the appropriate
type. If you know you will be adding larger items to that column then you
should manually adjust the column sizes accordingly. This is done for the
sake of efficiency.
ISPs, multi-user
installations
Since version 2.0.3, you can setup a central copy of phpMyAdmin for all your
users. The development of this feature was kindly sponsored by NetCologne
GmbH. This requires a properly setup MySQL user management and phpMyAdmin
HTTP or cookie
authentication. See the install section on "Using HTTP authentication".
Zależy to od Twojego systemu.
Jeżeli używasz serwera, do którego nie mają dostępu inni ludzie, wystarczy
użyć ochrony katalogów, którą dostarcza Twój serwer www (np. z Apachem
możesz użyć plików .htaccess).
If other people have telnet access to your server, you should use
phpMyAdmin's HTTP or cookie
authentication features.
Propozycje:
-
Your config.inc.php file should be chmod 660.
-
All your phpMyAdmin files should be chown -R phpmy.apache, where phpmy is a
user whose password is only known to you, and apache is the group under
which Apache runs.
-
Follow security recommendations for PHP and your webserver.
Sprawdź php.ini, albo poproś swojego administratora systemu, by to
sprawdził. Aby pozwolić na normalną pracę phpMyAdmina,
Include_path musi zawierać "." gdzieś wewnątrz, a
open_basedir, jeśli jest używane, musi zawierać "." i "./lang",
Może się to dziać z kilku powodów:
Począwszy od wersji 2.2.5, na stronie zarządzania użytkownikami, można
wprowadzić wieloznaczną nazwę bazy danych dla użytkownika (na przykład
"joe"), i dać uprawnienia, jakie chcesz. Na przykład dodanie SELECT,
INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER pozwoli
użytkownikowi tworzyć/zarządzać jego bazą (bazami) danych.
If you have existing rules from an old .htaccess file, you can take them and
add a username between the 'deny'/'allow' and
'from' strings. Using the username wildcard of '%' would
be a major benefit here if your installation is suited to using it. Then you
can just add those updated lines into the
$cfg['Servers'][$i]['AllowDeny']['rules'] array.
If you want a pre-made sample, you can try this fragment. It stops the
'root' user from logging in from any networks other than the private network
IP blocks.
//block root from logging in except from the private networks
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array(
'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',
);
This happens if you are using a URL to start phpMyAdmin which is different than the one set
in your $cfg['PmaAbsoluteUri']. For example, a missing
"www", or entering with an IP address while a domain name is defined in the config
file.
When starting phpMyAdmin, you can use the db,
pma_username, pma_password 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. Using pma_username and
pma_password has been tested along with the usage of 'cookie'
auth_type.
Browsers or client OS
We could reproduce this problem only under Win98/98SE. Testing under WinNT4
or Win2K, we could easily create more than 60 columns.
A workaround is to create a smaller number of columns, then come back to
your table properties and add the other columns.
Nie jest to problem phpMyAdmina, ale znany błąd Xitami: spotkasz się z nim
przy każdym skrypcie i na każdej stronie używającej formularzy.
Zaktualizuj (do nowszej lub starszej wersji) swój serwer Xitami.
W Konquerorze 2.1.1: zwykłe zrzuty, zrzuty zip i GZip działają dobrze, z
wyjątkiem tego, że proponowaną nazwą pliku jest zawsze
'tbl_dump.php'. Wygląda na to, że zrzuty BZip2 nie działają.
W Konquerorze 2.2.1: zwykłe zrzuty działają; zrzuty zip są umieszczane w
katalogu tymczasowym użytkownika, więc muszą być stamtąd przeniesione przed
zamknięciem Konquerora, albo znikną. Zrzuty GZip dają komunikat o błędzie.
Dla Konquerora 2.2.2 musimy przeprowadzić testy.
MS Internet Explorer seems to be really buggy about cookies, at least till
version 6.
Zaktualizuj Internet Explorera do wersji przynajmniej 5.5 SP2.
Your table neither have a primary key nor an unique one, so we must use a
long URL to identify this
row. There is a limit on the length of the URL in those browsers, and this not happen in Netscape, for
example. The workaround is to create a primary or unique key, or use another
browser.
Niektóre przeglądarki obsługują kliknięcie prawym klawiszem na ramkę, którą
chcesz odświeżyć, więc po prostu zrób tak w prawej ramce.
Wygląda to na błąd Mozilli: 0.9.6 było OK. Będziemy się przyglądać przyszłym
wersjom Mozilli.
This is a Mozilla bug (see bug #26882 at BugZilla).
Jest to znany błąd Netscape'a 4.75: dodaje trochę znaków wysuwu wiersza
podczas eksportu danych w trybie octet-stream. Ponieważ nie mamy możliwości
wykrycia konkretnej wersji Netscape'a, nie możemy obejść tego błędu.
Proszę upewnić się, że system kodowania znaków ustawiony w przeglądarce na
ten z pliku językowego, który został wybrany na stronie startowej
phpMyAdmina. Możesz też wypróbować tryb autodetekcji, który obsługują
najnowsze wersje większości przeglądarek.
This issue has been reported by a OS X
user, who adds that Chimera, Netscape and Mozilla do not have this problem.
Jest to błąd Internet Explorera, inne przeglądarki nie zachowują się w ten
sposób.
Please upgrade to Opera7 at least.
Please upgrade to at least version 1.2.3.
Please check the following points:
- Maybe you have defined your PmaAbsoluteUri setting in
config.inc.php to an IP
address and you are starting phpMyAdmin with a URL containing a domain name, or the reverse situation.
- Security settings in IE and/or Microsoft Security Center are too high, thus
blocking scripts execution.
- The Windows Firewall is blocking Apache and MySQL. You must allow HTTP ports (80 or 443) and MySQL
port (usually 3306) in the "in" and "out" directions.
Many users have confirmed that the Tabbrowser Extensions plugin they
installed in their Firefox is causing the problem.
This happens only when both of these conditions are met: using the
http authentication mode and register_globals being set to
On on the server. It seems to be a browser-specific problem;
meanwhile use the cookie authentication mode.
Issues have been reported with some combinations of browser extensions. To
troubleshoot, disable all extensions then clear your browser cache to see if
the problem goes away.
Using phpMyAdmin
Examine the SQL error with
care. Often the problem is caused by specifying a wrong column-type.
Powszechnymi błędami są:
- użycie VARCHAR bez argumentu rozmiaru
- użycie TEXT lub BLOB z argumentem rozmiaru
Zobacz także, by potwierdzić jej prawidłowość, rozdział podręcznika MySQL
dotyczący składni.
This is the way to create a multi-columns index. If you want two indexes,
create the first one when creating the table, save, then display the table
properties and click the Index link to create the other index.
Since version 2.2.3, you have a checkbox for each column that can be null.
Before 2.2.3, you had to enter "null", without the quotes, as the
column's value. Since version 2.5.5, you have to use the checkbox to get a
real NULL value, so if you enter "NULL" this means you want a
literal NULL in the column, and not a NULL value (this works in PHP4).
Click on a database or table name in the left frame, the properties will be
displayed. Then on the menu, click "Export", you can dump the
structure, the data, or both. This will generate standard SQL statements that can be used to
recreate your database/table.
You will need to choose "Save as file", so that phpMyAdmin can
transmit the resulting dump to your station. Depending on your PHP
configuration, you will see options to compress the dump. See also the $cfg['ExecTimeLimit']
configuration variable.
Dodatkową pomoc w tym temacie znajdziesz szukając w tym dokumencie słowa
"zrzut".
Click on a database name in the left frame, the properties will be
displayed. Select "Import" from the list of tabs in the
right–hand frame (or "SQL" if your phpMyAdmin version is previous to
2.7.0). In the "Location of the text file" section, type in the
path to your dump filename, or use the Browse button. Then click Go.
With version 2.7.0, the import engine has been re–written, if possible
it is suggested that you upgrade to take advantage of the new features.
Dodatkową pomoc w tym temacie znajdziesz szukając w tym dokumencie słowa
"upload".
Here is an example with the tables persons, towns and countries, all located
in the database mydb. If you don't have a pma_relation table,
create it as explained in the configuration section. Then create the example
tables:
CREATE TABLE REL_countries (
country_code char(1) NOT NULL default '',
description varchar(10) NOT NULL default '',
PRIMARY KEY (country_code)
) TYPE=MyISAM;
INSERT INTO REL_countries VALUES ('C', 'Canada');
CREATE TABLE REL_persons (
id tinyint(4) NOT NULL auto_increment,
person_name varchar(32) NOT NULL default '',
town_code varchar(5) default '0',
country_code char(1) NOT NULL default '',
PRIMARY KEY (id)
) TYPE=MyISAM;
INSERT INTO REL_persons VALUES (11, 'Marc', 'S', '');
INSERT INTO REL_persons VALUES (15, 'Paul', 'S', 'C');
CREATE TABLE REL_towns (
town_code varchar(5) NOT NULL default '0',
description varchar(30) NOT NULL default '',
PRIMARY KEY (town_code)
) TYPE=MyISAM;
INSERT INTO REL_towns VALUES ('S', 'Sherbrooke');
INSERT INTO REL_towns VALUES ('M', 'Montréal');
To setup appropriate links and display information:
- przy tabeli "REL_osoby" kliknij Strukturę, następnie Widok relacyjny
- Łącze: dla "kod_miasta" wybierz "REL_miasta->kod_miasta"
- Łącze: dla "kod_kraju" wybierz "REL_kraje->kod_kraju"
- przy tabeli "REL_miasta" kliknij Strukturę, następnie Widok relacyjny
- in "Choose column to display", choose "description"
- powtórz dwa ostatnie kroki dla tabeli "REL_kraje"
Następnie wypróbuj coś takiego:
- #-#-#-#-# Documentation-pl-2.5.2-pl1-1.html:2693 #-#-#-#-#
Klinkij na nazwie bazy danych w lewej ramce
#-#-#-#-# Documentation-pl-2.5.2-pl1-1.html:2731 #-#-#-#-#
Kliknij na nazwie bazy danych w lewej ramce
- Wybierz "Zapytanie"
- Użyj tabel: osoby, miasta, kraje
- Kliknij na "Zmianę zapytania"
- In the columns row, choose persons.person_name and click the
"Show" tickbox
- Zrób to samo dla miasta.opis i kraje.opis w innych 2 kolumnach
- Kliknij na "Zmianę zapytania", a zobaczysz w polu zapytania, że zostały
wygenerowane odpowiednie połączenia
- Kliknij na "Wykonanie zapytania"
Starting from the previous example, create the pma_table_info as explained
in the configuration section, then browse your persons table, and move the
mouse over a town code or country code.
See also FAQ 6.21 for an additional feature that "display
column" enables: drop-down list of possible values.
First the configuration variables "relation",
"table_coords" and "pdf_pages" have to be filled in.
Then you need to think about your schema layout. Which tables will go on
which pages?
- Select your database in the left frame.
- Choose "Operations" in the navigation bar at the top.
- Choose "Edit PDF
Pages" near the bottom of the page.
- Enter a name for the first PDF
page and click Go. If you like, you can use the "automatic
layout," which will put all your linked tables onto the new page.
- Select the name of the new page (making sure the Edit radio button is
selected) and click Go.
- Select a table from the list, enter its coordinates and click Save.
Coordinates are relative; your diagram will be automatically scaled to fit
the page. When initially placing tables on the page, just pick any
coordinates -- say, 50x50. After clicking Save, you can then use the graphical editor to position the element correctly.
- When you'd like to look at your PDF, first be sure to click the Save button beneath the list
of tables and coordinates, to save any changes you made there. Then scroll
all the way down, select the PDF options you want, and click Go.
- Internet Explorer for Windows may suggest an incorrect filename when you try
to save a generated PDF. When
saving a generated PDF, be
sure that the filename ends in ".pdf", for example
"schema.pdf". Browsers on other operating systems, and other
browsers on Windows, do not have this problem.
No, it's MySQL that is doing silent column
type changing.
If you do not put a backslash before the underscore, this is a wildcard
grant, and the underscore means "any character". So, if the
database name is "john_db", the user would get rights to john1db,
john2db ...
Jeśli umieścisz odwrotny ukośnik przed podkreśleniem, oznacza to że nazwa
bazy danych będzie miała prawdziwe podkreślenie.
Oznacza on "średnią".
Struktura:
- "Add DROP TABLE" will add a line telling MySQL to drop the table,
if it already exists during the import. It does NOT drop the table after
your export, it only affects the import file.
- "If Not Exists" will only create the table if it doesn't exist.
Otherwise, you may get an error if the table name exists but has a different
structure.
- "Add AUTO_INCREMENT value" ensures that AUTO_INCREMENT value (if
any) will be included in backup.
- "Enclose table and column names with backquotes" ensures that
column and table names formed with special characters are protected.
- "Add into comments" includes column comments, relations, and MIME
types set in the pmadb in the dump as SQL comments (/* xxx */).
Data:
- "Pełne dodania" dodają nazwy kolumn przy każdym poleceniu INSERT, w celu
lepszej dokumentacji (ale skutkuje to większym plik).
- "Rozszerzone dodania" zapewnia krótszy plik zrzutu poprzez użycie jeden razy
czasownika INSERT i nazwy tabeli.
- "Delayed inserts" are best explained in the MySQL
manual.
- "Ignore inserts" treats errors as a warning instead. Again, more
info is provided in the MySQL manual, but
basically with this selected, invalid values are adjusted and inserted
rather than causing the entire statement to fail.
Jest to zły pomysł, gdyż składnia MySQL-a "baza-danych.tabela" jest zwykłym
sposobem odwoływania się do bazy danych i nazwy tabeli. Co gorsza, MySQL
zwykle pozwala na utworzenie bazy danych z kropką, ale nie da się ani z nią
pracować, ani jej skasować.
To use SQL Validator, you need PHP with XML, PCRE and PEAR support. In addition you need a SOAP support, either as a PHP extension or as
a PEAR SOAP module.
To install PEAR SOAP module, run "pear install Net_Socket Net_URL
HTTP_Request Mail_Mime Net_DIME SOAP" to get the necessary PEAR modules for
usage.
If you use the Validator, you should be aware that any SQL statement you submit will be
stored anonymously (database/table/column names, strings, numbers replaced
with generic values). The Mimer SQL Validator itself, is © 2001 Upright Database
Technology. We utilize it as free SOAP service.
The right way to do this, is to create the column without any indexes, then
display the table structure and use the "Create an index"
dialog. On this page, you will be able to choose your BLOB column, and set a
size to the index, which is the condition to create an index on a BLOB
column.
You can use Ctrl+arrows (Option+Arrows in Safari) for moving on most pages
with many editing fields (table structure changes, row editing, etc.). You
can also have a look at the directive $cfg['DefaultPropDisplay'] ('vertical') and see if
this eases up editing for you.
Slow down :). Defining mimetypes is of no use, if you can't put
transformations on them. Otherwise you could just put a comment on the
column. Because entering your own mimetype will cause serious syntax
checking issues and validation, this introduces a high-risk false-user-input
situation. Instead you have to initialize mimetypes using functions or empty
mimetype definitions.
Poza tym, masz cały przegląd dostępnych typów MIME. Kto zna te wszystkie
typy MIME na pamięć, tak że może je wprowadzać do woli?
Any query you have executed can be stored 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.
Od momentu zapamiętania zapytania jest ono związane z bazą danych, na której
je wykonujesz. Masz teraz dostęp do rozwijalnej listy zapytań na każdej
stronie, na której pojawia się pole zapytania dla tej bazy danych.
Since phpMyAdmin 2.5.0 you are also able to store variables for the
bookmarks. Just use the string /*[VARIABLE]*/ anywhere in your
query. Everything which is put into the value input box on the query
box page will replace the string "/*[VARIABLE]*/" in your stored
query. Just be aware of that you HAVE to create a valid query, otherwise
your query won't be even able to be stored in the database.
Pamiętaj także, że wszystko inne wewnątrz napisu /*[VARIABLE]*/
zostanie w zapytaniu bez zmian, tyle że pozbawione znaków /**/. Możesz więc
użyć:
/*, [VARIABLE] AS mojanazwa */
co zostanie rozwinięte w zapytaniu do
, ZMIENNA as mojanazwa
gdzie ZMIENNA jest wprowadzonym w polu tekstowym napisem. Jeśli będzie to
pusty napis, żadne zmiany nie zostaną dokonane.
Bardziej rozbudowany przykład. Powiedzmy, że zapisałeś następujące
zapytanie:
SELECT Nazwa, Adres FROM adresy WHERE 1 /* AND Nazwa LIKE
'%[VARIABLE]%' */
Powiedzmy, że wpisujesz teraz "phpMyAdmin" jako zmienną dla tego zapytania;
pełnym zapytaniem będzie:
SELECT Nazwa, Adres FROM adresy WHERE 1 AND Nazwa LIKE
'%phpMyAdmin%'
You can use multiple occurrences of /*[VARIABLE]*/ in a single query
(that is, multiple occurrences of the same variable).
UWAGA NA BRAK SPACJI wewnątrz konstrukcji "/**/". Każda spacja tam
wstawiona będzie później również występować w zapytaniu i może powodować
nieoczekiwane wyniki, zwłaszcza przy rozwijaniu zmiennej wewnątrz wyrażenia
"LIKE ''".
Początkowe zapytanie musi dać w wyniku przynajmniej jeden rekord, by móc być
zapamiętanym. Można to obejść używając dobrze umiejscowionych komentarzy
"/**/".
You can simply include table in your LATEX
documents, minimal sample document should look like following one (assuming
you have table exported in file 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
You have one of these global privileges: CREATE TEMPORARY TABLES, SHOW
DATABASES, LOCK TABLES. Those privileges also enable users to see all the
database names. See this bug
report.
So if your users do not need those privileges, you can remove them and their
databases list will shorten.
You have to setup appropriate links between the tables, and also setup the
"display column" in the foreign table. See FAQ 6.6 for an example. Then,
if there are 100 values or less in the foreign table, a drop-down list of
values will be available. You will see two lists of values, the first list
containing the key and the display column, the second list containing the
display column and the key. The reason for this is to be able to type the
first letter of either the key or the display column.
For 100 values or more, a distinct window will appear, to browse foreign key
values and choose one. To change the default limit of 100, see $cfg['ForeignKeyMaxLimit'].
Yes. If a bookmark has the same label as a table name and it's not a public
bookmark, it will be executed.
You can use CSV for Microsoft
Excel, which works out of the box.
Since phpMyAdmin 3.4.5 support for direct export to Microsoft Excel version
97 and newer was dropped.
Automatic migration of a table's pmadb-style column comments to the native
ones is done whenever you enter Structure page for this table.
For general information about BLOB streaming on MySQL, visit blobstreaming.org. You need the
following components:
- PBMS BLOB Streaming Daemon for MySQL (0.5.15 or later)
- Streaming enabled PBXT Storage engine for MySQL (1.0.11-6 or later)
- PBMS Client Library for MySQL (0.5.15 or later)
- PBMS PHP Extension for MySQL (0.1.1 or later)
Here are details about configuration and operation:
- In config.inc.php your host should be defined with a FQDN (fully
qualified domain name) instead of "localhost".
- Ensure that your target table is under the PBXT storage engine and
has a LONGBLOB column (which must be nullable if you want to remove
the BLOB reference from it).
- When you insert or update a row in this table, put a checkmark on the
"Upload to BLOB repository" optional choice; otherwise, the upload
will be done directly in your LONGBLOB column instead of the repository.
- Finally when you browse your table, you'll see in your column a link to
stream your data, for example "View image". A header containing
the correct MIME-type will be sent to your browser; this MIME-type was
stored at upload time.
Click the first row of the range, hold the shift key and click the last row
of the range. This works everywhere you see rows, for example in Browse mode
or on the Structure page.
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 host that runs phpMyAdmin
@SERVER@
- MySQL server name
@VERBOSE@
- Verbose MySQL server name as defined in server configuration
@VSERVER@
- Verbose MySQL server name if set, otherwise normal
@DATABASE@
- Currently opened database
@TABLE@
- Currently opened table
@COLUMNS@
- Columns of the currently opened table
@PHPMYADMIN@
- phpMyAdmin with version
By clicking on the button 'toggle scratchboard' on the page where you edit
x/y coordinates of those elements you can activate a scratchboard where all
your elements are placed. By clicking on an element, you can move them
around in the pre-defined area and the x/y coordinates will get updated
dynamically. Likewise, when entering a new position directly into the input
field, the new position in the scratchboard changes after your cursor leaves
the input field.
Aby zapisać nowe położenia, należy kliknąć na przycisk 'OK' pod tabelą.
Jeżeli chcesz umieścić nowy element, najpierw dodaj go do tabeli elementów,
a następnie go przeciągnij myszką.
Poprzez zmianę wielkości papieru i orientacji, możesz zmienić także wielkość
scratchboardu. Możesz to zrobić po prostu przez zmianę pozycji na liście
rozwijanej, która znajduje się niżej, a scratchboard zmieni rozmiar
automatycznie, nie wpływając na aktualne położenia elementów.
Gdyby jakiś element znalazł się poza obszarem, możesz albo zwiększyć
wielkość papieru, albo kliknąć na przycisk 'reset', aby umieścić wszystkie
elementy pod sobą.
Not every table can be put to the chart. Only tables with one, two or three
columns can be visualised as a chart. Moreover the table must be in a
special format for chart script to understand it. Currently supported
formats can be found in the wiki.
An ESRI Shapefile is actually a set of several files, where .shp file
contains geometry data and .dbf file contains data related to those geometry
data. To read data from .dbf file you need to have PHP compiled with the
dBase extension (--enable-dbase). Otherwise only geometry data will be
imported.
To upload these set of files you can use either of the following methods:
-
Configure upload directory with $cfg['UploadDir'], upload both .shp and .dbf files
with the same filename and chose the .shp file from the import page.
-
Create a Zip archive with .shp and .dbf files and import it. For this to
work, you need to set $cfg['TempDir'] to a place where the web server user
can write (for example './tmp').
To create the temporary directory on a UNIX-based system, you can do:
cd phpMyAdmin
mkdir tmp
chmod o+rwx tmp
Aby wybrać powiązanie, kliknij :
Wyświetlania kolumna jest pokazywana w kolorze różowym. Aby ustawić/zmienić
kolumny jak wyświetlanie kolumn, kliknij "Wybierz kolumny do wyświetlenia",
a następnie kliknij odpowiednią nazwę kolumny.
The Zoom search feature is an alternative to table search feature. It allows
you to explore a table by representing its data in a scatter plot. You can
locate this feature by selecting a table and clicking the 'Search' tab. One
of the sub-tabs in the 'Table Search' page is 'Zoom Search'.
Consider the table REL_persons in FAQ 6.6 for an example. To use zoom search, two
columns need to be selected, for example, id and town_code. The id values
will be represented on one axis and town_code values on the other axis. Each
row will be represented as a point in a scatter plot based on its id and
town_code. You can include two additional search criteria apart from the two
fields to display.
You can choose which field should be displayed as label for each point. If a
display column has been set for the table (see FAQ 6.7), it is taken as the
label unless you specify otherwise. You can also select the maximum number
of rows you want to be displayed in the plot by specifing it in the 'Max
rows to plot' field. Once you have decided over your criteria, click 'Go' to
display the plot.
After the plot is generated, you can use the mousewheel 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 certail 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.
phpMyAdmin project
Our Bug Tracker is located at http://sf.net/projects/phpmyadmin/
under the Bugs section.
Ale proszę najpierw przedyskutować (po angielsku - przyp. tłum.) błąd z
innymi użytkownikami:
https://sourceforge.net/projects/phpmyadmin/forums.
Always use latest Git version of the po file to translate. You can
optionally translate online at our translation server where you can also get
the latest po files and merge them with your translations. For creating a
new translation simply use po/phpmyadmin.pot and generate
po/LANG_CODE.po for your language (you can use msginit -i
po/phpmyadmin.pot -l LANG_CODE --no-translator -o po/LANG_CODE.po to
do this) or ask on the mailing list to add the translation to the web
interface. More details are available on our wiki.
Please note that we try not to use HTML entities like é in the
translations, since we define the right character set in the file. With
HTML entities, the text on JavaScript messages would not display correctly.
However there are some entities that need to be there: quotes, non-breakable
spaces, ampersands, less than, greater than.
You can then put your translations, as a zip file to avoid losing special
characters, on the sourceforge.net translation
tracker.
It would be a good idea to subscribe to the phpmyadmin-translators
mailing list, because this is where we ask for translations of new messages.
Documentation is being translated using po4a and gettext (see documentation for
existing translations). To start, checkout localized_docs/po
from Git, or just go to the translation server and
translate it online. If your language is missing, just contact Michal Čihař; he will add
it. If you prefer to directly translate the po files, please put updated
ones into our translation
tracker.
W przypadku nowych programistów preferowana jest następująca metoda:
- fetch the current git repository over anonymous git:
klon systemu git
git://phpmyadmin.git.sourceforge.net/gitroot/phpmyadmin/phpmyadmin
- dodaj swoje rzeczy
- generate patch with your changes: git diff > xxx.diff
- submit your patch via the patch
tracker of the phpMyAdmin project.
More details on git are available on our wiki.
Write access to the repository is granted only to experienced developers who
have already contributed something useful to phpMyAdmin.
Rzuć także okiem na punkt Programiści.
Security
Please refer to http://www.phpmyadmin.net/home_page/security.php
If you use Apache web server, phpMyAdmin exports information about
authentication to the Apache environment and it can be used in Apache logs.
Currently there are two variables available:
userID
- User name of currently active user (he does not have to be logged in).
userStatus
- Status of currently active user, one of
ok (user is logged in),
mysql-denied (MySQL denied user login),
allow-denied (user denied by allow/deny rules),
root-denied (root is denied in configuration),
empty-denied (empty password is denied).
LogFormat directive for Apache can look like following:
LogFormat "%h %l %u %t \"%r\" %>s %b \
\"%{Referer}i\" \"%{User-Agent}i\" %{userID}n %{userStatus}n" pma_combined
You can then use any log analyzing tools to detect possible break-in
attempts.
Synchronization
You can now synchronize databases/tables in phpMyAdmin using the Synchronize
feature. It allows you to connect to local as well as remote servers. This
requires you to enter server host name, username, password, port and the
name of the database. Therefore you can now synchronize your databases
placed on the same server or some remote server.
This feature is helpful for developers who need to replicate their
database’s structure as well as data. Moreover, this feature not only
helps replication but also facilitates the user to keep his/her database in
sync with another database. Other than the full database, certain tables of
the databases can also be synchronized.
You need to fill in the host name of the server, the username and password
of an user account already there in MySQL. Port is by default populated with
3306 (MySQL default port). Then the name of the database should be mentioned
at the end. All the information other than the port needs to be filled
explicitly for the source as well as target servers.
After successfully passing through the authentication phase, the source and
target database table names will be displayed. It will be a tabular
representation.
On the left, are listed the source database table names. Some of the names
have a + plus sign preceding them. This shows that these tables
are only present in source database and they need to be added to the target
database in order to synchronize the target database. The tables whose names
are not preceded by a + sign are already present in the target
database.
On the right, are listed the target database table names. There are few
table names that have (not present) appended after their
names. This means that these tables are to be created in target database in
order to synchronize target database with source database. Some table names
have a - minus sign preceding them. This shows that these
tables are only present in target database and they will remain unchanged in
the target database. The column in the middle shows the difference between
the source and target corresponding tables.
The difference is depicted by the red and green buttons with S and
D letters, indicating that either Structure or Data are not up to
date. By clicking on them, they will turn grey, what means that they will be
synchronized.
Informacje dla programistów
phpMyAdmin jest projektem Open Source, a więc jesteś zaproszony, by go
rozwijać. Wiele wspaniałych funkcji zostało napisanych przez innych ludzi,
więc także ty możesz pomóc by phpMyAdmin stał się użytecznym narzędziem.
Jeśli planujesz rozwijać źródła, prosimy o przeczytanie poniższych
informacji:
- All files include libraries/header.inc.php (layout),.
libraries/common.lib.php (common functions) and
config.inc.php.
Only configuration data should go in config.inc.php. Please keep it
free from other code.
Commonly used functions should be added to libraries/common.lib.php
and more specific ones may be added within a library stored into the
libraries sub-directory.
- Oczywiście możesz użyć takiego stylu kodowania, jakiego tylko chcesz. Ale
pamiętaj, by utrzymać swój kod tak prostym jak to możliwe: osoby
początkujące używają phpMyAdmina jako przykładowej aplikacji.
As far as possible, we want the scripts to be XHTML1.0 and CSS2 compliant on
one hand, they fit the PEAR coding standards on
the other hand. Please pay attention to this.
- Please enable showing PHP errors and warnings by the
$cfg['Error_Handler']['display']
configuration directive.
- Please try to keep up the file-naming conventions. Table-related stuff goes
to tbl_*.php, db-related code to db_*.php, server-related
tools to server_*.php and so on.
- Please use gettext wrappers around all messages (
__('Some
text') or _ngettext() function). To translate them, you
need to call scripts/update-po script. To use translated
messages, call scripts/generate-mo, which generates binary
files read by Gettext.
- Jeśli chcesz być naprawdę pomocny, wpisz się do ChangeLogu.
-
The DBG extension (PHP Debugger DBG) is
now supported by phpMyAdmin for developers to better debug and profile their
code.
Please see the $cfg['DBG']*
configuration options for more information.
Ku pamięci Promu Kosmicznego Columbia (STS-107), który został utracony w
czasie wejścia w atomsferę Ziemi i ku pamięci dzielnych mężczyzn i kobiet,
którzy poświęcili życie dla mieszkańców Ziemi.
Copyright
Copyright (C) 1998-2000 Tobias Ratschiller <tobias_at_ratschiller.com>
Copyright (C) 2001-2012 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]
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2, as published by
the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51
Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Wyrazy uznania
Credits, in chronological order
- Tobias Ratschiller <tobias_at_ratschiller.com>
- creator of the phpmyadmin project
- maintainer from 1998 to summer 2000
- Marc Delisle <marc_at_infomarc.info>
- multi-language version in December 1998
- various fixes and improvements
- SQL analyser (most of it)
- current project maintainer
- Olivier Müller <om_at_omnis.ch>
- started SourceForge phpMyAdmin project in March 2001
- sync'ed different existing CVS trees with new features and bugfixes
- multi-language improvements, dynamic language selection
- many bugfixes and improvements
- Loïc Chapeaux <lolo_at_phpheaven.net>
- rewrote and optimized javascript, DHTML and DOM stuff
- rewrote the scripts so they fit the PEAR coding standards and generate XHTML1.0
and CSS2 compliant codes
- improved the language detection system
- many bugfixes and improvements
- Robin Johnson <robbat2_at_users.sourceforge.net>
- database maintenance controls
- table type code
- Host authentication IP Allow/Deny
- DB-based configuration (Not completed)
- SQL parser and pretty-printer
- SQL validator
- many bugfixes and improvements
- Armel Fauveau <armel.fauveau_at_globalis-ms.com>
- bookmarks feature
- multiple dump feature
- gzip dump feature
- zip dump feature
- Geert Lund <glund_at_silversoft.dk>
- various fixes
- moderator of the phpMyAdmin former users forum at phpwizard.net
- Korakot Chaovavanich <korakot_at_iname.com>
- "insert as new row" feature
- Pete Kelly <webmaster_at_trafficg.com>
- rewrote and fix dump code
- bugfixes
- Steve Alberty <alberty_at_neptunlabs.de>
- rewrote dump code for PHP4
- mySQL table statistics
- bugfixes
- Benjamin Gandon <gandon_at_isia.cma.fr>
- main author of the version 2.1.0.1
- bugfixes
- Alexander M. Turek <me_at_derrabus.de>
- MySQL 4.0 / 4.1 / 5.0 compatibility
- abstract database interface (PMA_DBI) with MySQLi support
- privileges administration
- XML exports
- various features and fixes
- German language file updates
- Mike Beck <mike.beck_at_web.de>
- automatic joins in QBE
- links column in printview
- Widok relacyjny
- Michal Čihař <michal_at_cihar.com>
- enhanced index creation/display feature
- feature to use a different charset for HTML than for MySQL
- improvements of export feature
- various features and fixes
- Czech language file updates
- Christophe Gesché from the "MySQL Form Generator for
PHPMyAdmin" (http://sf.net/projects/phpmysqlformgen/)
- suggested the patch for multiple table printviews
- Garvin Hicking <me_at_supergarv.de>
- built the patch for vertical display of table rows
- built the Javascript based Query window + SQL history
- Improvement of column/db comments
- (MIME)-Transformations for columns
- Use custom alias names for Databases in left frame
- hierarchical/nested table display
- PDF-scratchboard for
WYSIWYG-distribution of PDF
relations
- new icon sets
- vertical display of column properties page
- some bugfixes, features, support, German language additions
- Yukihiro Kawada <kawada_at_den.fujifilm.co.jp>
- japanese kanji encoding conversion feature
- Piotr Roszatycki <d3xter_at_users.sourceforge.net> and Dan Wilson
- the Cookie authentication mode
- Axel Sander <n8falke_at_users.sourceforge.net>
- table relation-links feature
- Maxime Delorme <delorme.maxime_at_free.fr>
- Olof Edlund <olof.edlund_at_upright.se>
- Ivan R. Lanin <ivanlanin_at_users.sourceforge.net>
- phpMyAdmin logo (until June 2004)
- Mike Cochrane <mike_at_graftonhall.co.nz>
- blowfish library from the Horde project
- Marcel Tschopp <ne0x_at_users.sourceforge.net>
- mysqli support
- many bugfixes and improvements
- Nicola Asuni (Tecnick.com)
- Michael Keck <mkkeck_at_users.sourceforge.net>
- redesign for 2.6.0
- phpMyAdmin sailboat logo (June 2004)
- Mathias Landhäußer
- Representation at conferences
- Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
- interface improvements
- various bugfixes
- Ivan A Kirillov
- Raj Kissu Rajandran (Google Summer of Code 2008)
- Piotr Przybylski (Google Summer of Code 2008, 2010 and 2011)
- improved setup script
- preferencje użytkownika
- Obsługa Drizzle
- Derek Schaefer (Google Summer of Code 2009)
- Alexander Rutkowski (Google Summer of Code 2009)
- Zahra Naeem (Google Summer of Code 2009)
- Tomáš Srnka (Google Summer of Code 2009)
- Muhammad Adnan (Google Summer of Code 2010)
- Eksport schematu relacyjnego do wielu formatów
- Lori Lee (Google Summer of Code 2010)
- Ulepszenia interfejsu użytkownika
- Edytor ENUM/SET
- Uproszczenie interfejsu do eksportu/importu
- Ninad Pundalik (Google Summer of Code 2010)
- Interfejs oparty na technologii AJAX
- Martynas Mickevičius (Google Summer of Code 2010)
- Barrie Leslie
- Obsługa strumieni BLOB z rorszerzeniem PBMS PHP
- Ankit Gupta (Google Summer of Code 2010)
- Program do zapytań wizualnych
- Rouslan Placella (Google Summer of Code 2011)
- Ulepszona obsługa rutyn przechowywania, wyzwalaczy i zdarzeń
- Aktualizacje tłumaczenia z języka włoskiego
Następujące osoby przyczyniły sie do mniejszych zmian, ulepszeń, eliminacji
błędów lub obsługi nowego języka, począwszy od wersji 2.10:
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".
Oryginalne podziękowania z wersji 2.1.0
This work is based on Peter Kuppelwieser's MySQL-Webadmin. It was his idea
to create a web-based interface to MySQL using PHP3. Although I have not
used any of his source-code, there are some concepts I've borrowed from
him. phpMyAdmin was created because Peter told me he wasn't going to further
develop his (great) tool.
Thanks go to
- Amalesh Kempf <ak-lsml_at_living-source.com> who contributed the code
for the check when dropping a table or database. He also suggested that you
should be able to specify the primary key on tbl_create.php3. To version
1.1.1 he contributed the ldi_*.php3-set (Import text-files) as well as a
bug-report. Plus many smaller improvements.
- Jan Legenhausen <jan_at_nrw.net>: He made many of the changes that
were introduced in 1.3.0 (including quite significant ones like the
authentication). For 1.4.1 he enhanced the table-dump feature. Plus
bug-fixes and help.
- Marc Delisle <DelislMa_at_CollegeSherbrooke.qc.ca> made phpMyAdmin
language-independent by outsourcing the strings to a separate file. He also
contributed the French translation.
- Alexandr Bravo <abravo_at_hq.admiral.ru> who contributed
tbl_select.php3, a feature to display only some columns from a table.
- Chris Jackson <chrisj_at_ctel.net> added support for MySQL functions
in tbl_change.php3. He also added the "Query by Example" feature
in 2.0.
- Dave Walton <walton_at_nordicdms.com> added support for multiple
servers and is a regular contributor for bug-fixes.
- Gabriel Ash <ga244_at_is8.nyu.edu> contributed the random access
features for 2.0.6.
The following people have contributed minor changes, enhancements, bugfixes
or support for a new language:
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.
And thanks to everyone else who sent me email with suggestions, bug-reports
and or just some feedback.
To tłumaczenie jest wspólną pracą różnych tłumaczy, którzy
pracowali nad tłumaczeniem, z języka angielskiego, dokumentacji phpMyAdmin
-- wersja 3.5.0-dev, na serwerze tłumaczeń
(Pootle). Właśnie tutaj powinni się oni podpisać: - Stanisław Krukowski,
Słownik
Z Wikipedii, wolnej encyklopedii
- .htaccess - domyślna
nazwa pliku konfiguracyjnego serwera Apache.
- Blowfish -
kluczowy, symetryczny szyfr blokowy, opracowany przez Bruce'a Schneier'a w
1993 roku.
- Browser (Web Browser)
- pol. przeglądarka (przeglądarka WWW); - program lub oprogramowanie,
przeznaczone do wyświetlania na monitorze tekstu, obrazów i innych
informacji, pobranych przez przeglądarkę ze stron WWW, a także do interakcji
z nimi.
- bzip2 - program i algorytm
do kompresji danych Wolnego Oprogramowania, opracowany przez Julian'a
Seward'a.
- CGI - Common Gateway
Interface - pol. wspólny interfejs bramy; - technologia WWW,
umożliwiająca klientowi przeglądarki internetowej komunikację pomiędzy
oprogramowaniem serwera, a innymi programami znajdującymi się na tym
serwerze.
- Changelog -
pol. dziennik zmian; - forma zapisu zmian dokonanych w projekcie aplikacji,
oprogramowania, strony WWW lub witryny internetowej.
- Client -
pol. klient; - system komputerowy, mający dostęp do usługi (zdalnej) na
innym komputerze za pomocą pewnego rodzaju sieci komputerowej.
- column -
pol. kolumna; prosty zestaw wartości danych, jeden dla każdego wiersza
tabeli.
- Cookie -
pol. "ciasteczko"; - pakiet informacji wysyłany przez serwer do przeglądarki
WWW, a następnie przesyłany przez przeglądarkę z powrotem do serwera za
każdym razem, gdy przeglądarka łączy się z tym serwerem.
- CSV - Comma
Separated Values - pol. wartości rozdzielone przecinkiem.
- DB - patrz: Database.
- Database
- pol. baza danych; - zorganizowany zbiór danych.
- Engine - patrz: Storage Engines.
- extension -
pol. rozszerzenie; - moduł języka PHP, rozszerzający PHP o dodatkową
funkcjonalność.
- FAQ - Frequently Asked
Questions - pol. często zadawane pytania; - lista podstawowych pytań i
odpowiedzi na określone tematy.
- Field
- pol. pole; - jedna część podzielonych danych lub kolumn.
- foreign key -
pol. klucz obcy; - identyfikuje kolumnę lub zestaw kolumn w jednej tabeli
odniesienia bazy danych, która odwołuje się do klucza podstawowego (primary
key) kolumny lub zestawu kolumn w innej tabeli odniesienia.
- FPDF - FreePDF - biblioteka PDF Wolnego
Oprogramowania.
- GD
Graphics Library - pol. biblioteka graficzna GD; - biblioteka do
dynamicznego przetwarzania obrazów, opracowana przez Thomas'a Boutell'a i
in.
- GD2 - patrz: GD Graphics Library.
- gzip - skrót od GNU zip;
program komputerowy służący do bezstratnej kompresji danych, tworzony w
ramach projektu Wolnego Oprogramowania GNU.
- host - dowolna maszyna,
uczestnicząca w wymianie danych poprzez sieć komputerową; węzeł posiadający
własną nazwę hosta.
- hostname - pol. nazwa
hosta; - unikatowa nazwa, dzięki której urządzenie podłączone do sieci
komputerowej jest rozpoznawane w tej sieci.
- HTTP -
HyperText Transfer Protocol - pol. protokół przesyłania dokumentów
hipertekstowych; - podstawowa, znormalizowana metoda używana do przesyłania
informacji oraz komunikowania się komputerów ze sobą w sieci WWW.
- https - połączenie HTTP z dodatkowymi
środkami bezpieczeństwa.
- IIS -
Internet Information Services - pol. internetowe usługi informacyjne; -
zestaw usług internetowych, uruchamianych na serwerach, pracujących w
systemie Microsoft Windows.
- Indexpol.
indeks; - cecha, która umożliwia szybki dostęp do wierszy w tabeli bazy
danych.
- Internet
Protocol - pol. protokół internetowy IP; - podstawowy protokół stosowany
w internecie, zorientowany na dane, używany przez host źródłowy i docelowy
do wzajemnego komunikowania się i przesyłania danych w sieci WWW.
- IP Address -
pol. Adres IP; -unikatowa liczba, używana przez urządzenia do identyfikacji
i wzajemnej komunikacji w sieci WWW, w oparciu o standard IP.
- ISAPI - Internet Server
Application Programming Interface - pol. interfejs programistyczny
serwerów internetowych; - API do internetowych usług informacyjnych
(Internet Information Services - IIS).
- ISP - Internet Service
Provider - pol. dostarczyciel usług internetowych; - firma lub
organizacja, która oferuje (sprzedaje) użytkownikom możliwość dostępu do
sieci internet i usług z tym związanych.
- JPEG - Joint
Photographic Experts Group - pol. połączona grupa ekspertów fotografii;
- standard kompresjii obrazów statycznych, najczęściej stosowany format
graficzny na stronach WWW.
- JPG - patrz: JPEG.
- Key - patrz: Index.
- LATEX
- system przygotowywania dokoumentów do składu tekstu w programie
TEX.
- Mac (Apple Macintosh) -
linia komputerów osobistych, zaprojektowana, zaprogramowana, wyprodukowana i
rozprowadzana na rynku komputerowym przez firmę Apple Macintosh.
- Mac OS - Mac Operating
System - pol. system operacyjny Mac X; - system operacyjny
dołączany do wszystkich wyprodukowanych komputerów firmy Apple Macintosh.
- MCrypt - biblioteka
szyfrująca.
- mcrypt - rozszerzenie MCrypt, używane w
języku PHP.
- MIME - Multipurpose Internet
Mail Extensions; - pol. rozszerzenie poczty elektronicznej wielorakich
zastosowań; - standard internetowy, umożliwiający dołączanie plików
binarnych do przesyłek poczty elektronicznej i określający budowę komunikatu
tej poczty.
- module - pol. moduł; -
rodzaj rozszerzenia do serwera WWW Apache.
- MySQL - wielowątkowy,
wieloużytkownikowy, wolnodostępny system zarzadzania relacyjnymi bazami
danych (Database Management System - DBMS), działający w oparciu o standard
strukturalnego języka zapytań (Structured Query Language - SQL).
- mysqli - ulepszone rozszerzenie języka
PHP, stosowane przez klienta MySQL.
- mysql - rozszerzenie języka PHP,
stosowane przez klienta MySQL.
- OpenDocument -
pol. otwartydokument; - otwartoźródłowy standard dokumentów biurowych.
- OS X - patrz: Mac OS X
- PDF -
pol. format dokumentu przenośnego; - format plików, opracowany w firmie
Adobe Systems, przeznaczony do wyświetlania/odwzorowywania/prezentacji
dokumentów dwuwymiarowych w formacie niezależnym od urządzeń i ich
rozdzielczości.
- PEAR - the PHP Extension and Application
Repository - pol. rozszerzenie języka PHP i repozytorium aplikacji.
- PCRE - Perl Compatible Regular Expressions
- pol. wyrażenia regularne zgodne z językiem Perl (Practical extraction and
report language).
- PHP - Hypertext Preprocessor
- PHP to otwartoźródłowy, obiektowy, skryptowy język programowania, służący
głównie do budowania aplikacji po stronie serwera i dynamicznych serwisów
WWW, a ostatnio - do tworzenia szerszego zakresu samodzielnych aplikacji,
np. pracujących w trybie graficznym.
- port -
połączenie, poprzez które są przesyłane i otrzymywane dane.
- RFC -
Request_for Comments - pol. żądanie (prośba) odpowiedzi (komentarzy); -
dokumenty mające formę memorandum, nakierowane na nowe badania, innowacje i
metodologie, używane w technologiach sieci internet.
- RFC 1952 - specyfikacja
formatu plików GZIP, wersja 4.3.
- Row (record,
tuple) - pol. rząd (rekord, krotka); - pojedyńczy, domniemany składnik
danych strukturalnych w tabeli.
- Server -
pol. serwer; - system komputerowy, dostarczający usług innym systemom
obliczeniowym poprzez sieć internet.
- Storage Engines
- pol. mechanizmy składowania; - programy do obsługi różnych typów tabel.
- socket -
pol. gniazdo; - forma komunikacji międzyprocesowej.
- SSL (Secure
Sockets Layer) - pol. bezpieczna warstwa gniazd; - protokół
kryptograficzny, dostarczający bezpiecznej komunikacji w sieci internet.
- Stored procedure
- pol. procedura składowania; - subrutyna dostępna aplikacjom, które
uzyskują dostep do systemu relacyjnych baz danych.
- SQL - Structured Query
Language - pol. strukturalny język zapytań - stosowany do tworzenia i
modyfikowania baz danych oraz do umieszczania i pobierania danych z baz.
- table -
pol. tabela; - zestaw elementów danych (komórek), zorganizowanych,
określonych i przechowywanych jako poziome rzędy i pionowe kolumny. Każdy
składnik tabeli może być unikatowo zidentyfikowany poprzez etykietę lub
klucz lub poprzez swoją pozycję w relacji do innych składników.
- Typ tabeli
- tar - the Tape
ARchive format - pol archiwizator taśmowy; - typ formatu archiwizacji
plików.
- TCP (Transmission Control
Protocol) - pol. protokół kontroli transmisji; - jeden z podstawowych
protokołów pakietu protokołów internetowych, stosowany do strumieniowej
komunikacji między dwoma komputerami.
- trigger -
pol. wyzwalacz; - kod proceduralny, wykonywany automatycznie w odpowiedzi na
pewne zdarzenia w określonej tabeli lub widoku w bazie danych.
- UFPDF - Unicode/UTF-8 rozszerzenie
do FPDF.
- URL (Uniform Resource
Locator) - pol. ujednolicony format adresowania zasobów; - sekwencja
znaków, zgodna ze standardowym formatem, używana w odniesieniu do zasobów
internetowych, takich jak dokumenty i obrazy. URL, w sposób unikatowy,
podaje lokalizacje tych zasobów w sieci komputerowej.
- Webserver -
pol. serwer WWW; - komputer (program) odpowiedzialny za akceptowanie żądań
HTTP od klientów i dostarczający im stron WWW.
- XML (Extensible Markup
Language) - pol. rozszerzalny jezyk znaczników; - rekomendowany przez
organizację W3C język znaczników ogólnego zastosowania, przeznaczony do
tworzenia języków znaczników specjalnego zastosowania; mozna w nim opisać
wiele różnych rodzajów danych.
- ZIP -
popularny format archiwizacji i kompresji danych.
- zlib - otwartoźródłowa,
międzyplatformowa bibliteka kompresji danych, opracowana przez Jean-Joup'a
Gailly'ego i Mark'a Adler'a.