phpMyAdmin’in Belgelerine Hoş Geldiniz!¶
İçindekiler:
Giriş¶
phpMyAdmin, MySQL veya MariaDB veritabanı sunucusunun yönetimini idare etmek amacıyla PHP’de yazılmış ücretsiz bir yazılım aracıdır. phpMyAdmin’i, bir veritabanı oluşturma, sorguları çalıştırma ve kullanıcı hesaplarını ekleme dahil olmak üzere çoğu yönetim görevini gerçekleştirmek için kullanabilirsiniz.
Desteklenen özellikler¶
Şu anda phpMyAdmin:
- veritabanları, tablolar, görünümler, sütunlar ve indeksler oluşturabilir, gözatabilir, düzenleyebilir ve kaldırabilir
- saklanan işlemler veya sorgular sayesinde çoklu sonuç gruplarını görüntüleyebilir
- veritabanlarını, tabloları, görünümleri, sütunları ve indeksleri oluşturabilir, kopyalayabilir, kaldırabilir ve değiştirebilir
- sunucu yapılandırmasındaki önerilerle sunucu, veritabanları ve tablolara bakım yapabilir
- herhangi bir SQL-ifadesini, hatta toplu sorguları çalıştırabilir, düzenleyebilir, işaretleyebilir
- tabloların içine metin dosyalarını yükleyebilir
- tablo dökümlerini okuyabilir ve oluşturabilir [1]
- veriyi çeşitli biçimlere aktarabilir [1]: CSV, XML, PDF, ISO/IEC 26300 - OpenDocument Metin ve Hesap Tablosu, Microsoft Word 2000 ve LATEX biçimleri
- XML, CSV ve SQL dosyalarının yanısıra OpenDocument hesap tablolarından veri ve MySQL yapılarını aktarabilir
- çoklu sunucuları yönetebilir
- MySQL kullanıcı hesapları ve yetkileri ekleyebilir, düzenleyebilir ve kaldırabilir
- MyISAM tablolarında veri tutarlılığını kontrol edebilir
- veritabanı düzeninizin PDF grafiklerini oluşturabilir
- veritabanında genel olarak ya da altkümesinde arama yapabilir
- depolanan veriyi imaj şeklindeki BLOB-verisi veya indirme bağlantısını görüntülemek gibi öntanımlı bir takım işlevler kullanarak herhangi bir biçime dönüştürebilir
- veritabanları, tablolar ve görünümlerdeki değişiklikleri izleyebilir
- InnoDB tablolarını ve dış anahtarları destekleyebilir
- gelişmiş MySQL uzantısı, mysqli’yi destekleyebilir, bakınız 1.17 phpMyAdmin hangi Veritabanı sürümlerini destekliyor?
- depolanan işlemleri ve işlevleri oluşturabilir, düzenleyebilir, çağırabilir, dışa aktarabilir ve kaldırabilir
- olayları ve tetikleyicileri oluşturabilir, düzenleyebilir, çağırabilir, dışa aktarabilir ve kaldırabilir
- 80 farklı dilde iletişim kurabilir
Kısayol tuşları¶
Şu anda phpMyAdmin aşağıdaki kısayolları destekler:
- k - Konsolu değiştir
- h - Ana sayfaya git
- s - Ayarları aç
- d + s - Veritabanı yapısına git (Veritabanıyla ilgli sayfada olduğunuz yerde verilen)
- d + f - Veritabanı ara (Veritabanıyla ilgli sayfada olduğunuz yerde verilen)
- t + s - Tablo yapısına git (Veritabanıyla ilgli sayfada olduğunuz yerde verilen)
- t + f - Tablo ara (Veritabanıyla ilgli sayfada olduğunuz yerde verilen)
- backspace - Eski sayfaya götürür.
Kullanıcılara dair bilgi¶
İş phpMyAdmin’e gelince birçok insan kullanıcı yönetimi kavramını anlamakta zorluk çeker. Kullanıcı phpMyAdmin’e oturum açtığında, kullanıcı adı ve parola doğrudan MySQL’e geçer. phpMyAdmin’in kendi başına hesap yönetimi yoktur (bunun dışında birde MySQL kullanıcı hesap bilgisine elle müdahaleye izin verir); tüm kullanıcılar geçerli MySQL kullanıcısı olmak zorundadır.
Dipnotlar
[1] | (1, 2) Eğer ZIP desteği (--with-zlib ) olan PHP kullanıyorsanız, phpMyAdmin (ZIP, GZip veya RFC 1952 biçimleri) dökümleri ve CSV dışa aktarımlarını sıkıştırabilir. Uygun destek aynı zamanda php.ini içinde değişiklik gerektirebilir. |
Gereksinimler¶
Web sunucusu¶
phpMyAdmin’in arayüzü tamamen tarayıcınıza dayandığından bu yana, phpMyAdmin’in dosyalarını içine yüklemek için bir web sunucusuna (Apache, nginx, IIS gibi) ihtiyacınız olacak.
PHP¶
Oturum
desteği, Standart PHP Kütüphanesi (SPL) uzantısı, hash, ctype, ve JSON desteği olan PHP 8.1.2 veya daha yenisine ihtiyacınız var.mbstring
uzantısı (bakınız mbstring) performans nedenlerinden dolayı şiddetle önerilir.- ZIP dosyalarının gönderiminin desteklenmesi için PHP
zip
uzantısına ihtiyacınız var. - PHP içinde JPEG’lerin (“image/jpeg: inline”) küçük resimlerini orijinal en-boy oranları ile hizada görüntülemek için GD2 desteğine ihtiyacınız var.
- Tanımlama bilgisi kimlik doğrulaması (varsayılan) kullanılırken, openssl uzantısı şiddetle önerilir.
- Gönderme ilerlemesi çubukları desteği için, bakınız 2.9 Gönderme ilerlemesi çubuğu görme.
- XML ve Open Document Hesap Tablosu içe aktarma desteği için libxml uzantısına ihtiyacınız var.
- Oturum açma sayfasında reCAPTCHA desteği için openssl uzantısına ihtiyacınız var.
- phpMyAdmin’in en son sürümünü görüntülemeyi desteklemek için
php.ini
’’ dosyanız içindeallow_url_open
parametresini etkinleştirmeniz ya da curl uzantısına sahip olmanız gerekir.
Database¶
phpMyAdmin MySQL uyumlu veritabanlarını destekler.
- MySQL 5.5 veya yenisi
- MariaDB 5.5 veya daha yenisi
Web tarayıcısı¶
phpMyAdmin’e erişmek için tanımlama bilgileri ve JavaScript etkinleştirilmiş bir web tarayıcısına ihtiyacınız var.
Bootstrap 4.5 ile desteklenen bir tarayıcıya ihtiyacınız var, <https://getbootstrap.com/docs/4.5/getting-started/browsers-devices/> adresine bakın.
5.2.0 sürümünde değişti: Bootstrap 5.0 ile desteklenen bir tarayıcıya ihtiyacınız var, <https://getbootstrap.com/docs/5.0/getting-started/browsers-devices/> adresine bakın.
Kurulum¶
phpMyAdmin MySQL veritabanı sunucusuna herhangi bir özel güvenlik yöntemi uygulamaz. Bu hala MySQL veritabanı sunucusu üzerinde doğru olarak izinleri veren sistem yöneticisinin işidir. phpMyAdmin’in Kullanıcılar sayfası bunun için kullanılabilir.
Linux dağıtımları¶
phpMyAdmin çoğu Linux dağıtımlarına dahildir. Mümkün olduğunca dağıtım paketlerinin kullanılması önerilir - genellikle dağıtımınıza bütünleştirme sağlarlar ve dağıtımınızdan güvenlik güncellemelerini otomatik olarak alırsınız.
Debian ve Ubuntu¶
Çoğu Debian ve Ubuntu sürümü bir phpMyAdmin paketi içerir, ancak yapılandırma dosyasının /etc/phpmyadmin
içinde korunduğundan haberiniz olsun ve bir şekilde resmi phpMyAdmin belgelerindekinden farklı olabilir. Özellikle, yaptığı:
- Web sunucusu yapılandırması (Apache ve lighttpd için çalışır).
- dbconfig-common kullanarak phpMyAdmin yapılandırma depolaması oluşturma.
- Kur betiğini güvene alma, bakınız Debian, Ubuntu ve türevleri üzerinde kur betiği.
Debian veya Ubuntu paketlerinin yüklenmesiyle ilgili daha belirli ayrıntılar viki’mizde mevcuttur.
Ayrıca bkz.
Daha fazla bilgi README.Debian içinde bulanabilir (Paket ile /usr/share/doc/phpmyadmin/README.Debian
olarak yüklenir).
OpenSUSE¶
OpenSUSE her zaman phpMyAdmin paketiyle gelir, sadece paketleri openSUSE Yapım Hizmetinden yükleyin.
Gentoo¶
Gentoo, phpMyAdmin paketini yollar, hem near-stock yapılandırmasında hem de webapp-config
yapılandırmasında. Yüklemek için emerge dev-db/phpmyadmin
kullanın.
Mandriva¶
Mandriva, contrib
dalının içinde phpMyAdmin paketini yollar ve herzamanki Denetim Merkezi aracılığıyla yüklenebilir.
Fedora¶
Fedora, phpMyAdmin paketini yollar, ancak yapılandırma dosyasının /etc/phpMyAdmin/
içinde korunduğundan haberiniz olsun ve bir şekilde resmi phpMyAdmin belgelerindekinden farklı olabilir.
Red Hat Enterprise Linux¶
Red Hat Enterprise Linux kendisi ve bu yüzden de CentOS gibi türevleri phpMyAdmin’i yollamaz, ama eğer etkinleştirilirse, Fedora-driven deposu Enterprise Linux için Fazladan Paketler (EPEL) yapar böylece. Ancak yapılandırma dosyasının /etc/phpMyAdmin/
içinde korunduğundan haberiniz olsun ve bir şekilde resmi phpMyAdmin belgelerindekinden farklı olabilir.
Windows’a yükleme¶
Windows’a phpMyAdmin’i yüklemenin en kolay yolu XAMPP gibi bir veritabanı ve web sunucusu ile birlikte olan phpMyAdmin’in dahil olduğu üçüncü taraf ürünleri kullanmaktır.
Buna benzer daha fazla seçenekleri Vikipedi’de bulabilirsiniz.
Git üzerinden yükleme¶
Git’ten yüklemek için birkaç desteklenen uygulamaya ihtiyacınız olacak:
- Kaynağı indirmek için Git ya da doğrudan Github’dan en son kaynağı indirebilirsiniz
- Composer
- Node.js (sürüm 14 veya daha yükseği)
- Yarn
phpMyAdmin kaynağını https://github.com/phpmyadmin/phpmyadmin.git
adresinden kopyalayabilirsiniz:
git clone https://github.com/phpmyadmin/phpmyadmin.git
İlave olarak Composer kullanarak şu bağımlıları yüklemeniz gerekir:
composer update
Eğer geliştirme niyetinde değilseniz, geliştirici araçlarını yüklemesini şunu çağırarak atlayabilirsiniz:
composer update --no-dev
Son olarak, bazı JavaScript bağımlılıklarını yüklemek için Yarn kullanmanız gerekecek:
yarn install --production
Composer kullanarak yükleme¶
Composer aracı kullanarak phpMyAdmin’i yükleyebilirsiniz, 4.7.0 sürümünden bu yana yayımlar otomatik olarak varsayılan Packagist deposuna yansıtılır.
Not
Composer deposu içeriği otomatik olarak yayımlardan ayrı olarak oluşturulur, bu yüzden tarball olarak indirdiğiniz ile içerik %100 aynı olmak zorunda değildir. Yine de hiçbir işlevsel farklılık olmamalıdır.
phpMyAdmin’i yüklemek için basitçe çalıştırın:
composer create-project phpmyadmin/phpmyadmin
Alternatif olarak <https://www.phpmyadmin.net/packages.json> adresinde mevcut olan ve yayımlanan tarball’ları içeren kendi composer depomuzu kullanabilirsiniz:
composer create-project phpmyadmin/phpmyadmin --repository-url=https://www.phpmyadmin.net/packages.json --no-dev
Docker kullanarak yükleme¶
phpMyAdmin, kolayca dağıtabileceğiniz bir Docker resmi imajı ile gelir. Şunu kullanarak indirebilirsiniz:
docker pull phpmyadmin
phpMyAdmin sunucusu 80 nolu bağlantı noktası üzerinde dinlenecek. Bu, ya phpMyAdmin için veritabanı kalıbınızı db
ye bağlayarak (--link your_db_host:db
belirterek) Docker’ın bağlantı özelliği ile ya da ortam değişkenleri ile veritabanı sunucusuna bağlantıyı yapılandırmanın birkaç yolunu destekler (bu durumda phpMyAdmin kalıbının ağ üzerinden veritabanı kalıbına erişmesine izin vermek için Docker’da ağ kurulumu size kalmış).
Docker ortam değişkenleri¶
Ortam değişkenlerini kullanarak birkaç phpMyAdmin özelliklerini yapılandırabilirsiniz:
-
PMA_ARBITRARY
¶ Oturum açma formunda bir veritabanı sunucu anamakine adını girmenize izin verir.
Ayrıca bkz.
-
PMA_HOST
¶ Kullanılacak veritabanı sunucusunun anamakine adı veya IP adresi.
Ayrıca bkz.
-
PMA_HOSTS
¶ Kullanılacak veritabanı sunucularının virgülle ayrılmış anamakine adları veya IP adresleri.
Not
Sadece eğer
PMA_HOST
boş ise kullanılır.
-
PMA_VERBOSE
¶ Veritabanı sunucusunun ayrıntılı adı.
Ayrıca bkz.
-
PMA_VERBOSES
¶ Virgülle ayrılmış veritabanı sunucularının ayrıntılı adı.
Not
Sadece eğer
PMA_VERBOSE
boş ise kullanılır.
-
PMA_USER
¶ Yapılandırma kimlik doğrulaması kipi için kullanılmak üzere kullanıcı adı.
-
PMA_PASSWORD
¶ Yapılandırma kimlik doğrulaması kipi için kullanılmak üzere parola.
-
PMA_PORT
¶ Kullanılacak veritabanı sunucusunun bağlantı noktası.
-
PMA_PORTS
¶ Kullanmak için virgülle ayrılmış veritabanı sunucularının bağlantı noktaları.
Not
Sadece eğer
PMA_PORT
boş ise kullanılır.
-
PMA_SOCKET
¶ Veritabanı bağlantısı için soket dosyası.
-
PMA_SOCKETS
¶ Veritabanı bağlantıları için soket dosyalarının virgülle ayrılmış listesi.
Not
Sadece
PMA_SOCKET
boş ise kullanılır.
-
PMA_ABSOLUTE_URI
¶ Ters proksinin phpMyAdmin’i kullanılır yaptığı tam tanımlanmış yol (
https://pma.ornek.net/
).Ayrıca bkz.
-
PMA_QUERYHISTORYDB
¶ true olarak ayarlandığında, SQL geçmişinin
$cfg['Servers'][$i]['pmadb']
konumuna depolanmasını sağlar. false olduğunda, geçmiş tarayıcıda saklanır ve oturum kapatıldığında temizlenir.Ayrıca bkz.
Ayrıca bkz.
-
PMA_QUERYHISTORYMAX
¶ Bir tamsayıya ayarlandığında, geçmiş öğelerinin sayısını denetler.
Ayrıca bkz.
-
PMA_CONTROLHOST
¶ Ayarlandığında, bu, “phpMyAdmin yapılandırma depolaması” veritabanını depolamak için kullanılan alternatif bir veritabanı anamakinesini işaret eder.
Ayrıca bkz.
-
PMA_CONTROLUSER
¶ “phpMyAdmin yapılandırma depolaması” veritabanı için kullanılacak phpMyAdmin’in kullanıcı adını tanımlar.
Ayrıca bkz.
-
PMA_CONTROLPASS
¶ “phpMyAdmin yapılandırma depolaması” veritabanı için kullanılacak phpMyAdmin parolasını tanımlar.
Ayrıca bkz.
-
PMA_CONTROLPORT
¶ Ayarlandığında, denetim anamakinesine bağlanmak için varsayılan bağlantı noktasını (3306) geçersiz kılacak.
Ayrıca bkz.
-
PMA_PMADB
¶ Ayarlandığında, “phpMyAdmin yapılandırma depolaması” veritabanı için kullanılacak veritabanının adını tanımlayın. Ayarlanmadığında, gelişmiş özellikler varsayılan olarak etkinleştirilmez: bunlar kullanıcı tarafından Sıfır yapılandırma özelliği ile oturum açıldığında hala potansiyel olarak etkinleştirilebilir.
Not
Önerilen değerler: phpmyadmin veya pmadb
Ayrıca bkz.
-
HIDE_PHP_VERSION
¶ Tanımlanırsa, bu seçenek PHP sürümünü gizleyecektir (expose_php = Off). Herhangi bir değere ayarlayın (HIDE_PHP_VERSION=true gibi).
-
UPLOAD_LIMIT
¶ Ayarlanırsa, bu seçenek apache ve php-fpm için varsayılan değeri geçersiz kılacaktır (bu
upload_max_filesize
vepost_max_size
değerlerini değiştirecektir).Not
[0-9+](K,M,G) olarak biçimlendirin. Varsayılan değer 2048K’dır
-
MEMORY_LIMIT
¶ Eğer ayarlanırsa, bu seçenek phpMyAdmin bellek sınırını
$cfg['MemoryLimit']
ve PHP’nin memory_limit değerini geçersiz kılacak.Not
[0-9+](K,M,G) olarak biçimlendirin; burada K Kilobayt, M Megabayt, G Gigabayt ve 1K = 1024 bayt’tır. Varsayılan değer 512M’dir.
-
MAX_EXECUTION_TIME
¶ Eğer ayarlanırsa, bu seçenek phpMyAdmin
$cfg['ExecTimeLimit']
ve PHP’nin max_execution_time değeri için saniye olarak en fazla yürütme süresini geçersiz kılacak.Not
[0-9+] olarak biçimlendirin. Varsayılan değer 600’dür.
-
PMA_CONFIG_BASE64
¶ Ayarlanırsa, bu seçenek değişkenin base64 kodu çözülmüş içeriği ile varsayılan config.inc.php dosyasının üzerine yazacaktır.
-
PMA_USER_CONFIG_BASE64
¶ Ayarlanırsa, bu seçenek değişkenin base64 kodu çözülmüş içeriği ile varsayılan config.user.inc.php dosyasının üzerine yazacaktır.
-
PMA_UPLOADDIR
¶ Ayarlanırsa, bu seçenek dosyaların içe aktarılmak üzere kaydedilebileceği yolu ayarlayacaktır (
$cfg['UploadDir']
)
-
PMA_SAVEDIR
¶ Ayarlanırsa, bu seçenek dışa aktarılan dosyaların kaydedilebileceği yolu ayarlayacaktır (
$cfg['SaveDir']
)
-
APACHE_PORT
¶ Ayarlanırsa, bu seçenek ayrıcalıksız bir bağlantı noktası gibi farklı bir bağlantı noktasında çalışmasını istemeniz durumunda, varsayılan Apache bağlantı noktasını (80) değiştirir. Herhangi bir bağlantı noktası değerine ayarlayın (APACHE_PORT=8090 gibi).
Varsayılan olarak, Tanımlama bilgisi kimlik doğrulaması kipi kullanılır, ancak eğer PMA_USER
ve PMA_PASSWORD
ayarlanırsa, Yapılandırma kimlik doğrulaması kipi olarak değiştirilir.
Not
Oturum açmak için ihtiyacınız olan kimlik bilgileri MySQL sunucusu içinde saklanır, Docker imajı durumunda, ayarlamak için çeşitli yollar vardır (örneğin MySQL kalıbını başlatma sırasında MYSQL_ROOT_PASSWORD
). Lütfen MariaDB kalıbı veya MySQL kalıbı için belgeleri kontrol edin.
Yapılandırmayı özelleştirme¶
İlave olarak yapılandırma /etc/phpmyadmin/config.user.inc.php
ile ayarlanabilir. Eğer bu dosya mevcutsa, yapılandırma yukarıdaki ortam değişkenlerinden oluşturulduktan sonra yüklenecektir, böylece herhangi bir yapılandırma değişkenini geçersiz kılabilirsiniz. Bu yapılandırma, -v /some/local/directory/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php parametreleri kullanılarak docker çağrıldığında bir birim olarak eklenebilir.
Sağlanan yapılandırma dosyasının Docker ortam değişkenleri’inden sonra uygulandığını unutmayın, ancak değerlerden herhangi birini geçersiz kılabilirsiniz.
Örneğin CSV dosyasının dışa aktarımının varsayılan davranışını değiştirmek için aşağıdaki yapılandırma dosyasını kullanabilirsiniz:
<?php
$cfg['Export']['csv_columns'] = true;
Docker ortam değişkenleri içinde listelenen ortam değişkenlerini kullanmak yerine ayrıca bunu sunucu yapılandırmasını tanımlamak için kullanabilirsiniz:
<?php
/* Override Servers array */
$cfg['Servers'] = [
1 => [
'auth_type' => 'cookie',
'host' => 'mydb1',
'port' => 3306,
'verbose' => 'Verbose name 1',
],
2 => [
'auth_type' => 'cookie',
'host' => 'mydb2',
'port' => 3306,
'verbose' => 'Verbose name 2',
],
];
Ayrıca bkz.
Yapılandırma seçeneklerinin ayrıntılı açıklaması için Yapılandırma’ya bakın.
Docker Birimleri¶
Görüntü davranışını özelleştirmek için aşağıdaki birimleri kullanabilirsiniz:
/etc/phpmyadmin/config.user.inc.php
Ek ayarlar için kullanılabilir, daha fazla ayrıntı için önceki bölüme bakın.
/sessions/
PHP oturumlarının depolandığı dizin. Bunu paylaşmak isteyebilirsiniz örneğin Oturumu Açma kimlik doğrulaması kipi kullanırken.
/www/themes/
phpMyAdmin’in temaları arayacağı dizin. Varsayılan olarak sadece phpMyAdmin ile gelen bunlar dahildir, ancak Docker birimlerini kullanarak ilave phpMyAdmin temaları (bakınız Özel Temalar) ekleyebilirsiniz.
Docker Örnekleri¶
Verilen bir sunucuyu kullanmak üzere phpMyAdmin’i bağlamak için:
docker run --name phpmyadmin -d -e PMA_HOST=dbhost -p 8080:80 phpmyadmin:latest
Daha fazla sunucuyu kullanmak üzere phpMyAdmin’i bağlamak için:
docker run --name phpmyadmin -d -e PMA_HOSTS=dbhost1,dbhost2,dbhost3 -p 8080:80 phpmyadmin:latest
Gelişigüzel sunucu seçeneğini kullanmak için:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 -e PMA_ARBITRARY=1 phpmyadmin:latest
Ayrıca Docker kullanarak veritabanı kalıbını bağlayabilirsiniz:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 phpmyadmin:latest
İlave yapılandırma ile çalışma:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 -v /some/local/directory/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php phpmyadmin:latest
İlave temalar ile çalışma:
docker run --name phpmyadmin -d --link mysql_db_server:db -p 8080:80 -v /some/local/directory/custom/phpmyadmin/themeName/:/var/www/html/themes/themeName/ phpmyadmin:latest
Docker-compose kullanma¶
Alternatif olarak, ayrıca <https://github.com/phpmyadmin/docker> adresinden docker-compose.yml dosyası ile docker-compose kullanabilirsiniz. Bu, oturum açma sayfasında MySQL/MariaDB sunucusunu belirlemenize izin veren - gelişigüzel bir sunucu ile phpMyAdmin’i çalıştıracak.
docker compose up -d
Docker-compose kullanarak yapılandırma dosyasını özelleştirme¶
phpMyAdmin yapılandırmasını özelleştirmek için harici bir dosya kullanabilir ve birimler yönergesini kullanarak bunu geçebilirsiniz:
phpmyadmin:
image: phpmyadmin:latest
container_name: phpmyadmin
environment:
- PMA_ARBITRARY=1
restart: always
ports:
- 8080:80
volumes:
- /sessions
- ~/docker/phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php
- /custom/phpmyadmin/theme/:/www/themes/theme/
Ayrıca bkz.
Bir alt dizinde haproksi arkasında çalışma¶
Bir alt dizinde bir Docker kalıbı içinde phpMyAdmin’i çalışır bırakmak istediğinizde, sunucu proksi isteklerindeki istek yolunu yeniden yazmanız gerekir.
Örneğin, haproksi kullanarak aşağıdaki gibi yapılabilir:
frontend http
bind *:80
option forwardfor
option http-server-close
### NETWORK restriction
acl LOCALNET src 10.0.0.0/8 192.168.0.0/16 172.16.0.0/12
# /phpmyadmin
acl phpmyadmin path_dir /phpmyadmin
use_backend phpmyadmin if phpmyadmin LOCALNET
backend phpmyadmin
mode http
reqirep ^(GET|POST|HEAD)\ /phpmyadmin/(.*) \1\ /\2
# phpMyAdmin container IP
server localhost 172.30.21.21:80
Traefik kullanırken, aşağıdaki gibi bir şeyin çalışması gerekir:
defaultEntryPoints = ["http"]
[entryPoints]
[entryPoints.http]
address = ":80"
[entryPoints.http.redirect]
regex = "(http:\\/\\/[^\\/]+\\/([^\\?\\.]+)[^\\/])$"
replacement = "$1/"
[backends]
[backends.myadmin]
[backends.myadmin.servers.myadmin]
url="http://internal.address.to.pma"
[frontends]
[frontends.myadmin]
backend = "myadmin"
passHostHeader = true
[frontends.myadmin.routes.default]
rule="PathPrefixStrip:/phpmyadmin/;AddPrefix:/"
O zaman sizde docker-compose yapılandırması içinde PMA_ABSOLUTE_URI
parametresini belirlemelisiniz:
version: '2'
services:
phpmyadmin:
restart: always
image: phpmyadmin:latest
container_name: phpmyadmin
hostname: phpmyadmin
domainname: example.com
ports:
- 8000:80
environment:
- PMA_HOSTS=172.26.36.7,172.26.36.8,172.26.36.9,172.26.36.10
- PMA_VERBOSES=production-db1,production-db2,dev-db1,dev-db2
- PMA_USER=root
- PMA_PASSWORD=
- PMA_ABSOLUTE_URI=http://example.com/phpmyadmin/
IBM Bulut¶
Kullanıcılarımızdan biri, phpMyAdmin’i IBM Bulut platformuna yüklemek için yararlı bir rehber oluşturdu.
Hızlı Yükleme¶
- Phpmyadmin.net İndirme sayfasından uygun dağıtım malzemesini seçin. Bazı malzemeler sadece İngilizce iletileri içerir, diğerleri tüm dilleri içerir. Adı
phpMyAdmin-x.x.x-all-languages.tar.gz
gibi görünen bir malzeme seçtiğinizi varsayacağız. - Hakiki bir arşiv indirdiğinizden emin olun, bakınız phpMyAdmin yayımlarını doğrulama.
- Dağıtımı untar veya unzip ile çıkartın (altdizinleri çıkarttığınızdan emin olun): web sunucunuzun belge kök dizini içinde
tar -xzvf phpMyAdmin_x.x.x-all-languages.tar.gz
. Eğer belge kök dizininize doğrudan erişiminiz yoksa, dosyaları yerel makinenizdeki dizine koyun ve sonra adım 4’te, örneğin FTP kullanarak dizini web sunucunuza aktarın. - Tüm betiklerin kendine özgü sahibi olduğundan emin olun (eğer PHP güvenli kipte çalışıyorsa, sahibi diğer betiklerin sahibinden farklı olan bazı betikler sorun olacaktır). Öneriler için bakınız 4.2 phpMyAdmin’ni kötü niyetli erişime karşı güvenli yapmanın tercih edilen yolu nedir? ve 1.26 phpMyAdmin’i henüz IIS’nin belge kök klasörü içine kurdum ama phpMyAdmin’i çalıştırmayı denediğimde “Belirtilmiş girdi dosyası yok” hatası alıyorum..
- Şimdi kurulumunuzu yapılandırmalısınız. Bunun kullanılabileceği iki yöntem vardır. Geleneksel olarak kullanıcılar
config.inc.php
dosyasını elle düzenlerler, ama artık grafiksel kurulumu tercih edenler için sihirbaz stilinde kur betiği sağlanmıştır.config.inc.php
dosyası oluşturmak, başlamak için gereken hala hızlı bir yoldur ve bazı gelişmiş özellikler için gereklidir.
Dosyayı el ile oluşturma¶
El ile dosya oluşturmak için basitçe ana (en üst seviyede) phpMyAdmin dizini (index.php
dosyasını içeren yerde) içinde config.inc.php
(küçük bir yapılandırma dosyasına sahip olmak için config.sample.inc.php
dosyasını kopyalayabilirsiniz) dosyası oluşturmak için metin düzenleyicinizi kullanın. phpMyAdmin ilk varsayılan yapılandırma değerlerini yükler ve ondan sonra config.inc.php
dosyasında bulduğu herşeyle birlikte bu değerleri geçersiz kılar. Eğer varsayılan değer belirli ayar için tamamsa, config.inc.php
dosyası içine dahil etmeye gerek yoktur. İlerlemek için mutemelen sadece birkaç yönergeye ihtiyacınız olacaktır; bunun gibi görünen basit bir yapılandırma:
<?php
// The string is a hexadecimal representation of a 32-bytes long string of random bytes.
$cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
$i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
// if you insist on "root" having no password:
// $cfg['Servers'][$i]['AllowNoPassword'] = true;
Veya oturum açtığınız her seferde sormamasını tercih ediyorsanız:
<?php
$i=0;
$i++;
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'changeme'; // use here your password
$cfg['Servers'][$i]['auth_type'] = 'config';
Uyarı
Herkesin veritabanınızı işleyebildiğinden yapılandırmada saklanan parolalar güvenli değildir.
Olası yapılandırma değerlerinin tam açıklaması için bu belgenin Yapılandırma bölümüne bakın.
Kur betiği kullanımı¶
config.inc.php
dosyasını el ile düzenlemek yerine phpMyAdmin’in kur özelliğini kullanabilirsiniz. Kuru kullanarak dosya oluşturulabilir ve sunucuya göndermek için indirebilirsiniz.
Sonra, tarayıcınızı açın ve /setup
soneki ile, phpMyAdmin’i yüklediğiniz yerdeki konumu ziyaret edin. Değişiklikler sunucuya kaydedilmez, bilgisayarınıza kaydetmek için İndir düğmesini kullanmanız gerekir ondan sonra sunucuya gönderin.
Artık dosya kullanıma hazır. Eğer kur betiğinin sağlamadığı bazı gelişmiş seçenekleri ayarlamayı tercih ederseniz, beğendiğiniz düzenleyicinizle dosyayı gözden geçirebilir ya da düzenleyebilirsiniz.
- Eğer
auth_type
“yapılandırması” kullanıyorsanız, phpMyAdmin kurulum dizinini korumanız önerilir çünkü kullanılan yapılandırma kullanıcının phpMyAdmin kurulumuna erişmesi için parola girmesini gerektirmez. Alternatif kimlik doğrulaması yönteminin kullanılması önerilir, örneğin .htaccess dosyasındaki HTTP–AUTH ile ya daauth_type
tanımlama bilgisi veya http kullanımına geçmek. İlave bilgiler için bakınız ISP’ler, çoklu kullanıcı kurulumları, özellikle 4.4 HTTP kimlik doğrulaması kullanırken phpMyAdmin sürekli “Erişim reddedildi” uyarısı veriyor.. - Tarayıcınızda ana phpMyAdmin dizinini açın. phpMyAdmin artık karşılama ekranını ve veritabanınızı ya da HTTP veya tanımlama bilgisi kimlik doğrulaması kipi kullanılıyorsa oturum açma iletisi görüntülemelidir.
Debian, Ubuntu ve türevleri üzerinde kur betiği¶
Debian ve Ubuntu, kur betiğinin etkinleştirilmesi ve etkisizleştirilmesi yolunu değiştirdi, bir bakıma bunlardan biri için tek komut çalıştırılmak zorundadır.
Yapılandırmayı düzenlemeye izin veren çalıştırma:
/usr/sbin/pma-configure
Yapılandırmayı düzenlemeyi engelleyen çalıştırma:
/usr/sbin/pma-secure
openSUSE üzerinde kur betiği¶
Bazı openSUSE yayımları kur betiğini pakete dahil etmez. Bunlar üzerinde yapılandırma oluşturmak istediğiniz takdirde orijinal paketi <https://www.phpmyadmin.net/> adresinden ya indirebilir ya da tanıtım sunucumuzdaki kur betiğini kullanabilirsiniz: <https://demo.phpmyadmin.net/master/setup/>.
phpMyAdmin yayımlarını doğrulama¶
Temmuz 2015 yılından bu yana tüm phpMyAdmin yayımlarını şifreli olarak Ocak 2016’ya kadar imzalayan yayımlama geliştiricisi Marc Delisle’di. Anahtar kimliği 0xFEFC65D181AF644A, PGP parmak izi:
436F F188 4B1A 0C3F DCBF 0D79 FEFC 65D1 81AF 644A
ve daha fazla kimlik bilgisini <https://keybase.io/lem9> adresinden alabilirsiniz.
Ocak 2016 başından itibaren, yayım yöneticisi Isaac Bennetch’dir. Anahtar kimliği 0xCE752F178259BD92, ve PGP parmak izi:
3D06 A59E CE73 0EB7 1B51 1C17 CE75 2F17 8259 BD92
ve daha fazla kimlik bilgisini <https://keybase.io/ibennetch> adresinden alabilirsiniz.
Bazı ilave indirmeler (örneğin temalar) Michal Čihař tarafından imzalanmış olabilir. Anahtar kimliği 0x9C27B31342B7511D, ve PGP parmak izi:
63CB 1DF1 EF12 CF2A C0EE 5A32 9C27 B313 42B7 511D
ve daha fazla kimlik bilgisini <https://keybase.io/nijel> adresinden alabilirsiniz.
İndirdiğiniz arşiv ile eşleşen imzayı doğrulamalısınız. Bu yolla yayımlanmış aynı kodu kullandığınızdan emin olabilirsiniz. Ayrıca en son sürümü indirdiğinizden emin olmak için imzalanma tarihini doğrulamalısınız.
Her arşiv, PGP imzası içeren .asc
dosyaları ile eşlik eder. İkisine birden aynı klasörde sahip oldunuz mu, imzayı doğrulayabilirsiniz:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: Can't check signature: public key not found
Gördüğünüz gibi gpg, ortak anahtarı bilmediğinden yakınır. Bu noktada, aşağıdaki adımlardan birini yapmalısınız:
- İndirme sunucumuzdan anahtar demetini indirin, ondan sonra şununla içe aktarın:
$ gpg --import phpmyadmin.keyring
- Anahtar sunucularımızın birinden anahtarı indirin ve içe aktarın:
$ gpg --keyserver hkp://pgp.mit.edu --recv-keys 3D06A59ECE730EB71B511C17CE752F178259BD92
gpg: requesting key 8259BD92 from hkp server pgp.mit.edu
gpg: key 8259BD92: public key "Isaac Bennetch <bennetch@gmail.com>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
Bu durumu biraz iyileştirecek - bu noktada, verilen anahtardan gelen imzanın doğru olduğunu doğrulayabilirsiniz ancak hala anahtar içinde kullanılan ada güvenemezsiniz:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: Good signature from "Isaac Bennetch <bennetch@gmail.com>"
gpg: aka "Isaac Bennetch <isaac@bennetch.org>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 3D06 A59E CE73 0EB7 1B51 1C17 CE75 2F17 8259 BD92
Buradaki sorun herhangi bir kimsenin bu isimde olan anahtarla sorunu olabilir. Aslında anahtarın söz konusu kişi tarafından sahiplenildiğinden emin olmanız gerekir. GNU Gizlilik El Kitabı Validating other keys on your public keyring (Ortak anahtar demetinizdeki diğer anahtarları doğrulama) bölümünde bu konuyu kapsar. En güvenilir yöntem geliştirici ile bizzat tanışmak ve anahtar parmak izlerini takas etmektir, ancak, aynı zamanda güvenli web’e güvenebilirsiniz. Bu yolla başkalarının imzaları aracılığıyla geçişli olarak anahtara güvenebilirsiniz.
Anahtar güvenilir olduğunda, uyarı görülmeyecek:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: Good signature from "Isaac Bennetch <bennetch@gmail.com>" [full]
İmza geçersiz olmalıdır (arşiv değiştirildi), anahtarın güvenilir olması ya da olmaması gerçeğine bakılmaksızın açık bir hata alırsınız:
$ gpg --verify phpMyAdmin-4.5.4.1-all-languages.zip.asc
gpg: Signature made Fri 29 Jan 2016 08:59:37 AM EST using RSA key ID 8259BD92
gpg: BAD signature from "Isaac Bennetch <bennetch@gmail.com>" [unknown]
phpMyAdmin yapılandırma depolaması¶
3.4.0 sürümünde değişti: phpMyAdmin 3.4.0 öncesinde bu Bağlantılı Tablolar Altyapısı olarak adlandırılırdı, ancak adı genişletilmiş depolama kapsamından dolayı değiştirildi.
İlave özelliklerin (Yer işaretleri, açıklamalar, SQL-geçmişi, izleme mekanizması, PDF-üretme, Dönüşümler, İlişkiler vb.) bütün grubu için özel tablo grubu oluşturmanız gerekir. Bu tablolar kendi veritabanınıza veya çoklu kullanıcılı kurulumlar (bu veritabanına, denetim kullanıcısı tarafından erişilebilecektir bu yüzden diğer hiçbir kullanıcı bu hakka sahip olmamalıdır) için merkezi veritabanına yerleştirilebilir.
Sıfır yapılandırma¶
Çoğu durumda, bu veritbanı yapısı otomatik olarak oluşturulabilir ya da yapılandırılabilir. Buna “Sıfır Yapılandırma” kipi denir ve özellikle paylaşılan barındırma durumlarında faydalı olabilir. “ZeroConf” kipi varsayılan olarak açıktır, etkisizleştirmek için $cfg['ZeroConf']
parametresini false olarak ayarlayın.
Aşağıdaki üç senaryo Sıfır Yapılandırma kipi tarafından ele alınmaktadır:
- Yapılandırma depolama tablolarının mevcut olmadığı bir veritabanına girerken, phpMyAdmin bunları İşlemler sekmesinden oluşturmanıza olanak sunar.
- Tabloları zaten mevcut olan bir veritabanına girildiğinde, yazılım otomatik olarak bunu algılar ve bunları kullanmaya başlar. Bu en yaygın bir durumdur; tablolar otomatik olarak başlangıçta oluşturulduktan sonra sürekli olarak kullanıcıyı rahatsız etmeden kullanılır; bu ayrıca, kullanıcının
config.inc.php
dosyasını düzenlemesi mümkün olmayan paylaşılan barındırmada çok faydalıdır ve genellikle kullanıcının sadece bir veritabanına erişimi vardır. - Çoklu veritabanlarına erişilirken, eğer kullanıcı yapılandırma depolaması tablolarını içeren veritabanına ilk defa giriyorsa ondan sonra başka bir veritabanına geçerse, phpMyAdmin ilk veritabanından tabloları kullanmaya devam eder; kullanıcıya yeni veritabanında daha fazla tablo oluşturması için sorulmaz.
Elle yapılandırma¶
Lütfen ./sql/
dizininize bakın, create_tables.sql adındaki dosyayı burada bulmalısınız. (Eğer Windows sunucusu kullanıyorsanız, 1.23 Win32 makinede MySQL çalıştırıyorum. Her defasında yeni bir tablo oluşturduğumda tablo ve sütun adları küçük harfe değiştiriliyor! konusuna özellikle dikkat edin).
Eğer zaten bu altyapıya sahipseniz ve:
- MySQL 4.1.2 veya yenisine yükseltmişseniz, lütfen
sql/upgrade_tables_mysql_4_1_2+.sql
dosyasını kullanın. - 2.5.0 veya yenisinden, phpMyAdmin 4.3.0 veya yenisine (<= 4.2.x) yükseltmişseniz, lütfen
sql/upgrade_column_info_4_3_0+.sql
dosyasını kullanın. - 4.3.0 veya yenisinden, phpMyAdmin 4.7.0 veya yenisine yükseltmişseniz, lütfen
sql/upgrade_tables_4_7_0+.sql
dosyasını kullanın.
ve ondan sonra sql/create_tables.sql
dosyasını içe aktararak yeni tabloları oluşturun.
phpMyAdmin’ninizi sizin için tablo oluşturmada kullanabilirsiniz. Lütfen veritabanları ve tablolar oluşturmak için özel (yönetici) yetkilere ihtiyacınız olduğunun farkında olun ve bu betiğin veritabanının adına bağlı olarak bazı ayarlamalara ihtiyacı olabilir.
sql/create_tables.sql
dosyası içe aktarıldıktan sonra config.inc.php
dosyanız içindeki tablo adlarını belirlemelisiniz. Bunun için kullanılan yönergeler Yapılandırma içinde bulunabilir.
Ayrıca bu tablolar için uygun hakları olan bir denetim kullancısına ($cfg['Servers'][$i]['controluser']
ve $cfg['Servers'][$i]['controlpass']
ayarları) ihtiyacınız olacak. Örneğin aşağıdaki ifadeyi kullanarak oluşturabilirsiniz:
Ve herhangi bir MariaDB sürümü için:
CREATE USER 'pma'@'localhost' IDENTIFIED VIA mysql_native_password USING 'pmapass';
GRANT SELECT, INSERT, UPDATE, DELETE ON `<pma_db>`.* TO 'pma'@'localhost';
MySQL 8.0 ve daha yenisi için:
CREATE USER 'pma'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'pmapass';
GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';
8.0’dan daha eski MySQL için:
CREATE USER 'pma'@'localhost' IDENTIFIED WITH mysql_native_password AS 'pmapass';
GRANT SELECT, INSERT, UPDATE, DELETE ON <pma_db>.* TO 'pma'@'localhost';
7.4’ten daha eski PHP ve 8.0’dan daha yeni MySQL kurulumlarının mysql_native_password kimlik doğrulamasını geçici çözüm olarak kullanmayı gerektirebileceğini unutmayın, ayrıntılar için bakınız 1.45 Oturum açmaya çalışırken bilinmeyen kimlik doğrulama yöntemi caching_sha2_password hakkında bir hata iletisi alıyorum .
Eski sürümden yükseltme¶
Uyarı
Yeni sürüm paketini asla phpMyAdmin’in varolan bir kurulumu üzerine çıkartmayın, her zaman önce sadece yapılandırma dosyalarını tutarak eski dosyaları silin.
Bu şekilde, ciddi güvenlik çıkarımlarına veya çeşitli kırılmalara neden olabilen, dizinde herhangi bir eski veya güncel olmayan dosya bırakmayacaksınız.
Yeni açılmış olan paket içine önceki kurulumunuzdan config.inc.php
dosyasını basitçe kopyalayın. Eski sürümden alınan yapılandırma dosyası, bazı değişmiş veya kaldırılmış seçeneklerinden dolayı bazı ince ayarlar gerektirebilir. PHP 5.3 ve sonrası ile uyumluluk için yapılandırma dosyanızın en sonunda bulabileceğiniz set_magic_quotes_runtime(0);
ifadesini kaldırın.
Tam yükseltme birkaç basit adımda gerçekleştirilebilir:
- En son phpMyAdmin sürümünü <https://www.phpmyadmin.net/downloads/> adresinden indirin.
- Varolan phpMyAdmin klasörünü yeniden adlandırın (örneğin
phpmyadmin-eski
). - Yeni indirilmiş phpMyAdmin paketini istenen konuma açın (örneğin
phpmyadmin
). config.inc.php`
dosyasını eski konumundan (phpmyadmin-eski
) yeni olan konumuna (phpmyadmin
) kopyalayın.- Her şeyin düzgün çalışıp çalışmadığını deneyin.
- Bir önceki sürümün yedeğini kaldırın (
phpmyadmin-eski
).
Eğer önceki 4.1.2 sürümünden 5.x veya daha yeni sürümüne MySQL sunucunuzu yükselttiyseniz ve phpMyAdmin yapılandırma depolaması kullanıyorsanız, sql/upgrade_tables_mysql_4_1_2+.sql
içinde bulunan SQL betiğini çalıştırmalısınız.
Eğer phpMyAdmin’inizi 2.5.0 veya yenisinden 4.3.0 veya yenisine (<= 4.2.x) yükselttiyseniz ve phpMyAdmin yapılandırma depolaması kullanıyorsanız, sql/upgrade_column_info_4_3_0+.sql
içinde bulunan SQL betiğini çalıştırmalısınız.
Tarayıcı önbelleğini temizlemeyi ve oturumu kapatıp ve tekrar oturum açarak eski oturumu boşaltmayı unutmayın.
Kimlik doğrulaması kipleri kullanımı¶
Kullanıcılara kendi veritabanlarına erişim vermek istediğiniz ve diğerleri ile oynamalarını istemediğiniz çoklu kullanıcılı ortam içinde HTTP ve tanımlama bilgisi kimlik doğrulaması kipleri önerilir. Yine de, MS Internet Explorer’ın tanımlama bilgileri ile ilgili olarak gerçekten hatalı göründüğünün farkında olun, en azından sürüm 6’ya kadar. Hatta tekli kullanıcılı ortam içinde bile, HTTP veya tanımlama bilgisi kimlik doğrulaması kipini kullanmayı tercih edebilirsiniz böylece kullanıcı adı/parola eşlemeniz yapılandırma dosyasında açıkta olmaz.
HTTP ve tanımlama bilgisi kimlik doğrulaması kipleri daha güvenlidir: MySQL oturum açma bilgisinin phpMyAdmin yapılandırma dosyasında (mümkünse $cfg['Servers'][$i]['controluser']
için hariç) ayarlanmasına ihtiyacı yoktur. Ancak, aklınızda olsun HTTPS protokolü kullanmadığınız sürece, parola düz metin içinde yolculuk eder. Tanımlama bilgisi kipinde, parola geçici tanımlama bilgisi içinde AES algoritması ile şifrelenip saklanır.
Ondan sonra her gerçek kullanıcıya belli bir takım veritabanlarında bir takım yetkiler verilmelidir. Bu yetkilerin etkisini anlamadıkça normal olarak sıradan kullanıcıya genel yetkileri vermemelisiniz (örneğin, süper kullanıcı oluşturuyorsunuz). Örneğin, kullanıcı_tabanlı veritabanındaki tüm yetkiler ile gerçek_kullanıcı kullanıcısını vermek için:
GRANT ALL PRIVILEGES ON user_base.* TO 'real_user'@localhost IDENTIFIED BY 'real_password';
Kullanıcının burada hemen yapabildiği MySQL kullanıcı yönetimi sistemi tarafından tamamen kontrol etmektir. HTTP veya tanımlama bilgisi kimlik doğrulaması kipi ile $cfg['Servers']
dizilimi içindeki kullanıcı/parola alanlarını doldurmanıza gerek yok.
Ayrıca bkz.
1.32 Apache IIS ile >HTTP kimlik doğrulaması kullanabilir miyim?, 1.35 Apache CGI ile HTTP kimlik doğrulaması kullanabilir miyim?, 4.1 Bir ISP’im var. Merkezi bir phpMyAdmin kopyasını kurabilir miyim veya her müşteri için yüklemem mi gerekir?, 4.2 phpMyAdmin’ni kötü niyetli erişime karşı güvenli yapmanın tercih edilen yolu nedir?, 4.3 /lang veya /libraries içinde bir dosya olmamasıyla ilgili hatalar alıyorum.
HTTP kimlik doğrulaması kipi¶
HTTP Basit kimlik doğrulaması yöntemini kullanır ve herhangi bir geçerli MySQL kullanıcısı olarak oturum açmanıza izin verir.
Pek çok PHP yapılandırmasıyla desteklenir. CGI PHP kullanarak IIS (ISAPI) desteği için bakınız 1.32 Apache IIS ile >HTTP kimlik doğrulaması kullanabilir miyim?, Apache CGI ile kullanım için bakınız 1.35 Apache CGI ile HTTP kimlik doğrulaması kullanabilir miyim?.
PHP, Apache’nin mod_proxy_fcgi’si (örn. PHP-FPM ile) altında çalışırken,
Authorization
üstbilgileri temeldeki FCGI uygulamasına geçmez, öyle ki kimlik bilgileriniz uygulamaya ulaşmayacaktır. Bu durumda, aşağıdaki yapılandırma yönergesini ekleyebilirsiniz:SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
Aynı zamanda .htaccess mekanizmasını ‘HTTP’ kimlik doğrulaması kipi ile yalnız kullanmamakla ilgili bakınız 4.4 HTTP kimlik doğrulaması kullanırken phpMyAdmin sürekli “Erişim reddedildi” uyarısı veriyor..
Not
HTTP kimlik doğrulaması’nda uygun oturum kapatmanın bir yolu yoktur, çoğu tarayıcı farklı başarılı kimlik doğrulaması olana kadar kimlik bilgilerini hatırlar. Bu nedenle, bu yöntem, oturumu kapattıkan sonra aynı kullanıcı ile oturum açamayacağınız bir sınırlamaya sahiptir.
Tanımlama bilgisi kimlik doğrulaması kipi¶
- Kullanıcı adı ve parola oturum sırasında tanımlama bilgilerinde saklanır ve sona erdiğinde parola silinir.
- Bu kip ile kullanıcı tamamen phpMyAdmin’nin oturumunu kapatabilir ve aynı kullanıcı adıyla yeniden oturum açabilir (bu, HTTP kimlik doğrulaması kipi ile mümkün değildir).
- Eğer kullanıcılara herhangi bir anamakineye bağlanmaları (sadece
config.inc.php
içinde yapılandırılan sunucuların yerine) için izin vermek istiyorsanız,$cfg['AllowArbitraryServer']
yönergesine bakın. - Gereksinimler bölümünde adı geçtiği gibi,
openssl
uzantısına sahip olmak erişimi oldukça hızlandıracaktır, ancak gerekmez.
Oturumu Açma kimlik doğrulaması kipi¶
- Bu kip, tek bir giriş yapma çözümünü gerçekleştirmek için başka bir uygulamadan gelen kimlik bilgilerinin phpMyAdmin’de kimlik doğrulaması için kullanılmasının uygun bir yoludur.
- Diğer uygulama oturum açma bilgisini oturum verisinde saklamak zorndadır (
$cfg['Servers'][$i]['SignonSession']
ve$cfg['Servers'][$i]['SignonCookieParams']
yönergesine bakın) ya da kimlik bilgilerini vermek için betik uygulamanız gerekir ($cfg['Servers'][$i]['SignonScript']
yönergesine bakın). - Hiç kimlik bilgileri olmadığında, kullanıcı, oturum açma işlemiyle baş edebilmeniz için gereken şu yapılandırmaya yönlendirilir
$cfg['Servers'][$i]['SignonURL']
.
Bir oturumda kimlik bilgilerini kaydetmenin en temel örneği examples/signon.php
olarak mevcuttur:
<?php
/**
* Single signon for phpMyAdmin
*
* This is just example how to use session based single signon with
* phpMyAdmin, it is not intended to be perfect code and look, only
* shows how you can integrate this functionality in your application.
*/
declare(strict_types=1);
/* Use cookies for session */
ini_set('session.use_cookies', 'true');
/* Change this to true if using phpMyAdmin over https */
$secureCookie = false;
/* Need to have cookie visible from parent directory */
session_set_cookie_params(0, '/', '', $secureCookie, true);
/* Create signon session */
$sessionName = 'SignonSession';
session_name($sessionName);
// Uncomment and change the following line to match your $cfg['SessionSavePath']
//session_save_path('/foobar');
@session_start();
/* Was data posted? */
if (isset($_POST['user'])) {
/* Store there credentials */
$_SESSION['PMA_single_signon_user'] = $_POST['user'];
$_SESSION['PMA_single_signon_password'] = $_POST['password'];
$_SESSION['PMA_single_signon_host'] = $_POST['host'];
$_SESSION['PMA_single_signon_port'] = $_POST['port'];
/* Update another field of server configuration */
$_SESSION['PMA_single_signon_cfgupdate'] = ['verbose' => 'Signon test'];
$_SESSION['PMA_single_signon_HMAC_secret'] = hash('sha1', uniqid(strval(random_int(0, mt_getrandmax())), true));
$id = session_id();
/* Close that session */
@session_write_close();
/* Redirect to phpMyAdmin (should use absolute URL here!) */
header('Location: ../index.php');
} else {
/* Show simple form */
header('Content-Type: text/html; charset=utf-8');
echo '<?xml version="1.0" encoding="utf-8"?>' . "\n";
echo '<!DOCTYPE HTML>
<html lang="en" dir="ltr">
<head>
<link rel="icon" href="../favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon">
<meta charset="utf-8">
<title>phpMyAdmin single signon example</title>
</head>
<body>';
if (isset($_SESSION['PMA_single_signon_error_message'])) {
echo '<p class="error">';
echo $_SESSION['PMA_single_signon_error_message'];
echo '</p>';
}
echo '<form action="signon.php" method="post">
Username: <input type="text" name="user" autocomplete="username" spellcheck="false"><br>
Password: <input type="password" name="password" autocomplete="current-password" spellcheck="false"><br>
Host: (will use the one from config.inc.php by default)
<input type="text" name="host"><br>
Port: (will use the one from config.inc.php by default)
<input type="text" name="port"><br>
<input type="submit">
</form>
</body>
</html>';
}
Alternatif olarak, ayrıca bu yolu OpenID ile bütünleştirerek examples/openid.php
dosyasında gösterildiği gibi kullanabilirsiniz:
<?php
/**
* Single signon for phpMyAdmin using OpenID
*
* This is just example how to use single signon with phpMyAdmin, it is
* not intended to be perfect code and look, only shows how you can
* integrate this functionality in your application.
*
* It uses OpenID pear package, see https://pear.php.net/package/OpenID
*
* User first authenticates using OpenID and based on content of $AUTH_MAP
* the login information is passed to phpMyAdmin in session data.
*/
declare(strict_types=1);
if (false === @include_once 'OpenID/RelyingParty.php') {
exit;
}
/* Change this to true if using phpMyAdmin over https */
$secureCookie = false;
/**
* Map of authenticated users to MySQL user/password pairs.
*/
$authMap = ['https://launchpad.net/~username' => ['user' => 'root', 'password' => '']];
// phpcs:disable PSR1.Files.SideEffects,Squiz.Functions.GlobalFunction
/**
* Simple function to show HTML page with given content.
*
* @param string $contents Content to include in page
*/
function Show_page(string $contents): void
{
header('Content-Type: text/html; charset=utf-8');
echo '<?xml version="1.0" encoding="utf-8"?>' . "\n";
echo '<!DOCTYPE HTML>
<html lang="en" dir="ltr">
<head>
<link rel="icon" href="../favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon">
<meta charset="utf-8">
<title>phpMyAdmin OpenID signon example</title>
</head>
<body>';
if (isset($_SESSION['PMA_single_signon_error_message'])) {
echo '<p class="error">' . $_SESSION['PMA_single_signon_message'] . '</p>';
unset($_SESSION['PMA_single_signon_message']);
}
echo $contents;
echo '</body></html>';
}
/**
* Display error and exit
*
* @param Exception $e Exception object
*/
function Die_error(Throwable $e): void
{
$contents = "<div class='relyingparty_results'>\n";
$contents .= '<pre>' . htmlspecialchars($e->getMessage()) . "</pre>\n";
$contents .= "</div class='relyingparty_results'>";
Show_page($contents);
exit;
}
// phpcs:enable
/* Need to have cookie visible from parent directory */
session_set_cookie_params(0, '/', '', $secureCookie, true);
/* Create signon session */
$sessionName = 'SignonSession';
session_name($sessionName);
@session_start();
// Determine realm and return_to
$base = 'http';
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
$base .= 's';
}
$base .= '://' . $_SERVER['SERVER_NAME'] . ':' . $_SERVER['SERVER_PORT'];
$realm = $base . '/';
$returnTo = $base . dirname($_SERVER['PHP_SELF']);
if ($returnTo[strlen($returnTo) - 1] !== '/') {
$returnTo .= '/';
}
$returnTo .= 'openid.php';
/* Display form */
if ((! count($_GET) && ! count($_POST)) || isset($_GET['phpMyAdmin'])) {
/* Show simple form */
$content = '<form action="openid.php" method="post">
OpenID: <input type="text" name="identifier"><br>
<input type="submit" name="start">
</form>';
Show_page($content);
exit;
}
/* Grab identifier */
$identifier = null;
if (isset($_POST['identifier']) && is_string($_POST['identifier'])) {
$identifier = $_POST['identifier'];
} elseif (isset($_SESSION['identifier']) && is_string($_SESSION['identifier'])) {
$identifier = $_SESSION['identifier'];
}
/* Create OpenID object */
try {
$o = new OpenID_RelyingParty($returnTo, $realm, $identifier);
} catch (Throwable $e) {
Die_error($e);
}
/* Redirect to OpenID provider */
if (isset($_POST['start'])) {
try {
$authRequest = $o->prepare();
} catch (Throwable $e) {
Die_error($e);
}
$url = $authRequest->getAuthorizeURL();
header('Location: ' . $url);
exit;
}
/* Grab query string */
if (! count($_POST)) {
[, $queryString] = explode('?', $_SERVER['REQUEST_URI']);
} else {
// Fetch the raw query body
$queryString = file_get_contents('php://input');
}
/* Check reply */
try {
$message = new OpenID_Message($queryString, OpenID_Message::FORMAT_HTTP);
} catch (Throwable $e) {
Die_error($e);
}
$id = $message->get('openid.claimed_id');
if (empty($id) || ! isset($authMap[$id])) {
Show_page('<p>User not allowed!</p>');
exit;
}
$_SESSION['PMA_single_signon_user'] = $authMap[$id]['user'];
$_SESSION['PMA_single_signon_password'] = $authMap[$id]['password'];
$_SESSION['PMA_single_signon_HMAC_secret'] = hash('sha1', uniqid(strval(random_int(0, mt_getrandmax())), true));
session_write_close();
/* Redirect to phpMyAdmin (should use absolute URL here!) */
header('Location: ../index.php');
Daha başka bir şekilde kullanarak kimlik bilgilerini geçmek istiyorsanız, verileri almak ve $cfg['Servers'][$i]['SignonScript']
olarak ayarlamak için PHP içinde sarmalayıcı uygulamak zorundasınız. Çok küçük bir örneği examples/signon-script.php
içinde var:
<?php
/**
* Single signon for phpMyAdmin
*
* This is just example how to use script based single signon with
* phpMyAdmin, it is not intended to be perfect code and look, only
* shows how you can integrate this functionality in your application.
*/
declare(strict_types=1);
// phpcs:disable Squiz.Functions.GlobalFunction
/**
* This function returns username and password.
*
* It can optionally use configured username as parameter.
*
* @param string $user User name
*
* @return array<int,string>
*/
function get_login_credentials(string $user): array
{
/* Optionally we can use passed username */
if (! empty($user)) {
return [$user, 'password'];
}
/* Here we would retrieve the credentials */
return ['root', ''];
}
Yapılandırma kimlik doğrulaması kipi¶
- Bu kip bazen daha az güvenli olandır çünkü
$cfg['Servers'][$i]['user']
ve$cfg['Servers'][$i]['password']
alanlarını doldurmanızı gerektirir (ve sonuç olarakconfig.inc.php
dosyanızı okuyabilen her kim olursa kullanıcı adı ve parolanızı keşfedebilir). - ISP’ler, çoklu kullanıcı kurulumları bölümü içinde yapılandırma dosyanızı nasıl koruyacağınızı anlatan bir giriş vardır.
- Bu kipte ilave güvenlik için Anamakine kimlik doğrulaması
$cfg['Servers'][$i]['AllowDeny']['order']
ve$cfg['Servers'][$i]['AllowDeny']['rules']
yapılandırma yönergelerini dikkate almak isteyebilirsiniz. - Tanımlama bilgisi ve http’den farklı olarak, phpMyAdmin sitesinin ilk yüklenmesinde oturum açmak için kullanıcı gerekmez. Bu tasarımındandır ama herhangi bir kullanıcının kurulumunuza erişmesine izin verebilir. Bazı kısıtlama yöntemlerini kullanmak önerilmektedir, belki HTTP-AUTH yönergesiyle .htaccess dosyası veya birinin yönlendiricisinde gelen HTTP isteklerine izin vermemek ya da güvenlik duvarı yetecektir (her ikiside bu kılavuzun kapsamı dışında ama kolaylıkla Google ile aranabilir).
phpMyAdmin kurulumunuzun güvenliğini sağlama¶
phpMyAdmin takımı uygulamayı güvenli yapmak için zorlamaya çalışır, ancak daima kurulumunuzu daha güvenli yapan yollar vardır:
Güvenlik duyurularımızı takip edin ve yeni güvenlik açığı yayımlanır yayımlanmaz phpMyAdmin’i yükseltin.
phpMyAdmin’in sadece HTTPS üzerinden hizmet etmesi. Tercihen, HSTS bile kullanmalısınız, öyle ki protokol düşürme saldırılarından korunursunuz.
PHP kurulumunuzun üretim siteleri için önerileri takip ettiğinden emin olun, örneğin display_errors etkisizleştirilmelidir.
Geliştirme yapmıyorsanız ve bir deneme paketine ihtiyaç duymuyorsanız, phpMyAdmin’den
test
dizinini kaldırın.phpMyAdmin’den
setup
dizinini kaldırın, muhtemelen baştaki kurulumdan sonra kullanmayacaksınız.Kimlik doğrulaması yöntemini uygun şekilde seçin - Tanımlama bilgisi kimlik doğrulaması kipi paylaşılan barındırma için muhtemelen en iyi seçimdir.
Web sunucusu yapılandırmanızda
./libraries/
veya./templates/
altklasörlerindeki yardımcı dosyalara erişimi engeller. Bu gibi yapılandırma, olası yolu açıkta bırakmaya ve bu kodda bulunabilmesine olanak veren çapraz taraflı betik yazımı savunmasızlığına engel olur. Apache web sunucusu için genellikle bu dizinlerdeki .htaccess dosyasıyla bu başarı sağlanır.Geçici dosyalara erişimi engeller, bakınız
$cfg['TempDir']
(eğer bu web kök klasörünüz içinde bulunuyorsa, ayrıca bakınız Web sunucusu gönderme/kaydetme/içe aktarma dizinleri.Bu genelde, herkese açık bir phpMyAdmin kurulumunu, çoğunlukla iyi hiçbir şey yapamayan robotların erişimine karşı korumak için iyi bir fikirdir. Bunu web sunucunuzun kök dizininde
robots.txt
dosyasını kullanarak veya web sunucusu yapılandırması sayesinde erişimi sınırlandırarak yapabilirsiniz, bakınız 1.42 Robot’ları phpMyAdmin’e erişimini nasıl önleyebilirim?.MySQL kullanıcılarının phpMyAdmin’e erişebilmesini istemediğiniz durumda, onları sınırlandırmak için
$cfg['Servers'][$i]['AllowDeny']['rules']
veya root kullanıcısı erişimini reddetmek için$cfg['Servers'][$i]['AllowRoot']
kullanabilirsiniz.Hesabınız için İki etkenli kimlik doğrulaması ‘ni etkinleştirme.
phpMyAdmin’i kimlik doğrulamalı proksi arkasında gizlemeyi düşünün, böylece kullanıcıların MySQL kimlik bilgilerini phpMyAdmin’e vermeden önce kimlik doğrulaması yapmaları gerekir. Web sunucunuzu HTTP kimlik doğrulaması istemesi için yapılandırarak bunu elde edebilirsiniz. Örneğin Apache’de bu şöyle yapılabilir:
AuthType Basic AuthName "Restricted Access" AuthUserFile /usr/share/phpmyadmin/passwd Require valid-user
Bir kez yapılandırmayı değiştirdiniz mi, kimliğini doğrulayabilen kullanıcıların bir listesini oluşturmanız gerekir. Bu, htpasswd yardımcı uygulaması kullanılarak yapılabilir:
htpasswd -c /usr/share/phpmyadmin/passwd username
Eğer otomatikleştirilmiş saldırılardan korkuyorsanız,
$cfg['CaptchaLoginPublicKey']
ve$cfg['CaptchaLoginPrivateKey']
ile Captcha’yı etkinleştirmek bir seçenek olabilir.Başarısız oturum açma girişimleri syslog’a (eğer mevcutsa, bakınız
$cfg['AuthLog']
) günlüklenir. Bu, deneme yanılma saldırısı girişimlerini engellemek için fail2ban gibi bir aracı kullanmaya izin verebilir. Syslog tarafından kullanılan günlük dosyasının Apache hata veya erişim günlük dosyaları ile aynı olmadığını unutmayın.phpMyAdmin’i diğer PHP uygulamaları ile çalıştırmanız durumunda, olası oturum tabanlı saldırıları buna karşı önlemek için phpMyAdmin’in ayrı oturum depolaması kullanması genellikle tavsiye edilir. Bunu başarmak için
$cfg['SessionSavePath']
kullanabilirsiniz.
Veritabanı sunucusuna bağlantı için SSL kullanımı¶
Uzak veritabanı sunucusuna bağlanırken SSL kullanılması önerilir. SSL kurulumunun yer aldığı birçok yapılandırma seçeneği vardır:
$cfg['Servers'][$i]['ssl']
- Tümünde SSL kullanılıp kullanılmayacağını tanımlar. Eğer sadece bunu etkinleştirirseniz, bağlantı şifrelenecektir, ancak bağlantının kimlik doğrulaması olmaz - doğru sunucuyla konuştuğunuzu doğrulayamazsınız.
$cfg['Servers'][$i]['ssl_key']
ve$cfg['Servers'][$i]['ssl_cert']
- Bu, istemcinin sunucuya kimliğini doğrulaması için kullanılır.
$cfg['Servers'][$i]['ssl_ca']
ve$cfg['Servers'][$i]['ssl_ca_path']
- Sunucu sertifikaları için güvendiğiniz sertifika yetkilileri. Bu, bir güvenilen sunucuyla konuştuğunuzdan emin olmak için kullanılır.
$cfg['Servers'][$i]['ssl_verify']
- Bu yapılandırma, sunucu sertifika doğrulamasını etkisizleştirir. Dikkatli kullanın.
Veritabanı sunucusu yerel bir bağlantı veya özel ağ kullanırken ve SSL yapılandırılamadığında, güvenli olduğu düşünülen anamakine adlarını açıkça listelemek için $cfg['MysqlSslWarningSafeHosts']
seçeneğini kullanabilirsiniz.
Bilinen sorunlar¶
Sütuna özel yetkileri olan kullanıcılar “Gözat” işlemi yapamazlar¶
Eğer bir kullanıcı bir tablodaki bazı (ama tümü değil) sütunlarda sadece sütuna özel yetkilere sahipse, “Gözat” işlemi bir hata iletisi ile başarısız olacaktır.
Geçici bir çözüm olarak, tablo olarak aynı isimde yer işaretli bir sorgu oluşturulabilir, bunun yerine “Gözat” bağlantısı kullanarak bu çalışacaktır. Sorun 11922.
‘Http’ kimlik doğrulaması kullanarak oturumu kapattıktan sonra tekrar oturum açma sorunu¶
‘Http’ auth_type
kullanıldığında, tekrar oturum açma imkansız olabilir (oturum kapatma el ile olduğunda ya da bir süre işlem yapılmamasından sonra). Sorun 11898.
Yapılandırma¶
Tüm yapılandırılabilir veriler phpMyAdmin’in en üst seviye dizini içindeki config.inc.php
dosyası içinde yer alır. Eğer bu dosya mevcut değilse, bir tane oluşturmak için lütfen Kurulum bölümüne bakın. Bu dosyanın sadece ilgili varsayılan değerlerinden değiştirmek istediğiniz parametreleri içermesi gerekir (bu dosya değişiklik amaçlı değildir).
Ayrıca bkz.
Yapılandırmaların örnekleri için Örnekler
Eğer bir yönerge dosyanızda eksikse, sadece dosya ile başka bir satır ekleyebilirsiniz. Bu dosya varsayılanların üzerine yazılması içindir; eğer varsayılan değeri kullanmak isterseniz, buraya bir satır eklemeye gerek yoktur.
themes/themename/scss/_variables.scss
içinde yer alan tasarımla (renkler gibi) ilgili parametrelerdir. Aynı zamanda sitenize her sayfanın başlangıcına ve sonuna dahil edilen belirli bir kodu eklemek için config.footer.inc.php
ve config.header.inc.php
dosyalarını oluşturmak isteyebilirsiniz.
Not
Bazı dağıtımlar (örn. Debian veya Ubuntu) config.inc.php
dosyasını phpMyAdmin kaynaklarının içerisi yerine /etc/phpmyadmin
içinde depolar.
Temel ayarlar¶
-
$cfg['PmaAbsoluteUri']
¶ Tür: dizgi Varsayılan değer: ''
4.6.5 sürümünde değişti: Bu ayar phpMyAdmin 4.6.0 - 4.6.4 sürümlerinden kullanılabilir değil.
phpMyAdmin kurulumunuzun dizinine tam URL (tam yol ile) burada ayarlanır. Örn.
https://www.orneksite.net/phpMyAdmin_dizininizin_yolu/
. Ayrıca, web sunucularının çoğunda URL’nin büyük küçük harfe duyarlı (hatta Windows’ta bile) olduğunu unutmayın. Sondaki eğik çizgiyi unutmayın.Sürüm 2.3.0 ile başlayaraktan, bunu boş bırakmayı denemek tavsiye edilebilir. Birçok durumda phpMyAdmin düzgün ayarı otomatik olarak algılar. Bağlantı noktası yönlendirilen kullanıcıların ya da karmaşık ters proksi kurulumunun bunu ayarlaması gerekebilir.
İyi bir deneme, tabloya gözatmak, satırı düzenlemek ve bunu kaydetmektir. Eğer phpMyAdmin doğru değeri otomatik algılamada sorun yaşarsa, bir hata mesajı olmalıdır. Bunu ayarlamak zorunda kalındığında eğer hata alırsanız, eğer otomatik algılama kodu yolunuzu algılamada başarısız olursa, lütfen hata izleyicimize bir hata raporu gönderin böylece bizde kodu iyileştirebilelim.
Ayrıca bkz.
1.40 Apache ters proksi yoluyla phpMyAdmin’e eriştiğimde, tanımlama bilgisiyle oturum açma çalışmıyor., 2.5 Her defasında satır eklemek veya değiştirmek ya da bir veritabanı veya bir tablo kaldırmak istiyorum, bir hata 404 (sayfa bulunamadı) görüntüleniyor veya HTTP ya da tanımlama bilgisi kimlik doğrulaması ile, tekrar oturum açmak için soruyor. Yanlış olan nedir?, 4.7 Kimlik doğrulaması penceresi birden fazla görüntüleniyor, neden?, 5.16 Internet Explorer ile “Erişim reddedildi” Javascript hataları alıyorum. Ya da phpMyAdmin’i Windows altında çalışır hale getiremiyorum.
-
$cfg['PmaNoRelation_DisableWarning']
¶ Tür: boolean Varsayılan değer: false Sürüm 2.3.0 ile başlayaraktan phpMyAdmin, asıl / dış – tablolarla çalışmak için çok fazla özellikler sunar (
$cfg['Servers'][$i]['pmadb']
yönergesine bakın).Eğer bunu ayarlamayı denediğinizde ve çalışmadığında, kullanmak istediğiniz veritabanının birinin Yapı sayfasına bir göz atın. Bu özelliklerin neden etkisizleştirildiğini inceleyecek olan bir bağlantı bulacaksınız.
Eğer bu özellikleri kullanmak istemiyorsanız, bu mesajın görünmesini durdurmak istiyorsanız bu değeri
true
olarak ayarlayın.
-
$cfg['AuthLog']
¶ Tür: dizgi Varsayılan değer: 'auto'
4.8.0 sürümüyle geldi: Bu, phpMyAdmin 4.8.0 sürümünden bu yana desteklenmektedir.
Kimlik doğrulaması günlükleme hedefini yapılandırın. Başarısız olan (veya tümü,
$cfg['AuthLogSuccess']
parametresine bağlıdır) kimlik doğrulaması girişimleri şu yönergeye göre günlüklenecektir:auto
- phpMyAdmin’in otomatik olarak
syslog
vephp
arasında seçim yapmasına izin verir. syslog
- Syslog kullanarak günlük kaydı, AUTH olanağını kullanmak, çoğu sistemde bunun sonu
/var/log/auth.log
olarak biter. php
- PHP hata günlüğü içine günlük kaydı.
sapi
- PHP SAPI günlükleme içine günlük kaydı.
/dosya/yolu
- Herhangi bir diğer değer dosya adı gibi davranır ve günlük girişleri oraya yazılır.
Not
Bir dosyaya günlüklenirken, izinlerinin bir web sunucusu kullanıcısı için doğru olarak ayarlandığından emin olun, kur işlemi
$cfg['TempDir']
içinde açıklanan talimatlarla yakından eşleşmelidir:
-
$cfg['AuthLogSuccess']
¶ Tür: boolean Varsayılan değer: false 4.8.0 sürümüyle geldi: Bu, phpMyAdmin 4.8.0 sürümünden bu yana desteklenmektedir.
Başarılı kimlik doğrulaması girişimlerinin
$cfg['AuthLog']
içine günlüğe kaydedilip kaydedilmediği.
-
$cfg['SuhosinDisableWarning']
¶ Tür: boolean Varsayılan değer: false Eğer Suhosin algılanırsa, ana sayfada bir uyarı görüntülenir.
Bu mesajın görünmesini durdurmak istiyorsanız bu parametreyi
true
olarak ayarlayabilirsiniz.
-
$cfg['LoginCookieValidityDisableWarning']
¶ Tür: boolean Varsayılan değer: false Eğer PHP parametresi session.gc_maxlifetime, phpMyAdmin içinde yapılandırılmış tanımlama bilgisi geçerliliği değerinden daha düşük ise ana sayfada bir uyarı görüntülenir.
Bu mesajın görünmesini durdurmak istiyorsanız bu parametreyi
true
olarak ayarlayabilirsiniz.
-
$cfg['ServerLibraryDifference_DisableWarning']
¶ Tür: boolean Varsayılan değer: false 4.7.0 sürümünden beri önerilmiyor: Uyarı da kaldırıldığından bu ayar kaldırıldı.
Eğer MySQL kütüphanesi ve sunucu sürümü arasında fark varsa, ana sayfada bir uyarı görüntülenir.
Bu mesajın görünmesini durdurmak istiyorsanız bu parametreyi
true
olarak ayarlayabilirsiniz.
-
$cfg['ReservedWordDisableWarning']
¶ Tür: boolean Varsayılan değer: false Bu uyarı bir tablonun Yapı sayfasında bir ya da daha fazla sütun adı MySQL’e ayrılmış kelimelerle eşleşirse görüntülenir.
Eğer bu uyarıyı kapatmak istiyorsanız, bunu
true
olarak ayarlayabilirsiniz ve uyarı bundan böyle görüntülenmeyecektir.
-
$cfg['TranslationWarningThreshold']
¶ Tür: tam sayı Varsayılan değer: 80 Belli uç noktalarda tamamlanmamış çevirilerle ilgili uyarı gösterir.
-
$cfg['SendErrorReports']
¶ Tür: dizgi Varsayılan değer: 'ask'
Geçerli değerler:
ask
always
never
JavaScript hata bildirimi için varsayılan davranışı ayarlar.
JavaScript çalıştırılmasında bir hata algılandığı zaman, eğer kullanıcı kabul ederse bir hata raporu phpMyAdmin’e gönderilebilir.
'ask'
varsayılan ayarı, kullanıcıya her defasında yeni bir hata raporu olduğunu söyleyecek. Ancak onaylamayı sormadan hata raporlarını göndermesi için bu parametreyi'always'
olarak ayarlayabilirsiniz ya da asla hata raporlarını göndermemesi için'never'
olarak ayarlayabilirsiniz.Bu yönerge hem yapılandırma dosyası hemde kullanıcıların tercihlerinde mevcuttur. Eğer çoklu kullanıcı kurulumundan sorumlu kişi, tüm kullanıcılar için bu özelliği etkisizleştirmeyi tercih ederse,
'never'
değeri ayarlanmalıdır ve$cfg['UserprefsDisallow']
yönergesi dizili değerlerinin birinde'SendErrorReports'
içermelidir.
-
$cfg['ConsoleEnterExecutes']
¶ Tür: boolean Varsayılan değer: false Bunu
true
olarak ayarlamak kullanıcıya Ctrl+Enter tuşları yerine Enter tuşuna basarak sorguları çalıştırmasına izin verir. Shift+Enter tuşlarına basarak yeni bir satır eklenebilir.Konsolun davranışı, konsolun ayarlar arayüzünü kullanarak geçici olarak değiştirilebilir.
-
$cfg['AllowThirdPartyFraming']
¶ Tür: boolean|dizgi Varsayılan değer: false Bunu
true
olarak ayarlamak bir çerçeve içerisine dahil edilmesi için phpMyAdmin’e izin verir ve çerçeveler arası betik saldırılarına ya da fare tıklamasıyla komut çalışmasına izin veren olası güvenlik açığıdır. Bunu ‘sameorigin’ olarak ayarlamak phpMyAdmin’in, bu belge aynı etki alanına ait olmadığı sürece bir çerçevedeki başka bir belgeden dahil edilmesini önler.
Sunucu bağlantısı ayarları¶
-
$cfg['Servers']
¶ Tür: dizilim Varsayılan değer: aşağıda listelenen ayarlarla bir sunucu dizilimi Sürüm 1.4.2’den bu yana phpMyAdmin çoklu MySQL sunucuları yönetimini destekler. Bu nedenle, farklı sunucular için oturum açma bilgisi içeren
$cfg['Servers']
dizilimi eklenmiştir. İlk$cfg['Servers'][$i]['host']
, ilk sunucunun anamakine adını içerir, ikinci$cfg['Servers'][$i]['host']
, ikinci sunucunun anamakine adını içerir, vb.config.inc.php
içine sunucu tanımı için istediğiniz kadar bölüm koyabilirsiniz, bu bloğu veya gerekli kısımları kopyalayın (tüm ayarları tanımlamak zorunda değilsiniz, sadece ihtiyacınız olanı değiştirin).Not
$cfg['Servers']
dizilimi $cfg[‘Servers’][1] ile başlar. $cfg[‘Servers’][0] kullanmayın. Eğer bir sunucudan daha fazlasını istiyorsanız, sadece aşağıdaki bölümü ($i arttırımı dahil) birkaç kez kopyalayın. Tam sunucu dizilimi tanımlamanıza gerek yoktur, sadece değiştirmeniz gereken değerleri tanımlayın.
-
$cfg['Servers'][$i]['host']
¶ Tür: dizgi Varsayılan değer: 'localhost'
$i. MySQL sunucunuzun anamakine adı ya da IP adresi. Örn.
localhost
.Olası değerler:
- anamakine adı, örn.,
'localhost'
veya'mydb.orneksite.org'
- IP adresi, örn.,
'127.0.0.1'
veya'192.168.10.1'
- IPv6 adresi, örn.
2001:cdba:0000:0000:0000:0000:3257:9652
- nokta -
'.'
, yani, windows sistemlerinde adlandırılmış kanalları kullanın - boş -
''
, bu sunucuyu etkisizleştirir
Not
Anamakine adı
localhost
, özellikle MySQL tarafından işlenir ve sokete dayalı bağlantı protokolü kullanır. TCP/IP ağı kullanmak için127.0.0.1
veyadb.ornek.com
gibi bir IP adresi veya anamakine adı kullanın.$cfg['Servers'][$i]['socket']
parametresi ile soket için yolu yapılandırabilirsiniz.- anamakine adı, örn.,
-
$cfg['Servers'][$i]['port']
¶ Tür: dizgi Varsayılan değer: ''
$i-th MySQL-sunucunuzun bağlantı noktası numarasıdır. Varsayılanı 3306’dır (boş bırakın).
Not
Eğer anamakine adı olarak
localhost
kullanıyorsanız, MySQL bu bağlantı noktası numarasını yok sayar ve soket ile bağlanır, bu yüzden eğer varsayılan bağlantı noktasından farklı bir bağlantı noktasıyla bağlanmak isterseniz,$cfg['Servers'][$i]['host']
içinde127.0.0.1
ya da gerçek anamakine adını kullanın.
-
$cfg['Servers'][$i]['socket']
¶ Tür: dizgi Varsayılan değer: ''
Kullanmak için sokete yol. Varsayılan için boş bırakın. Doğru soketi belirlemek için MySQL yapılandırma dosyanızı kontrol edin veya mysql komut satırı istemcisini kullanarak
status
komutunu deneyin. Sonuçlanan bilgi arasında görüntülenen, kullanılan soket olacaktır.Not
Bu, sadece eğer
$cfg['Servers'][$i]['host']
,localhost
olarak ayarlanırsa etkili olur.
-
$cfg['Servers'][$i]['ssl']
¶ Tür: boolean Varsayılan değer: false phpMyAdmin ve MySQL sunucusu arasındaki bağlantının güvenliğini sağlamak için SSL’in etkinleştirilip etkinleştirilmeyeceği.
'mysql'
uzantısı kullanıldığında, kalan'ssl...'
yapılandırma seçeneklerinden hiçbiri uygulanmaz.Bu seçeneği kullanırken,
'mysqli'
uzantısını son derece öneriyoruz.Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı, SSL ile Google Bulut SQL, SSL ile Amazon RDS Aurora,
$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_key']
¶ Tür: dizgi Varsayılan değer: BOŞ MySQL sunucusuna bağlanmak için SSL kullanırken gereken istemci anahtar dosyası yolu. Bu, istemcinin sunucuya kimliğini doğrulaması için kullanılır.
Örneğin:
$cfg['Servers'][$i]['ssl_key'] = '/etc/mysql/server-key.pem';
Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı, SSL ile Google Bulut SQL, SSL ile Amazon RDS Aurora,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_cert']
¶ Tür: dizgi Varsayılan değer: BOŞ MySQL sunucusuna bağlanmak için SSL kullanırken gereken istemci sertifika dosyası yolu. Bu, istemcinin sunucuya kimliğini doğrulaması için kullanılır.
Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı, SSL ile Google Bulut SQL, SSL ile Amazon RDS Aurora,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_ca']
¶ Tür: dizgi Varsayılan değer: BOŞ MySQL sunucusuna bağlanmak için SSL kullanırken gereken CA dosyası yolu.
Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı, SSL ile Google Bulut SQL, SSL ile Amazon RDS Aurora,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_ca_path']
¶ Tür: dizgi Varsayılan değer: BOŞ Dizin PEM biçiminde güvenilir SSL CA sertifikalarını içeriyor.
Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı, SSL ile Google Bulut SQL, SSL ile Amazon RDS Aurora,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_ciphers']
¶ Tür: dizgi Varsayılan değer: BOŞ MySQL sunucusuna SSL bağlantıları için izin verilebilir şifrelemelerin listesi.
Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı, SSL ile Google Bulut SQL, SSL ile Amazon RDS Aurora,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['ssl_verify']
¶ Tür: boolean Varsayılan değer: true 4.6.0 sürümüyle geldi: Bu, phpMyAdmin 4.6.0 sürümünden bu yana desteklenmektedir.
Eğer PHP kurulumunuz MySQL Yerel Sürücüsü (mysqlnd) kullanıyorsa, MySQL sunucunuz 5.6 veya sonrasıdır ve SSL sertifikanız kendiliğinden imzalıdır, SSL bağlantınızın doğrulamadan dolayı başarısız olma ihtimali vadır. Bunu
false
olarak ayarlamak doğrulama kontrolünü etkisizleştirecektir.PHP 5.6.0 sürümünden bu yana aynı zamanda sunucu adının, sertifikasının CN’i ile eşleşip eşleşmediğini doğrular. Şu anda tam SSL doğrulamasını etkisizleştirmeden bu kontrolü etkisizleştirmenin hiçbir yolu yoktur.
Uyarı
Sertifika doğrulamayı etkisizleştirmek SSL kullanmanın amacını bozar. Bu, bağlantıyı ortadan gelen saldırılara karşı korunmasız bırakacaktır.
Not
Bu işaret sadece PHP 5.6.16 veya sonrası ile çalışır.
Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı, SSL ile Google Bulut SQL, SSL ile Amazon RDS Aurora,
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
-
$cfg['Servers'][$i]['connect_type']
¶ Tür: dizgi Varsayılan değer: 'tcp'
4.7.0 sürümünden beri önerilmiyor: Anamakineye dayalı bağlantı türüne MySQL karar verdiğinden bu yana, artık bu ayar 4.7.0 sürümünden itibaren kullanılmaz, bu yüzden beklenmedik sonuçlara neden olabilir. Bunun yerine lütfen
$cfg['Servers'][$i]['host']
parametresini buna uygun olarak ayarlayın.MySQL sunucusu ile ne tür bağlantı kullandığınız. Seçenekleriniz
'socket'
ve'tcp'
dir. Soketler bazı platformlarda desteklenmediğinde, tüm MySQL sunucularında kullanılabilir olması neredeyse garanti olan varsayılan tcp’ dir. Soket kipini kullanmak için MySQL sunucunuz Web sunucusuyla aynı makinede olmak zorundadır.
-
$cfg['Servers'][$i]['compress']
¶ Tür: boolean Varsayılan değer: false MySQL sunucusu bağlantısı için sıkıştırılmış protokol kullanılıp kullanılmaması (deneysel).
-
$cfg['Servers'][$i]['controlhost']
¶ Tür: dizgi Varsayılan değer: ''
Yapılandırma depolaması verisini tutmak için başka anamakine kullanımına izin verir.
Ayrıca bkz.
-
$cfg['Servers'][$i]['controlport']
¶ Tür: dizgi Varsayılan değer: ''
Yapılandırma depolamasını tutan başka anamakineye bağlanmak için alternatif bağlantı noktası kullanmaya izin verir.
Ayrıca bkz.
-
$cfg['Servers'][$i]['controluser']
¶ Tür: dizgi Varsayılan değer: ''
-
$cfg['Servers'][$i]['controlpass']
¶ Tür: dizgi Varsayılan değer: ''
Bu özel hesap phpMyAdmin yapılandırma depolaması’na erişmek için kullanılır. Tek kullanıcı durumunda ihtiyacınız yoktur, ancak eğer phpMyAdmin paylaşılmışsa, bu kullanıcıya sadece phpMyAdmin yapılandırma depolaması’na erişim verilmesi ve kullanması için phpMyAdmin’in yapılandırılması önerilir. Tüm kullanıcılar o zaman phpMyAdmin yapılandırma depolaması’na doğrudan erişime gerek kalmadan özellikleri kullanabileceklerdir.
2.2.5 sürümünde değişti: bunlar
stduser
vestdpass
olarak adlandırılırdı
-
$cfg['Servers'][$i]['control_*']
¶ Tür: karışık 4.7.0 sürümüyle geldi.
Denetim bağlantısı (phpMyAdmin yapılandırma depolaması’na erişmek için kullanılan) için herhangi bir MySQL bağlantısı ayarını
control_
yapılandırma öneki kullanarak değiştirebilirsiniz.Bu, kullanıcı gibi aynı parametreleri varsayılan olarak kullanan denetim bağlantısının herhangi bir yönünü değiştirmek için kullanılabilir.
Örneğin denetim bağlantısı için SSL yapılandırabilirsiniz:
// Enable SSL $cfg['Servers'][$i]['control_ssl'] = true; // Client secret key $cfg['Servers'][$i]['control_ssl_key'] = '../client-key.pem'; // Client certificate $cfg['Servers'][$i]['control_ssl_cert'] = '../client-cert.pem'; // Server certification authority $cfg['Servers'][$i]['control_ssl_ca'] = '../server-ca.pem';
Ayrıca bkz.
$cfg['Servers'][$i]['ssl']
,$cfg['Servers'][$i]['ssl_key']
,$cfg['Servers'][$i]['ssl_cert']
,$cfg['Servers'][$i]['ssl_ca']
,$cfg['Servers'][$i]['ssl_ca_path']
,$cfg['Servers'][$i]['ssl_ciphers']
,$cfg['Servers'][$i]['ssl_verify']
,$cfg['Servers'][$i]['socket']
,$cfg['Servers'][$i]['compress']
,$cfg['Servers'][$i]['hide_connection_errors']
-
$cfg['Servers'][$i]['auth_type']
¶ Tür: dizgi Varsayılan değer: 'cookie'
Bu sunucu için yapılandırma veya tanımlama bilgisi veya HTTP veya giriş yapma kimlik doğrulaması kullanılmalıysa.
- ‘yapılandırma’ kimlik doğrulaması (
$auth_type = 'config'
) düz eski yoldur: kullanıcı adı ve parolaconfig.inc.php
içinde saklanır. - ‘tanımlama bilgisi’ kimlik doğrulaması kipi (
$auth_type = 'cookie'
) tanımlama bilgilerinin yardımıyla herhangi bir geçerli MySQL kullanıcısı olarak oturum açmanıza izin verir. - ‘http’ kimlik doğrulaması HTTP-Auth aracılığıyla herhangi bir geçerli MySQL kullanıcısı olarak oturum açmanıza izin verir.
- ‘giriş yap’ kimlik doğrulaması kipi (
$auth_type = 'signon'
) hazırlanmış PHP oturum verisinden ya da verilen PHP betiğini kullanarak oturum açmanıza izin verir.
Ayrıca bkz.
- ‘yapılandırma’ kimlik doğrulaması (
-
$cfg['Servers'][$i]['auth_http_realm']
¶ Tür: dizgi Varsayılan değer: ''
auth_type =
http
kullanıldığında, bu alan, kullanıcıya gösterilecek olan özel bir HTTP Basit Kimlik Doğrulaması Yetki Alanı tanımlamak için izin verir. Eğer yapılandırma dosyanızda açıkça belirtilmemişse, “phpMyAdmin”in dizgi birleşimi ve, ya$cfg['Servers'][$i]['verbose']
ya da$cfg['Servers'][$i]['host']
kullanılacaktır.
-
$cfg['Servers'][$i]['auth_swekey_config']
¶ Tür: dizgi Varsayılan değer: ''
3.0.0.0 sürümüyle geldi: Bu ayar $cfg[‘Servers’][$i][‘auth_feebee_config’] olarak adlandırıldı ve 3.0.0.0 yayımından önce yeniden adlandırıldı.
4.6.4 sürümünden beri önerilmiyor: Bu ayar, sunucuları artık çalışmadığı ve düzgün çalışmadığından kaldırıldı.
4.0.10.17 sürümünden beri önerilmiyor: Bu ayar, sunucuları artık çalışmadığından ve düzgün çalışmadığından bir bakım yayımında kaldırıldı.
Dosyanın adı swekey kimlikleri ve donanım kimlik doğrulaması için oturum açma adları içerir. Bu özelliğin devre dışı kalması için boş bırakın.
-
$cfg['Servers'][$i]['user']
¶ Tür: dizgi Varsayılan değer: 'root'
-
$cfg['Servers'][$i]['password']
¶ Tür: dizgi Varsayılan değer: ''
$cfg['Servers'][$i]['auth_type']
, ‘config’ olarak ayarlanarak kullanıldığında bu, phpMyAdmin’nin MySQL sunucusuna bağlanmak için kullanacağı kullanıcı/parola eşleştirmesidir. Bu kullanıcı/parola eşleştirmesi, HTTP ya da tanımlama bilgisi kimlik doğrulaması kullanıldığında gerekmez ve boş olmalıdır.
-
$cfg['Servers'][$i]['nopassword']
¶ Tür: boolean Varsayılan değer: false 4.7.0 sürümünden beri önerilmiyor: Beklenmedik sonuçlar oluşturabileceğinden bu ayar kaldırıldı.
Parola ile oturum açma başarısız olduğunda parolasız oturum açma girişimine izin verir. Bu, http kimlik doğrulaması ile birlikte de kullanılabilir, diğer bazı yollarla kimlik doğrulaması bittiğinde ve phpMyAdmin kimlik doğrulamasından kullanıcı adını getirdiğinde ve MySQL’e bağlanmak için boş parola kullandığında. Parola oturum açma hala ile denenendir, ama son çare olarak, parolasız yöntem denenir.
Not
$cfg['Servers'][$i]['AllowNoPassword']
yönergesiyle parola olmadan oturum açmaya izin vermek mümkündür.
-
$cfg['Servers'][$i]['only_db']
¶ Tür: string ya da array Varsayılan değer: ''
Eğer veritabanı adı(ları)na (dizilimine) ayarlanırsa, sadece bu veritabanı(ları) kullanıcıya gösterilecektir. phpMyAdmin 2.2.1’den bu yana bu veritabanı(ları) ad(ları)ı MySQL joker karakterleri (“_” and “%”) içerebilir: eğer bu karakterlerin aslına uygun örneklerini kullanmak isterseniz, bunlardan kaçının (yani
'my\_db'
kullanın'my_db'
değil).Kullanılabilir veritabanı listesi oluşturmak için sonradan MySQL isteği göndermeye gerek olmadığından bu yana bu ayar sunucu yükünü hafifletmek için etkin bir yoldur. Ama bu, MySQL veritabanı sunucusunun yetki kurallarını değiştirmez. Eğer ayarlanırsa, sadece bu veritabanlarının görüntüleneceği anlamına gelir ama tüm diğer veritabanlarında kullanılamaz anlamına gelmez.
Bir tane veritabanından daha fazla kullanılan bir örnek:
$cfg['Servers'][$i]['only_db'] = ['db1', 'db2'];
4.0.0 sürümünde değişti: Önceki sürümler bu yönerge aracılığıyla veritabanı adlarının görüntülenme sırasını belirlemek için izin verir.
-
$cfg['Servers'][$i]['hide_db']
¶ Tür: dizgi Varsayılan değer: ''
Bazı veritabanlarını yetkisiz kullanıcılardan gizlemek için düzenli ifadedir. Bu sadece onları listelemeden gizler ama kullanıcı hala onlara erişebilir (örneğin SQL sorgu alanını kullanarak). Erişimi sınırlandırmak için MySQL yetki sistemini kullanın. Örnek, “a” harfinden başlayarak tüm veritabanını gizlemek için şunu kullanın
$cfg['Servers'][$i]['hide_db'] = '^a';
ve her iki “db1” ve “db2” gizlemek için şunu kullanın
$cfg['Servers'][$i]['hide_db'] = '^(db1|db2)$';
Düzenli ifadeler üzerine daha fazla bilgi PHP referans kitapçığının PCRE düzenli ifade sözdizimi bölümünde bulunabilir.
-
$cfg['Servers'][$i]['verbose']
¶ Tür: dizgi Varsayılan değer: ''
Sadece phpMyAdmin’i çoklu sunucu girişleriyle kullandığınızda faydalıdır. Eğer ayarlanırsa ana sayfada aşağı açılan menüde anamakine adı yerine bu dizgi görüntülenecektir. Eğer sisteminizde sadece belirli veritabanlarını göstermek isterseniz, bu kullanışlı olabilir örneğin. HTTP kimlik doğrulaması için tüm US-ASCII olmayan karakterler çıkartılacaktır.
-
$cfg['Servers'][$i]['extension']
¶ Tür: dizgi Varsayılan değer: 'mysqli'
4.2.0 sürümünden beri önerilmiyor: Bu ayar kaldırıldı.
mysql
uzantısı sadecemysqli
uzantısı mevcut olmadığında kullanılacaktır. 5.0.0’dan itibaren, sadecemysqli
uzantısı kullanılabilir.Kullanmak için PHP MySQL eklentisi (
mysql
veyamysqli
).Tüm kurulumlarda,
'mysqli'
kullanılması önerilir.
-
$cfg['Servers'][$i]['pmadb']
¶ Tür: dizgi Varsayılan değer: ''
phpMyAdmin yapılandırma depolamasını içeren veritabanının adıdır.
Bu özelliğin yararlarını görmek için ve bu veritabanının hızlı yoldan oluşturulması ve gerekli tablolar için bu belgede phpMyAdmin yapılandırma depolaması bölümüne bakın.
Eğer bu phpMyAdmin kurulumunun sadece kullanıcısı sizseniz, bu özel tabloları depolamak için şu anki veritabanınızı kullanabilirsiniz; bu durumda şu anki veritabanı adınızı sadece
$cfg['Servers'][$i]['pmadb']
içine koyun. Çoklu kullanıcı kurulumu için bu parametreyi phpMyAdmin yapılandırma depolamasını içeren merkezi veritabanınızın adına ayarlayın.
-
$cfg['Servers'][$i]['bookmarktable']
¶ Tür: string ya da false Varsayılan değer: ''
2.2.0 sürümüyle geldi.
2.2.0 yayımından bu yana phpMyAdmin kullanıcıların sorguları işaretlemesine izin verir. Bu sık sık çalıştırdığınız sorgular için faydalı olabilir. Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['bookmarktable']
içine tablo adını girin
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['relation']
¶ Tür: string ya da false Varsayılan değer: ''
2.2.4 sürümüyle geldi.
2.2.4 yayımından bu yana başka bir tabloda (dış anahtar) anahtar olan sütunu özel ‘ilişki’ tablosunda tanımlayabilirsiniz. phpMyAdmin halen:
- asıl tabloya gözattığınızda, dış tabloyu işaret eden veri değerlerini tıklanabilir yapmak için bunu kullanır;
- eğer fareyi dış anahtarı içeren sütunun üzerine götürürseniz, asıl tabloya gözattığınızda isteğe bağlı araç ipucunu “görüntüleme sütunu” içinde görüntülemek için bunu kullanır (ayrıca ‘table_info’ tablosunu kullanın); (bakınız 6.7 “Görüntüleme sütunu” özelliğini nasıl kullanabilirim?)
- düzenle/ekle kipinde, olası dış anahtarların aşağı açılır menü listesi görüntülemek için bunu kullanır (anahtar değeri ve “görüntüleme sütunu” gösterilir) (bakınız 6.21 Düzenle/ekle kipinde, bazı dış tablo tabanlı, bir sütun için olası değerlerin listesini nasıl görebilirim?)
- tablo özellikleri sayfasında bağlantıları görüntülemek için bunu kullanır, her tanımlanan anahtar için veri tutarlılığını (eksik dış anahtarları görüntüleme) kontrol etmek için;
- örnekle sorgulamada, otomatik katılımlar oluşturmak için bunu kullanır (bakınız 6.6 Örnekle sorgulamada ilişki tablosunu nasıl kullanabilirim?)
- veritabanınızın PDF şemasını almanızı etkinleştirmek için bunu kullanır (ayrıca table_coords tablosunu kullanır).
Anahtarlar sayısal veya harf olabilir.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['relation']
içine ilişki tablosu adını koyun- şimdi normal kullanıcı gibi phpMyAdmin’i açın ve bu özelliği kullanmak istediğiniz her bir tablonuz için Yapı/İlişki görünümü/’ne tıklayın ve dış sütunları seçin.
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.Not
Şu anki sürümde,
master_db
,foreign_db
ile aynı olmak zorundadır. Bu sütunlar cross-db ilişkilerinin gelecekteki geliştirmesi için koyulmuştur.
-
$cfg['Servers'][$i]['table_info']
¶ Tür: string ya da false Varsayılan değer: ''
2.3.0 sürümüyle geldi.
2.3.0 yayımından bu yana uygun anahtar üzerine imleç götürüldüğünde araç ipucu olarak görüntülenmesi için sütunu özel ‘table_info’ tablosunda tanımlayabilirsiniz. Bu yapılandırma değişkeni bu özel tablonun adını tutacak. Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['table_info']
içine tablo adını koyun (örn.pma__table_info
)- ondan sonra bu özelliği kullanmak istediğiniz her tablo da, sütunu seçmek için “Yapı/İlişki görünümü/Görüntülemek için sütun seçin”e tıklayın.
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['table_coords']
¶ Tür: string ya da false Varsayılan değer: ''
Tasarımcı özelliği sayfa düzeninizi kaydedebilir; genişleyen tasarımcı menüsünde “Sayfayı kaydet” veya “Sayfayı farklı kaydet” düğmesine basarak, düzeni özelleştirebilir ve bir dahaki sefere tasarımcıyı kullandığınızda yüklü düzene sahip olabilirsiniz. Bu düzen bu tabloda depolanır. Dahası, bu tablo aynı zamanda PDF ilişkisi dışa aktarma özelliğini kullanmak için gereklidir, ilave ayrıntılar için bakınız
$cfg['Servers'][$i]['pdf_pages']
.
-
$cfg['Servers'][$i]['pdf_pages']
¶ Tür: string ya da false Varsayılan değer: ''
2.3.0 sürümüyle geldi.
2.3.0 yayımından bu yana tablolarınızın arasındaki ilişkileri gösteren PDF sayfaları oluşturan phpMyAdmin’e sahip olabiliyorsunuz. Bundan başka, tasarımcı arayüzü ilişkileri görsel olarak yönetmeyi sağlar. Bunu yapmak için iki tabloya ihtiyaç duyar, “pdf_pages” (mevcut PDF sayfalar ile ilgili bilgiyi depolayan) ve “table_coords” (PDF şema çıktısında yer alacak her bir tablonun koordinatlarını depolayan). “İlişki” özelliğini kullanmak zorundasınız.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın- doğru tablo adlarını
$cfg['Servers'][$i]['table_coords']
ve$cfg['Servers'][$i]['pdf_pages']
içine koyun
Bu özellik, yapılandırmalardan herhangi biri
false
olarak ayarlanarak etkisizleştirilebilir.Ayrıca bkz.
-
$cfg['Servers'][$i]['designer_coords']
¶ Tür: dizgi Varsayılan değer: ''
2.10.0 sürümüyle geldi: 2.10.0 yayımından bu yana Tasarımcı arayüzü mevcuttur; bağlantıları görsel yönetmeye izin verir.
4.3.0 sürümünden beri önerilmiyor: Bu ayar kaldırıldı ve Tasarımcı tablosu konumlandırma verileri artık
$cfg['Servers'][$i]['table_coords']
içinde saklanıyor.Not
Artık ‘pma__designer_coords’ tablosunu phpMyAdmin yapılandırma depolama veritabanınızdan silebilir ve yapılandırma dosyanızdan :config:option:`$cfg[‘Servers’][$i][‘designer_coords’]’ öğesini kaldırabilirsiniz.
-
$cfg['Servers'][$i]['column_info']
¶ Tür: string ya da false Varsayılan değer: ''
2.3.0 sürümüyle geldi.
Bu kısım bir içerik güncellemesi gerektirir! 2.3.0 yayımından bu yana her tablo için her sütunu tanımlayan açıklamaları depolayabiliyorsunuz. Bunlar ondan sonra “baskı görünümünde” gösterilecektir.
2.5.0 yayımıyla başlayarak, açıklamalar bu nedenle tablo tercih sayfasında ve tablo gözatma görünümünde kullanılmaktadır, sütun adının (tercihler sayfası) üzerinde araç ipucu veya gözatma görünümünde tablonun başlığına gömülü olarak gösterilmektedir. Ayrıca tablo dökümünde gösterilebilirler. Lütfen daha sonra konu ile ilgili yapılandırma yönergelerine bakın.
Ayrıca 2.5.0 yayımında yeni olan, aynı zamanda aşağıdaki tablo yapısına dayanan MIME-dönüşüm sistemidir. Daha fazla bilgi için bakınız Dönüşümler. MIME-dönüşüm sistemini kullanmak için column_info tablonuz üç yeni sütuna sahip olmalıdır, ‘mimetype’, ‘transformation’, ‘transformation_options’.
4.3.0 yayımından başlayarak, yeni bir girdi odaklı dönüşüm sistemi tanıtıldı. Ayrıca eski dönüşümler sisteminde kullanılan geriye dönük uyumluluk kodu kaldırıldı. Sonuç olarak, önceki dönüşümler için ve yeni girdi odaklı dönüşüm sisteminin çalışması için column_info tablosuna güncelleme gerekir. phpMyAdmin, current column_info tablonuzun yapısını çözümleyerek sizin için otomatik olarak yükseltecek. Ancak, otomatik yükseltmede birşey yanlış giderse o zaman el ile yükseltmek için
./sql/upgrade_column_info_4_3_0+.sql
içinde bulunan SQL betiğini kullanabilirsiniz.Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['column_info']
içine tablo adını koyun (örn.pma__column_info
)PRE-2.5.0 Column_comments tablonuzu güncellemek için bunu kullanın: ve unutmayın
config.inc.php
dosyası içindeki Değişken$cfg['Servers'][$i]['column_comments']
değerinden$cfg['Servers'][$i]['column_info']
değerine yeniden adlandırılmıştırALTER TABLE `pma__column_comments` ADD `mimetype` VARCHAR( 255 ) NOT NULL, ADD `transformation` VARCHAR( 255 ) NOT NULL, ADD `transformation_options` VARCHAR( 255 ) NOT NULL;
PRE-4.3.0 Column_info tablonuzu el ile güncellemek için bu
./sql/upgrade_column_info_4_3_0+.sql
SQL betiğini kullanın.
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.Not
Otomatik yükseltme işlevselliğinin çalışması için
$cfg['Servers'][$i]['controluser']
kullanıcınız,phpmyadmin
veritabanında ALTER yetkisine sahip olmak zorundadır. Bir kullanıcıya nasılGRANT
yetkileri verileceğine, GRANT için MySQL belgelerine bakın.
-
$cfg['Servers'][$i]['history']
¶ Tür: string ya da false Varsayılan değer: ''
2.5.0 sürümüyle geldi.
2.5.0 yayımından bu yana phpMyAdmin arayüzü içinden elle girdiğiniz tüm sorguların SQL geçmişini depolayabilirsiniz. Eğer tablo tabanlı geçmiş kullanmak istemiyorsanız, JavaScript tabanlı geçmiş kullanabilirsiniz.
Bunun kullanımıyla, pencereyi kapattığınızda tüm geçmiş öğeleriniz silinir.
$cfg['QueryHistoryMax']
kullanarak tutulmasını istediğiniz geçmiş öğelerinin miktarını belirleyebilirsiniz. Her oturum açmada, bu liste kesilerek en fazla miktar getirilir.Sorgu geçmişi sadece, eğer tarayıcınızda JavaScript etkinleştirilirse, kullanılabilir.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['history']
içine tablo adını koyun (örn.pma__history
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['recent']
¶ Tür: string ya da false Varsayılan değer: ''
3.5.0 sürümüyle geldi.
3.5.0 yayımından bu yana gezinti panelinde en son kullanılan tabloları gösterebilirsiniz. Doğrudan tabloya, veritabanı seçmeye gerek kalmadan, atlamanıza yardımcı olur ve ondan sonra tablo seçersiniz.
$cfg['NumRecentTables']
kullanarak gösterilen son tabloların en fazla sayısını yapılandırabilirsiniz. Listeden bir tablo seçtiğinizde,$cfg['NavigationTreeDefaultTabTable']
içinde belirtilen sayfaya atlayacaktır.Depolamayı yapılandırmadan, hala son kullanılan tablolara erişebilirsiniz, ama oturumunuzu kapattıktan sonra kaybolacaktır.
Bu işlevselliğin kullanımına sürekli izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['recent']
içine tablo adını koyun (örn.pma__recent
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['favorite']
¶ Tür: string ya da false Varsayılan değer: ''
4.2.0 sürümüyle geldi.
4.2.0 yayımından bu yana Gezinti panelinde seçilen tabloların bir listesini gösterebilirsiniz. Doğrudan tabloya, veritabanı seçmeye gerek kalmadan, atlamanıza yardımcı olur ve ondan sonra tabloyu seçersiniz. Listeden bir tablo seçtiğinizde,
$cfg['NavigationTreeDefaultTabTable']
içinde belirtilen sayfaya atlayacaktır.Tabloları bu listeye ekleyebilir veya tabloları veritabanı yapısı sayfasında tablo adlarının yanındaki yıldız simgelerine tıklayarak kaldırabilrsiniz.
$cfg['NumFavoriteTables']
kullanarak gösterilen sık kullanılan tabloların en fazla sayısını yapılandırabilirsiniz.Depolamayı yapılandırmadan, hala sık kullanılan tablolara erişebilirsiniz, ama oturumunuzu kapattıktan sonra kaybolacaktır.
Bu işlevselliğin kullanımına sürekli izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['favorite']
içine tablo adını koyun (örn.pma__favorite
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['table_uiprefs']
¶ Tür: string ya da false Varsayılan değer: ''
3.5.0 sürümüyle geldi.
3.5.0 yayımından bu yana phpMyAdmin tablolara gözatmada birkaç şeyi (sıralı sütun
$cfg['RememberSorting']
, sütun sırası ve veritabanı tablosundan sütun görünürlüğü) hatırlaması için yapılandırılabilir. Depolamayı yapılandırmadan, bu özellikler hala kullanılabilir, ama değerler oturumunuzu kapattıktan sonra kaybolacaktır.Bu işlevselliğin kullanımına sürekli izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['table_uiprefs']
içine tablo adını koyun (örn.pma__table_uiprefs
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['users']
¶ Tür: string ya da false Varsayılan değer: ''
phpMyAdmin tarafından kullanıcı gruplarıyla ilişkilendirilmek üzere kullanıcı adı bilgilerini saklamak için kullanılan tablo. Daha fazla ayrıntı ve önerilen ayarlar için
$cfg['Servers'][$i]['usergroups']
bölümündeki sonraki girişe bakın.
-
$cfg['Servers'][$i]['usergroups']
¶ Tür: string ya da false Varsayılan değer: ''
4.1.0 sürümüyle geldi.
4.1.0 yayımından bu yana bunlara bağlı menü öğeleri ile farklı kullanıcı grupları oluşturabilirsiniz. Kullanıcılar bu gruplara atanabilir ve oturum açmış kullanıcı yalnızca atandıkları kullanıcı grubu için yapılandırılmış menü öğelerini görecektir. Bunu yapmak için iki tablo “usergroups” (her kullanıcı grubu için izin verilen menü öğelerini saklar) ve “users” (kullanıcıları ve kullanıcı gruplarına atamalarını saklar) gerekir.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın- doğru tablo adlarını
$cfg['Servers'][$i]['users']
(örn.pma__users
) ve$cfg['Servers'][$i]['usergroups']
(örn.pma__usergroups
) içine koyun
Bu özellik, yapılandırmalardan herhangi biri
false
olarak ayarlanarak etkisizleştirilebilir.Ayrıca bkz.
Tür: string ya da false Varsayılan değer: ''
4.1.0 sürümüyle geldi.
4.1.0 yayımından bu yana gezinti ağacındaki öğeleri gizleyebilir/gösterebilirsiniz.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['navigationhiding']
içine tablo adını koyun (örn.pma__navigationhiding
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['central_columns']
¶ Tür: string ya da false Varsayılan değer: ''
4.3.0 sürümüyle geldi.
4.3.0 yayımından bu yana veritabanı başına sütunların merkezi listesine sahip olabilirsiniz. Her gereksiniminize göre sütunları listeye ekleyebilirsiniz/kaldırabilirsiniz. Merkezi listedeki bu sütunlar bir tablo için yeni bir sütun oluşturduğunuzda ya da kendi kendine bir tablo oluşturduğunda kullanmak için mevcut olacaktır. Yeni bir sütun oluştururken merkezi listeden bir sütun seçebilirsiniz, aynı sütun tanımını tekrar yazmaktan veya benzer sütun için farklı adlar yazmaktan kurtaracaktır.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['central_columns']
içine tablo adını koyun (örn.pma__central_columns
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['designer_settings']
¶ Tür: string ya da false Varsayılan değer: ''
4.5.0 sürümüyle geldi.
4.5.0 yayımından bu yana tasarımcı ayarlarınız hatırlanabilir. ‘Yönlendirmeli/Doğrudan Bağlantılar’, ‘Kılavuza Uydur’, ‘İlişki Satırlarını Değiştir’, ‘Tümünü Küçült/Büyült’, ‘Menüyü Taşı’ ve ‘Metni Sabitle’ seçiminizle ilgili olarak sürekli hatırlanabilir.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['designer_settings']
içine tablo adını koyun (örn.pma__designer_settings
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['savedsearches']
¶ Tür: string ya da false Varsayılan değer: ''
4.2.0 sürümüyle geldi.
4.2.0 yayımından bu yana örnekle sorgulama aramalarını Veritabanı > Sorgu panelinden yükleyebilir ve kaydedebilirsiniz.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['savedsearches']
içine tablo adını koyun (örn.pma__savedsearches
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['export_templates']
¶ Tür: string ya da false Varsayılan değer: ''
4.5.0 sürümüyle geldi.
4.5.0 yayımından bu yana dışa aktarma şablonlarını yükleyebilir ve kaydedebilirsiniz.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['export_templates']
içine tablo adını koyun (örn.pma__export_templates
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['tracking']
¶ Tür: string ya da false Varsayılan değer: ''
3.3.x sürümüyle geldi.
3.3.x yayımından bu yana izleme mekanizması kullanılabilirdir. phpMyAdmin tarafından çalıştırılan her SQL komutunu izlemenize yardım eder. Mekanizma, veri işleme günlüklemesini ve veri tanımlama ifadelerini destekler. Etkinleştirdikten sonra tabloların sürümlerini oluşturabilirsiniz.
Sürümün oluşturulmasının iki etkisi vardır:
- phpMyAdmin tablonun anlık görüntüsünü kaydeder, yapı ve indeksler dahil.
- phpMyAdmin tabloların yapı ve/veya verisini değiştiren ve sürüm numarası ile bu komutları bağlayan tüm komutları günlükler.
Elbette izleme değişikliklerini görüntüleyebilirsiniz. Her sürüm için tam rapor İzleme sayfasında mevcuttur. Rapor için süzgeçleri kullanabilirsiniz, örneğin bir tarih aralığındaki ifadelerin listesini alabilirsiniz. Kullanıcı adlarını süzmek istediğinizde tüm adlar için * girebilirsiniz veya ad listesini ‘,’ ile ayırarak girin. İlave olarak (süzülmüş) raporu bir geçici veritabanına veya bir dosyaya aktarabilirsiniz.
Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['tracking']
içine tablo adını koyun (örn.pma__tracking
)
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['tracking_version_auto_create']
¶ Tür: boolean Varsayılan değer: false İzleme mekanizması tablolar ve görünümler için otomatik olarak sürümler oluşturursa.
Eğer bu true olarak ayarlanırsa ve bir tabloyu
- CREATE TABLE …
- CREATE VIEW …
ile oluşturur ya da gösterirseniz ve bunun için sürüm mevcut değilse, mekanizma sizin için otomatik olarak bir sürüm oluşturacaktır.
-
$cfg['Servers'][$i]['tracking_default_statements']
¶ Tür: dizgi Varsayılan değer: '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'
Yeni sürümler için otomatik oluşturma kullanan ifadeler listesini tanımlar.
-
$cfg['Servers'][$i]['tracking_add_drop_view']
¶ Tür: boolean Varsayılan değer: true Bir görünüm oluşturulurken günlüğe ilk satır olarak bir DROP VIEW IF EXISTS ifadesinin eklenip eklenmeyeceği.
-
$cfg['Servers'][$i]['tracking_add_drop_table']
¶ Tür: boolean Varsayılan değer: true Bir tablo oluşturulurken günlüğe ilk satır olarak bir DROP TABLE IF EXISTS ifadesinin eklenip eklenmeyeceği.
-
$cfg['Servers'][$i]['tracking_add_drop_database']
¶ Tür: boolean Varsayılan değer: true Bir veritabanı oluşturulurken günlüğe ilk satır olarak bir DROP DATABASE IF EXISTS ifadesinin eklenip eklenmeyeceği.
-
$cfg['Servers'][$i]['userconfig']
¶ Tür: string ya da false Varsayılan değer: ''
3.4.x sürümüyle geldi.
3.4.x yayımından bu yana phpMyAdmin kullanıcılara kendi kendilerine çoğu tercihi ayarlamalarına ve onları veritabanında depolamalarına izin verir.
Eğer tercihleri
$cfg['Servers'][$i]['pmadb']
içinde depolamak için izin vermezseniz, kullanıcılar hala phpMyAdmin’i özelleştirebilirler ama ayarlar tarayıcının yerel depolamasına kaydedilecektir ya da oturumun sonuna kadar kullanılamaz olacaktır.Bu işlevselliğin kullanımına izin vermek için:
$cfg['Servers'][$i]['pmadb']
ve phpMyAdmin yapılandırma depolamasını ayarlayın$cfg['Servers'][$i]['userconfig']
içine tablo adını koyun
Bu özellik, yapılandırma
false
olarak ayarlanarak etkisizleştirilebilir.
-
$cfg['Servers'][$i]['MaxTableUiprefs']
¶ Tür: tam sayı Varsayılan değer: 100 $cfg['Servers'][$i]['table_uiprefs']
tablosu içinde kaydedilmiş en fazla satır sayısı.Tablolar kaldırıldığında ya da yeniden adlandırıldığında,
$cfg['Servers'][$i]['table_uiprefs']
geçersiz veri içerebilir (artık mevcut olmayan tablolara dayanarak). Biz sadece$cfg['Servers'][$i]['table_uiprefs']
içindeki bu en yeni satırların sayısını tutarız ve otomatik olarak eski satırları sileriz.
-
$cfg['Servers'][$i]['SessionTimeZone']
¶ Tür: dizgi Varsayılan değer: ''
phpMyAdmin tarafından kullanılan saat dilimini ayarlar. Veritabanı sunucunuzun saat dilimini kullanmak için boş bırakın. Olası değerler https://dev.mysql.com/doc/refman/8.0/en/time-zone-support.html adresinde açıklanmaktadır
Veritabanı sunucunuz phpMyAdmin’de kullanmak istediğiniz saat diliminden farklı bir saat dilimi kullandığında bu faydalıdır.
-
$cfg['Servers'][$i]['AllowRoot']
¶ Tür: boolean Varsayılan değer: true Root erişimine izin vermek gerekirse. Bu sadece aşağıdaki
$cfg['Servers'][$i]['AllowDeny']['rules']
için bir kısayoldur.
-
$cfg['Servers'][$i]['AllowNoPassword']
¶ Tür: boolean Varsayılan değer: false Parolasız oturum açmalarına izin vermek gerekirse. Bu parametre için varsayılan değer
false
, MySQL sunucusuna boş bırakılan root parolası veya isimsiz (boş) kullanıcı tanımıyla istenmeden yapılan erişimi önler.
-
$cfg['Servers'][$i]['AllowDeny']['order']
¶ Tür: dizgi Varsayılan değer: ''
Eğer kural sıranız boşsa, ondan sonra IP yetkisi etkisizleştirilir.
Eğer kural sıranız
'deny,allow'
olarak ayarlanırsa ondan sonra sistem tüm reddet kurallarının peşinden izleyen izin ver kuralını uygular. Varsayılan olarak erişime izin verilir. Deny (Reddet) komutuna uymayan ya da Allow (İzin ver) komutuna uyan herhangi bir istemciye, sunucuya erişim izni verilecektir.Eğer kural sıranız
'allow,deny'
olarak ayarlanırsa ondan sonra sistem tüm izin ver kurallarının peşinden izleyen reddet kuralını uygular. Varsayılan olarak erişim reddedilir. Allow (İzin ver) yönergesine uymayan ya da Denny (Reddet) yönergesine uyan herhangi bir istemcinin, sunucuya erişimi reddedilecektir.Eğer kural sıranız
'explicit'
olarak ayarlıysa, yetki aynı tarzda ‘deny,allow’ kural sırasında yapılır, eklenen kısıtlama ile, anamakineniz/kullanıcı adınız birleşimi, allow kuralları içinde listelenmek zorundadır ve deny kuralları içinde listelenmemelidir. Bu, Allow/Deny (İzin Ver/Reddet) kuralları kullanımının en güvenli anlamıdır ve herhangi bir sıra ayarlamaksızın izin ver ve reddet kurallarını belirleyerek Apache’de kullanılabilir.Lütfen ayrıca proksiler arkasındaki IP adresini algılamak için
$cfg['TrustedProxies']
yönergesine bakın.
-
$cfg['Servers'][$i]['AllowDeny']['rules']
¶ Tür: dizgilerin dizilimi Varsayılan değer: array() Kurallar için genel biçim şöyledir:
<'allow' | 'deny'> <username> [from] <ipmask>
Eğer tüm kullanıcıların eşleşmesini isterseniz, username alanında joker olarak bir
'%'
kullanmanız mümkündür.ipmask alanında dahi kullanabileceğiniz birkaç kısayol vardır (lütfen unutmayın içerdiği SERVER_ADDRESS, tüm web sunucularında mevcut olmayabilir):
'all' -> 0.0.0.0/0 'localhost' -> 127.0.0.1/8 'localnetA' -> SERVER_ADDRESS/8 'localnetB' -> SERVER_ADDRESS/16 'localnetC' -> SERVER_ADDRESS/24
Boş kural listesine sahip olmak ya kural sıranız
'deny,allow'
olarak ayarlıysa'allow % from all'
kullanmaya ya da kural sıranız'allow,deny'
veya'explicit'
olarak ayarlıysa'deny % from all'
kullanmaya eşittir.IP Address eşleştirme sistemi için aşağıdakiler çalışır:
xxx.xxx.xxx.xxx
(tam IP Address)xxx.xxx.xxx.[yyy-zzz]
(IP Address aralığı)xxx.xxx.xxx.xxx/nn
(CIDR, Classless Inter-Domain Routing türü IP adresleri)
Ama aşağıdaki çalışmaz:
xxx.xxx.xxx.xx[yyy-zzz]
(kısmi IP adresi aralığı)
IPv6 adresleri için aşağıdakiler çalışır:
xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
(tam IPv6 adresi)xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:[yyyy-zzzz]
(IPv6 adresi aralığı)xxxx:xxxx:xxxx:xxxx/nn
(CIDR, Classless Inter-Domain Routing türü IPv6 adresleri)
Ama aşağıdaki çalışmaz:
xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xx[yy-zz]
(kısmi IPv6 adresi aralığı)
Örnekler:
$cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow bob from all']; // Allow only 'bob' to connect from any host $cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow mary from 192.168.100.[50-100]']; // Allow only 'mary' to connect from host 192.168.100.50 through 192.168.100.100 $cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow % from 192.168.[5-6].10']; // Allow any user to connect from host 192.168.5.10 or 192.168.6.10 $cfg['Servers'][$i]['AllowDeny']['order'] = 'allow,deny'; $cfg['Servers'][$i]['AllowDeny']['rules'] = ['allow root from 192.168.5.50','allow % from 192.168.6.10']; // Allow any user to connect from 192.168.6.10, and additionally allow root to connect from 192.168.5.50
-
$cfg['Servers'][$i]['DisableIS']
¶ Tür: boolean Varsayılan değer: false Bilgiyi almak için
INFORMATION_SCHEMA
(bunun yerineSHOW
komutlarını kullanın) kullanımını etkisizleştirir, bunun nedeni birçok veritabanı olduğunda hız sorunlarının olmasıdır.Not
Bu seçeneği etkinleştirmek eski MySQL sunucularında büyük bir performans artışı verebilir.
-
$cfg['Servers'][$i]['SignonScript']
¶ Tür: dizgi Varsayılan değer: ''
3.5.0 sürümüyle geldi.
Kaynak olan ve oturum açma kimlik bilgilerini sağlamak için çalıştırılan PHP betiğinin adıdır. Bu alternatif, oturum tabanlı tek oturumu açma yaklaşımıdır. Betiğin, kullanıcı adı ve parola listesini döndüren, varolan kullanıcı adının (boş olabilir) tek parametresini kabul eden
get_login_credentials
adındaki işlevi sağlamak zorundadır. Örnek içinexamples/signon-script.php
dosyasına bakın:<?php /** * Single signon for phpMyAdmin * * This is just example how to use script based single signon with * phpMyAdmin, it is not intended to be perfect code and look, only * shows how you can integrate this functionality in your application. */ declare(strict_types=1); // phpcs:disable Squiz.Functions.GlobalFunction /** * This function returns username and password. * * It can optionally use configured username as parameter. * * @param string $user User name * * @return array<int,string> */ function get_login_credentials(string $user): array { /* Optionally we can use passed username */ if (! empty($user)) { return [$user, 'password']; } /* Here we would retrieve the credentials */ return ['root', '']; }
Ayrıca bkz.
-
$cfg['Servers'][$i]['SignonSession']
¶ Tür: dizgi Varsayılan değer: ''
Oturumu açma kimlik doğrulaması yöntemi için kullanılacak oturumun adı.
phpMyAdmin
’den farklı bir şey kullanmalısınız çünkü bu phpMyAdmin’in dahili olarak kullandığı oturumdur. Sadece$cfg['Servers'][$i]['SignonScript']
yapılandırılmazsa etkili olur.Ayrıca bkz.
-
$cfg['Servers'][$i]['SignonCookieParams']
¶ Tür: dizilim Varsayılan değer: array()
4.7.0 sürümüyle geldi.
Diğer kimlik doğrulama sisteminin oturum tanımlama bilgisi parametrelerinin bir ilişkisel dizilimi. Diğer sistem session_set_cookie_params() kullanmıyorsa gerekli değildir. Anahtarlar ‘lifetime’, ‘path’, ‘domain’, ‘secure’ veya ‘httponly’ içermelidir. Geçerli değerlerden, session_get_cookie_params içinde bahsedilir, diğer uygulama kullanımları gibi aynı değerlere ayarlanmalıdırlar. Sadece
$cfg['Servers'][$i]['SignonScript']
yapılandırılmadıysa etkili olur.Ayrıca bkz.
-
$cfg['Servers'][$i]['SignonURL']
¶ Tür: dizgi Varsayılan değer: ''
Oturumu açma kimlik doğrulaması yöntemi için kullanıcının oturum açmaya yönlendirileceği URL. Protokol tam dahil olmalıdır.
Ayrıca bkz.
-
$cfg['Servers'][$i]['LogoutURL']
¶ Tür: dizgi Varsayılan değer: ''
Oturumu kapattıktan sonra kullanıcının yönlendirileceği URL (kimlik doğrulaması yöntemi yapılandırması etkilenmez). Protokol tam dahil olmalıdır.
-
$cfg['Servers'][$i]['hide_connection_errors']
¶ Tür: boolean Varsayılan değer: false 4.9.8 sürümüyle geldi.
Oturum açma sayfasında ayrıntılı MySQL/MariaDB bağlantı hatalarının gösterileceği ya da gizleneceği.
Not
Bu hata iletisi, ağınızla ilgili bilgileri bir saldırgana gösterebilecek hedef veritabanı sunucusu anamakine adını veya IP adresini içerebilir.
Kapsamlı ayarlar¶
-
$cfg['DisableShortcutKeys']
¶ Tür: boolean Varsayılan değer: false $cfg['DisableShortcutKeys']
parametresini true olarak ayarlayarak phpMyAdmin kısayol tuşlarını etkisizleştirebilirsiniz.
-
$cfg['ServerDefault']
¶ Tür: tam sayı Varsayılan değer: 1 Yapılandırılmış birden fazla sunucunuz varsa,
$cfg['ServerDefault']
dizgisini, phpMyAdmin başlatıldığında bu sunucuya otomatik bağlanması için bunlardan herhangi birine ayarlayabilirsiniz ya da oturum açmadan sunucuların listesinin verilmesi için 0’a ayarlayabilirsiniz.Eğer yapılandırılmış sadece bir sunucu varsa,
$cfg['ServerDefault']
dizgisi bu sunucuya ayarlanmak ZORUNDADIR.
-
$cfg['VersionCheck']
¶ Tür: boolean Varsayılan değer: true Ana phpMyAdmin sayfasında JavaScript kullanarak veya doğrudan index.php?route=/version-check dosyasına erişerek en son sürümü denetlemeyi etkinleştirir.
Not
Bu ayar satıcınız tarafından ayarlanabilir.
-
$cfg['ProxyUrl']
¶ Tür: dizgi Varsayılan değer: ''
phpMyAdmin’in mesela en son sürüm hakkında bilgi alırken ya da hata raporlarını gönderirken, internet dışına erişime ihtiyaç duyduğunda kullanılan proksi url’sidir. phpMyAdmin’nin yüklü olduğu sunucunun doğrudan internet erişimi yoksa buna ihtiyacınız olur. Biçimi: “anamakineadı:bağlantınoktası”
-
$cfg['ProxyUser']
¶ Tür: dizgi Varsayılan değer: ''
Proksi kimlik doğrulaması için kullanıcı adı. Varsayılan olarak, kimlik doğrulaması yapılmaz. Eğer kullanıcı adı verilirse, Temel Kimlik Doğrulaması yapılacaktır. Kimlik doğrulamasının şu an desteklenen diğer türleri yoktur.
-
$cfg['ProxyPass']
¶ Tür: dizgi Varsayılan değer: ''
Proksi ile kimlik doğrulaması için parola.
-
$cfg['MaxDbList']
¶ Tür: tam sayı Varsayılan değer: 100 Ana panelin veritabanı listesinde görüntülenmesi için en fazla veritabanı adı sayısı.
-
$cfg['MaxTableList']
¶ Tür: tam sayı Varsayılan değer: 250 Ana panelin listesinde (Dışa aktarma sayfası dışında) görüntülenmesi için en fazla tablo adı sayısı.
-
$cfg['ShowHint']
¶ Tür: boolean Varsayılan değer: true İpuçlarının gösterilip gösterilmeyeceği (örneğin, tablo başlıklarının üzerinde bekletince çıkan ipuçları).
-
$cfg['MaxCharactersInDisplayedSQL']
¶ Tür: tam sayı Varsayılan değer: 1000 SQL sorgusu görüntülendiğindeki en fazla karakter sayısı. Varsayılan sınır 1000, BLOB’ları temsil eden tonlarca onaltılık kodu görüntülemeyi önlemek için düzeltilmelidir ama bazı kullanıcılar 1000 karakterden uzun gerçek SQL sorgulara sahiptir. Bu yüzden sorgunun uzunluğu bu limiti aşarsa, bu sorgu geçmiş içine kaydedilmez.
-
$cfg['PersistentConnections']
¶ Tür: boolean Varsayılan değer: false Kalıcı bağlantıların kullanılması gerektiği ya da gerekmediği.
Ayrıca bkz.
-
$cfg['ForceSSL']
¶ Tür: boolean Varsayılan değer: false 4.6.0 sürümünden beri önerilmiyor: Bu ayar artık phpMyAdmin 4.6.0 sürümünden bu yana kullanılabilir değildir. Lütfen bunun yerine web sunucunuzu ayarlayın.
phpMyAdmin’e erişilirken https kullanmaya zorlanıp zorlanmayacağı. Bir ters proksi kurulumunda, bunun
true
olarak ayarlanması desteklenmez.Not
Bazı kurlarda (ayrı SSL proksi ya da yükleme dengeleyicisi gibi) doğru yeniden yönlendirme için
$cfg['PmaAbsoluteUri']
ayarlamak zorunda kalabilirsiniz.
-
$cfg['MysqlSslWarningSafeHosts']
¶ Tür: dizilim Varsayılan değer: ['127.0.0.1', 'localhost']
Bu arama büyük/küçük harfe duyarlıdır ve sadece tam dizgiyle eşleşecektir. Eğer ayarlamanız SSL kullanmıyor, ancak yerel bir bağlantı veya özel ağ kullandığınızdan güvenliyse, anamakine adınızı veya IP adresinizi listeye ekleyebilirsiniz. Ayrıca, varsayılan girişleri sadece sizinkini içerecek şekilde kaldırabilirsiniz.
Bu denetim
$cfg['Servers'][$i]['host']
değerini kullanır.5.1.0 sürümüyle geldi.
Örnek yapılandırma
$cfg['MysqlSslWarningSafeHosts'] = ['127.0.0.1', 'localhost', 'mariadb.local'];
-
$cfg['ExecTimeLimit']
¶ Tür: tam sayı [saniye sayısı] Varsayılan değer: 300 Bir betiğin çalışmasına izin verilen saniye sayısını ayarlar. Eğer saniye sıfıra ayarlanırsa, uygulanan zaman sınırı yoktur. Bu ayar döküm dosyalarını içe/dışa aktarırken kullanılır ama PHP güvenli kipte çalışıyorken etkisi yoktur.
-
$cfg['SessionSavePath']
¶ Tür: dizgi Varsayılan değer: ''
Oturum verisini depolamak için yol (session_save_path PHP parametresi).
Uyarı
Bu klasör web sunucusu aracılığıyla halka erişilebilir olmamalıdır, aksi takdirde oturumunuzdan gelen özel veri sızıntısı riski doğar.
-
$cfg['MemoryLimit']
¶ Tür: dizgi [bayt sayısı] Varsayılan değer: '-1'
Bir betiğe ayrılması için izin verilen bayt sayısını ayarlar. Eğer
'-1'
ayarlanırsa, sınır koyulmaz.. Eğer'0'
ayarlanırsa, bellek sınırının değiştirilmesi denenmez vephp.ini
memory_limit
kullanılır.Bu ayar döküm dosyaları içe/dışa aktarılırken kullanılır bu yüzden kesinlikle buraya çok düşük bir değer koymayı istemezsiniz. PHP güvenli kipte çalışıyorken etkisi yoktur.
Ayrıca
php.ini
içindeki gibi herhangi bir dizgi kullanabilirsiniz, örn. ‘16M’. Son eki (16’nın anlamı 16 bayt!) unutmadığınızdan kesin emin olun
-
$cfg['SkipLockedTables']
¶ Tür: boolean Varsayılan değer: false Kullanılan tabloları işaretler ve kilitli tablolarla birlikte veritabanlarını göstermeyi mümkün kılar (MySQL 3.23.30’dan beri).
-
$cfg['ShowSQL']
¶ Tür: boolean Varsayılan değer: true phpMyAdmin tarafından üretilmiş SQL sorgularının görüntülenip görüntülenmemesini tanımlar.
-
$cfg['RetainQueryBox']
¶ Tür: boolean Varsayılan değer: false SQL sorgu kutusunun sunuşundan sonra ekran görüntüsü tutulmalıysa tanımlar.
-
$cfg['CodemirrorEnable']
¶ Tür: boolean Varsayılan değer: true SQL sorgu kutuları için Javascript kod düzenleyicisi kullanılmasını tanımlar. CodeMirror sözdizimi vurgulama ve satır numaralarını sağlar. Ancak, bazı Linux dağıtımlarında (Ubuntu gibi) pano içeriklerini orta tıklamayla yapıştırmak tüm tarayıcılar tarafından desteklenmez.
-
$cfg['LintEnable']
¶ Tür: boolean Varsayılan değer: true 4.5.0 sürümüyle geldi.
Çalıştırmadan önce sorgudaki hataları bulmak için ayrıştırıcının kullanılıp kullanılmayacağını tanımlar.
-
$cfg['DefaultForeignKeyChecks']
¶ Tür: dizgi Varsayılan değer: 'default'
Belli sorgular için dış anahtar kontrollerini etkinleştirmek/etkisizleştirmek için, dış anahtar kontrolleri onay kutusunun varsayılan değeri. Olası değerler
'default'
,'enable'
veya'disable'
’dır,FOREIGN_KEY_CHECKS
MySQL değişkeninin değeri kullanılır.
-
$cfg['AllowUserDropDatabase']
¶ Tür: boolean Varsayılan değer: false Uyarı
Bundan kurtulmanın her zaman yolları olacağından bu bir güvenlik önlemi değildir. Kullanıcıların veritabanlarını kaldırmalarını yasaklamak istiyorsanız, onların ilgili KALDIR yetkisini geri alın.
Normal kullanıcıların (yönetici olmayan) kendi veritabanını silmeye izin verilip verilmeyeceğini tanımlar. Eğer false olarak ayarlanırsa, Veritabanını Kaldır bağlantısı gösterilmeyecektir ve hatta
DROP DATABASE veritabanım
komutu reddedilecektir. Birçok müşterisi olan ISP’ler için oldukça kullanışlıdır.SQL sorgularının bu sınırlaması MySQL yetkileri kullanıldığındaki gibi kesin değildir. Bu, oldukça karışık olabilen SQL sorgularının doğasından dolayıdır. Bu yüzden kesin yetki sınırlamasından ziyade bu seçim yanlışlıkla kaldırmayı önlemeye yardımcı olarak gösterilmektedir.
-
$cfg['Confirm']
¶ Tür: boolean Varsayılan değer: true Veri kaybetmek üzere olduğunuzda bir uyarının (”…emin misiniz?”) görüntülenip görüntülenmemesi.
-
$cfg['UseDbSearch']
¶ Tür: boolean Varsayılan değer: true “Veritabanı içinde dizgi arama”yı etkinleştirip etkinleştirmemeyi tanımlar.
-
$cfg['IgnoreMultiSubmitErrors']
¶ Tür: boolean Varsayılan değer: false Eğer sorgulardan biri başarısız olursa, phpMyAdmin’in çoklu sorgu ifadesini çalıştırmaya devam edecekse tanımlar. Varsayılan çalıştırmayı durdurmadır.
-
$cfg['enable_drag_drop_import']
¶ Tür: boolean Varsayılan değer: true Sürükle ve bırak içe aktarma özelliğinin etkin olup olmadığı. Etkinleştirildiğinde, kullanıcı bir dosyayı tarayıcısına sürükleyebilir ve phpMyAdmin dosyayı içe aktarmaya çalışacaktır.
-
$cfg['URLQueryEncryption']
¶ Tür: boolean Varsayılan değer: false 4.9.8 sürümüyle geldi.
phpMyAdmin’in, URL sorgu dizgisinden hassas verileri (veritabanı adı ve tablo adı gibi) şifreleyip şifrelemeyeceğini tanımlayın. Varsayılan, URL sorgu dizgisini şifrelememektir.
-
$cfg['URLQueryEncryptionSecretKey']
¶ Tür: dizgi Varsayılan değer: ''
4.9.8 sürümüyle geldi.
URL sorgu dizgisini şifrelemek/şifresini çözmek için kullanılan gizli bir anahtar. 32 bayt uzunluğunda olmalıdır.
Ayrıca bkz.
-
$cfg['maxRowPlotLimit']
¶ Tür: tam sayı Varsayılan değer: 500 Yakınlaştırma araması için alınan en fazla satır sayısı.
Tanımlama bilgisi kimlik doğrulaması seçenekleri¶
-
$cfg['blowfish_secret']
¶ Tür: dizgi Varsayılan değer: ''
“cookie” auth_type, tanımlama bilgilerini şifrelemek için Sodium uzantısını kullanır (bkz. :term:``Tanımlama Bilgisi`). Eğer “cookie” auth_type kullanıyorsanız, şifreleme anahtarı olarak kullanılacak rastgele baytlardan oluşan bir dizgiyi buraya girin. Sodium uzantısı tarafından dahili olarak kullanılacaktır: sizden bu şifreleme anahtarı istenmeyecektir.
İkili bir dizgi genellikle yazdırılamaz olduğundan, onaltılık gösterime dönüştürülebilir (sodium_bin2hex gibi bir işlev kullanılarak) ve ardından yapılandırma dosyasında kullanılabilir. Örneğin:
// The string is a hexadecimal representation of a 32-bytes long string of random bytes. $cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
İkili bir dizgi kullanılması önerilir. Ancak, dizginin 32 baytının tümü görünür karakterlerse, sodium_bin2hex gibi bir işlev gerekli değildir. Örneğin:
// A string of 32 characters. $cfg['blowfish_secret'] = 'JOFw435365IScA&Q!cDugr!lSfuAz*OW';
Uyarı
Şifreleme anahtarı 32 bayt uzunluğunda olmak zorundadır. Eğer bayt uzunluğundan daha uzun ise sadece ilk 32 bayt kullanılacak ve daha kısa ise, sizin için otomatik olarak yeni bir geçici anahtar oluşturulacaktır. Ancak, bu geçici anahtar sadece oturum süresince geçerli olacaktır.
Not
Zamanında Blowfish algoritması olarak blowfish_secret denilen yapılandırma, orijinal olarak şifreleme yapmak için kullanıldı.
3.1.0 sürümünde değişti: Sürüm 3.1.0’dan bu yana phpMyAdmin bunu anında oluşturur ama oturumda depolanan bu oluşturulmuş gizli anahtarı biraz zayıf güvenlikli yapar ve üstelik tanımlama bilgisinden kullanıcı adını geri çağırmayı imkansız hale getirir.
5.2.0 sürümünde değişti: 5.2.0 sürümünden bu yana phpMyAdmin, sırasıyla tanımlama bilgilerini şifrelemek ve şifresini çözmek için sodium_crypto_secretbox ve sodium_crypto_secretbox_open PHP işlevlerini kullanır.
Ayrıca bkz.
-
$cfg['CookieSameSite']
¶ Tür: dizgi Varsayılan değer: 'Strict'
5.1.0 sürümüyle geldi.
Set-Cookie HTTP yanıt başlığının SameSite özniteliğini ayarlar. Geçerli değerler:
Lax
Strict
None
Ayrıca bkz.
-
$cfg['LoginCookieRecall']
¶ Tür: boolean Varsayılan değer: true Tanımlama bilgisi kimlik doğrulaması kipinde olmama ya da önceki oturum açma bilgisinin hatırlanma gereğini tanımlar.
Eğer
$cfg['blowfish_secret']
yapılandırmadıysanız bu otomatik olarak etkisizleştirilir.
-
$cfg['LoginCookieValidity']
¶ Tür: tam sayı [saniye sayısı] Varsayılan değer: 1440 Oturum açma tanımlama bilgisinin ne kadar süreyle geçerli olacağını tanımlar. Lütfen session.gc_maxlifetime php yapılandırma seçeneğinin oturum geçerliliğini sınırlandırabileceğini ve eğer oturum kaybolursa, oturum açma tanımlama bilgisinin de geçersiz kılınacağını unutmayın. Bu yüzden
session.gc_maxlifetime
değerinin en az$cfg['LoginCookieValidity']
yönergesiyle aynı ayarlanması en iyisidir.
-
$cfg['LoginCookieStore']
¶ Tür: tam sayı [saniye sayısı] Varsayılan değer: 0 Oturum açma tanımlama bilgisinin tarayıcıda ne kadar süreyle saklanacağını tanımlar. Varsayılan 0 değeri anlamı sadece varolan oturum için tutulacağıdır. Bu güvenli olmayan ortamlar için önerilir.
-
$cfg['LoginCookieDeleteAll']
¶ Tür: boolean Varsayılan değer: true Eğer etkinleştirildiyse (varsayılandır), oturumu kapatmak tüm sunucuların tanımlama bilgilerini siler, yoksa sadece şu ankini. Bunu false olarak ayarlamak diğer sunucudan oturumu kapatmayı unutmayı kolaylaştırır, tabi bunlardan çok fazla kullandığınızda.
-
$cfg['AllowArbitraryServer']
¶ Tür: boolean Varsayılan değer: false Eğer etkinleştirildiyse, tanımlama bilgisi kimlik doğrulaması kullanarak gelişigüzel sunuculara oturum açmanıza izin verir.
Not
Lütfen bunu dikkatli kullanın, ki bu, HTTP sunucunuzun bulunduğu yerdeki güvenlik duvarınız arkasında MySQL sunucularına kullanıcıların erişmesine izin verebilir. Ayrıca
$cfg['ArbitraryServerRegexp']
yönergesine bakın.
-
$cfg['ArbitraryServerRegexp']
¶ Tür: dizgi Varsayılan değer: ''
$cfg['AllowArbitraryServer']
parametresi etkinleştirildiğinde verilen düzenli ifade ile MySQL sunucusunun IP ya da anamakine eşleşmesine göre kullanıcının oturum açabildiği MySQL sunucularını kısıtlar.Düzenli ifadede başlangıç ve bitiş sembollerinin dahil edilmesi önerilir, böylece dizgide kısmi eşleşmeleri önleyebilirsiniz.
Örnekler:
// Allow connection to three listed servers: $cfg['ArbitraryServerRegexp'] = '/^(server|another|yetdifferent)$/'; // Allow connection to range of IP addresses: $cfg['ArbitraryServerRegexp'] = '@^192\.168\.0\.[0-9]{1,}$@'; // Allow connection to server name ending with -mysql: $cfg['ArbitraryServerRegexp'] = '@^[^:]\-mysql$@';
Not
Bütün sunucu adı uyuşur, bağlantı noktasını da içerebilir. Bağlantı parametrelerinde MySQL’in keyfi bir yol olmasından dolayı
`server:3306-mysql`
olarak bağlantı dizgileri kullanmak mümkündür . Bu, başka bir sunucuya bağlanırken sonek ile düzenli ifadeyi atlatmak için kullanılabilir.
-
$cfg['CaptchaMethod']
¶ Tür: dizgi Varsayılan değer: 'invisible'
Geçerli değerler:
'invisible'
Görünmez bir captcha denetleme yöntemi kullanır;'checkbox'
Kullanıcının robot olmadığını doğrulamak için bir onay kutusu kullanır.
5.0.3 sürümüyle geldi.
-
$cfg['CaptchaApi']
¶ Tür: dizgi Varsayılan değer: 'https://www.google.com/recaptcha/api.js'
5.1.0 sürümüyle geldi.
Ya Google’ın ya da uyumlu birinin, reCaptcha v2 hizmetinin API’sinin URL’si.
-
$cfg['CaptchaCsp']
¶ Tür: dizgi Varsayılan değer: 'https://apis.google.com https://www.google.com/recaptcha/ https://www.gstatic.com/recaptcha/ https://ssl.gstatic.com/'
5.1.0 sürümüyle geldi.
Ya Google’ın ya da uyumlu birinin, reCaptcha v2 hizmeti için İçerik-Güvenlik-İlkesi parçası (gömülü içeriğe izin verilecek URL’ler).
-
$cfg['CaptchaRequestParam']
¶ Tür: dizgi Varsayılan değer: 'g-recaptcha'
5.1.0 sürümüyle geldi.
reCaptcha v2 hizmeti için kullanılan istek parametresi.
-
$cfg['CaptchaResponseParam']
¶ Tür: dizgi Varsayılan değer: 'g-recaptcha-response'
5.1.0 sürümüyle geldi.
reCaptcha v2 hizmeti için kullanılan yanıt parametresi.
-
$cfg['CaptchaLoginPublicKey']
¶ Tür: dizgi Varsayılan değer: ''
reCaptcha hizmeti için https://www.google.com/recaptcha/about/ adresindeki “Admin Console” bölümünden elde edilebilen ortak anahtar.
Ayrıca bkz.
Tanımlama bilgisi kimlik doğrulaması kipi içinde reCaptcha sonradan kullanılacaktır.
4.1.0 sürümüyle geldi.
-
$cfg['CaptchaLoginPrivateKey']
¶ Tür: dizgi Varsayılan değer: ''
reCaptcha hizmeti için https://www.google.com/recaptcha/about/ adresindeki “Admin Console” bölümünden elde edilebilen özel anahtar.
Ayrıca bkz.
Tanımlama bilgisi kimlik doğrulaması kipi içinde reCaptcha sonradan kullanılacaktır.
4.1.0 sürümüyle geldi.
-
$cfg['CaptchaSiteVerifyURL']
¶ Tür: dizgi Varsayılan değer: ''
Site doğrulama eylemi yapmak için reCaptcha hizmetinin URL’si.
Tanımlama bilgisi kimlik doğrulaması kipi içinde reCaptcha sonradan kullanılacaktır.
5.1.0 sürümüyle geldi.
Ana panel¶
-
$cfg['ShowStats']
¶ Tür: boolean Varsayılan değer: true Veritabanları ve tablolara dair alan kullanımı ve istatistiklerin görüntülenip görüntülenmeyeceğini tanımlar. Unutmayın istatistikler en az MySQL 3.23.3 ve bunu gerektirir, bu tarihte MySQL Berkeley VT tabloları için böyle bir bilgi geri döndürmez.
-
$cfg['ShowServerInfo']
¶ Tür: boolean|dizgi Varsayılan değer: true Ayrıntılı sunucu bilgilerinin ana sayfada görüntülenip görüntülenmeyeceğini tanımlar. Olası değerler:
- Tüm sunucu bilgilerini göstermek için
true
- Sunucu bilgilerini gizlemek için
false
- Sadece veritabanı sunucusu bilgilerini göstermek için
'database-server'
- Sadece web sunucusu bilgilerini göstermek için
'web-server'
İlave olarak
$cfg['Servers'][$i]['verbose']
kullanarak fazla bilgiyi gizleyebilirsiniz.6.0.0 sürümünde değişti:
'database-server'
ve'web-server'
seçenekleri eklendi.- Tüm sunucu bilgilerini göstermek için
-
$cfg['ShowPhpInfo']
¶ Tür: boolean Varsayılan değer: false Ana (sağ) çerçevenin başlatılmasında PHP bilgileri’nin görüntülenip görüntülenmeyeceğini tanımlar.
Lütfen unutmayın, betiklerde
phpinfo()
kullanımını engellemek için bunuphp.ini
dosyanız içine koymak zorundasınız:disable_functions = phpinfo()
Uyarı
Phpinfo sayfasını etkinleştirmek sunucu kurulumu hakkında oldukça fazla bilgi çekecek. Bunun paylaşılan kurulumlar üzerinde etkinleştirmek önerilmez.
Bu ayrıca, kurulumlarınıza bazı uzak saldırıları kolaylaştırır, bu yüzden sadece gerektiğinde etkinleştirin.
-
$cfg['ShowChgPassword']
¶ Tür: boolean Varsayılan değer: true Ana (sağ) çerçevenin başlatılmasında Parola değiştir bağlantısının görüntülenip görüntülenmeyeceğini tanımlar. Bu ayar doğrudan girilen MySQL komutlarını kontrol etmez.
Lütfen Parola değiştir bağlantısını etkinleştirmenin yapılandırma kimlik doğrulaması kipi ile etkisi olmadığını unutmayın: yapılandırma dosyasındaki sabit kodlu parola değerinden dolayı, son kullanıcılara parolalarını değiştirmesi için izin verilmez.
-
$cfg['ShowCreateDb']
¶ Tür: boolean Varsayılan değer: true Ana (sağ) çerçevenin başlatılmasında veritabanı oluşturmak için formun görüntülenip görüntülenmeyeceğini tanımlar. Bu ayar doğrudan girilen MySQL komutlarını kontrol etmez.
-
$cfg['ShowGitRevision']
¶ Tür: boolean Varsayılan değer: true Ana panelde şu anki Git gözden geçirme bilgisi (eğer uygulanabilirse) hakkında bilgilerin görüntülenip görüntülenmeyeceğini tanımlar.
-
$cfg['MysqlMinVersion']
¶ Tür: dizilim En az desteklenen MySQL sürümünü tanımlar. Varsayılanı phpMyAdmin ekibi tarafından seçilir; ancak bu yönerge daha eski MySQL sunucularıyla (phpMyAdmin özelliklerinin çoğunun çalıştığı) kolay bütünleştirme için Plesk denetim paneli geliştiricisi tarafından istendi.
Veritabanı yapısı¶
-
$cfg['ShowDbStructureCharset']
¶ Tür: boolean Varsayılan değer: false Veritabanı yapısı sayfasındaki tüm tablolar için karakter kümesini görüntüleyen bir sütunun gösterilip gösterilmeyeceğini tanımlar.
-
$cfg['ShowDbStructureComment']
¶ Tür: boolean Varsayılan değer: false Veritabanı yapısı sayfasındaki tüm tablolar için yorumları görüntüleyen bir sütunun gösterilip gösterilmeyeceğini tanımlar.
-
$cfg['ShowDbStructureCreation']
¶ Tür: boolean Varsayılan değer: false Her tablo oluşturulduğunda görüntülenen “Oluşturulma” sütununun veritabanı yapısı sayfasında (tablolar listesi) olmasını tanımlar.
-
$cfg['ShowDbStructureLastUpdate']
¶ Tür: boolean Varsayılan değer: false Her tablo son güncellendiğinde görüntülenen “Son güncelleme” sütununun veritabanı yapısı sayfasında (tablolar listesi) olmasını tanımlar.
-
$cfg['ShowDbStructureLastCheck']
¶ Tür: boolean Varsayılan değer: false Her tablo son kontrol edildiğinde görüntülenen “Son kontrol” sütununun veritabanı yapısı sayfasında (tablolar listesi) olmasını tanımlar.
-
$cfg['HideStructureActions']
¶ Tür: boolean Varsayılan değer: true Tablo yapısı eylemlerinin “Daha fazla” açılır menüsü altında gizlenip gizlenmeyeceğini tanımlar.
-
$cfg['ShowColumnComments']
¶ Tür: boolean Varsayılan değer: true Sütun açıklamalarının tablo yapısı görünümünde bir sütun olarak gösterilip gösterilmeyeceğini tanımlar.
Gözatma kipi¶
Tür: dizgi Varsayılan değer: 'icons'
Tablo gezinti bağlantılarının
'icons'
(simgeler),'text'
(metin) ya da'both'
(ikisinide) içerip içermeyeceğini tanımlar.
-
$cfg['ActionLinksMode']
¶ Tür: dizgi Varsayılan değer: 'both'
Eğer
icons
olarak ayarlanırsa, vt ve tablo özellikleri bağlantıları (Gözat, Seç, Ekle, … gibi) için metin yerine simgeler görüntülenecek. Eğer simgeleri VE metni isterseniz,'both'
olarak ayarlanabilir.text
olarak ayarlandığında, sadece metin gösterilecek.
-
$cfg['RowActionType']
¶ Tür: dizgi Varsayılan değer: 'both'
Tablo satır eylemi bölümünde simgelerin veya metnin veya hem simgelerin hem de metnin görüntülenip görüntülenmeyeceği. Değer, ya
'icons'
(simgeler),'text'
(metin) ya da'both'
(ikisinide) olabilir.
-
$cfg['ShowAll']
¶ Tür: boolean Varsayılan değer: false Tüm durumlarda kullanıcıya gözatma kipinde “Tümünü göster” düğmesinin görüntülenip görüntülenmeyeceğini tanımlar. Varsayılan olarak çok fazla satır getirilirken performans sorunlarını önlemek için sadece küçük tablolarda (500 satırdan daha az) gösterilir.
-
$cfg['MaxRows']
¶ Tür: tam sayı Varsayılan değer: 25 Sonuç grubuna göz atıldığında ve SINIR yok tümcesi kullanıldığında görüntülenecek satır sayısıdır. Eğer sonuç grubu daha fazla satır içeriyorsa, “Önceki” ve “Sonraki” bağlantıları gösterilecektir. Olası değerler: 25,50,100,250,500.
-
$cfg['Order']
¶ Tür: dizgi Varsayılan değer: 'SMART'
Sütunların küçükten büyüğe (
ASC
), büyükten küçüğe (DESC
) ya da “akıllı” (SMART
) sırada görüntülenmesi gerekirse tanımlar - yani TIME, DATE, DATETIME ve TIMESTAMP türü sütunlar için büyükten küçüğe sıralıdır, aksi takdirde varsayılan olarak küçükten büyüğe sıralıdır.3.4.0 sürümünde değişti: phpMyAdmin 3.4.0 sürümünden bu yana varsayılan değer
'SMART'
‘tır.
-
$cfg['DisplayBinaryAsHex']
¶ Tür: boolean Varsayılan değer: true “İkili içerikleri HEX olarak göster” gözatma seçeneğinin varsayılan olarak işaretli olup olmadığını tanımlar.
3.3.0 sürümüyle geldi.
4.3.0 sürümünden beri önerilmiyor: Bu ayar kaldırıldı.
-
$cfg['GridEditing']
¶ Tür: dizgi Varsayılan değer: 'double-click'
Kılavuz düzenlemeyi hangi eylemin (
double-click
ya daclick
) (çift tıklama veya tıklama) tetikleyeceğini tanımlar.disabled
(etkisizleştir) değeriyle devre dışı bırakılabilir.
-
$cfg['RelationalDisplay']
¶ Tür: dizgi Varsayılan değer: 'K'
Seçenekler > İlişkisel seçeneği için ilk davranışı tanımlar,
D
görüntülenen sütunu gösterirken, varsayılan değer olanK
anahtarı görüntüler.
-
$cfg['SaveCellsAtOnce']
¶ Tür: boolean Varsayılan değer: false Kılavuz düzenlemesi için tüm düzenlenen hücrelerin bir defada kaydedilip kaydedilemeyeceğini tanımlar.
Düzenleme kipi¶
-
$cfg['ProtectBinary']
¶ Tür: boolean veya dizgi Varsayılan değer: 'blob'
Bir tablonun içeriğine gözatılırken
BLOB
veyaBINARY
sütunlarının düzenlemeden korunmasını tanımlar. Geçerli değerler:- tüm sütunların düzenlenmesine izin vermek için
false
; BLOBS
hariç tüm sütunların düzenlenmesine izin vermek için'blob'
;BLOBS
('blob'
’un tersi) hariç tüm sütunların düzenlenmesine izin vermek için'noblob'
;- tüm
BINARY
veyaBLOB
sütunlarının düzenlenmesine izin vermemek için'all'
.
- tüm sütunların düzenlenmesine izin vermek için
-
$cfg['ShowFunctionFields']
¶ Tür: boolean Varsayılan değer: true Düzenle/ekle kipinde MySQL işlevleri alanlarının ilk olarak görüntülenip görüntülenmemesini tanımlar. 2.10 sürümünden bu yana kullanıcı bu ayarı arayüzden değiştirebilir.
-
$cfg['ShowFieldTypesInDataEditView']
¶ Tür: boolean Varsayılan değer: true Düzenle/ekle kipinde yazma alanlarının ilk olarak görüntülenip görüntülenmemesini tanımlar. Kullanıcı bu ayarı arayüzden değiştirebilir.
-
$cfg['InsertRows']
¶ Tür: tam sayı Varsayılan değer: 2 Ekle sayfasından girilen satır varsayılan sayısını tanımlar. Kullanıcılar bu sayfanın altından boş satırları eklemek veya kaldırmak için bunu elle değiştirebilir.
-
$cfg['ForeignKeyMaxLimit']
¶ Tür: tam sayı Varsayılan değer: 100 Dış anahtarların grubunda bundan daha az öğe varsa, ondan sonra dış anahtarların aşağı açılır kutusu ortaya çıkar,
$cfg['ForeignKeyDropdownOrder']
ayarıyla tanımlanan stilde.
-
$cfg['ForeignKeyDropdownOrder']
¶ Tür: dizilim Varsayılan değer: array(‘content-id’, ‘id-content’) Dış anahtar aşağı açılır alanı için birçok görüntüleme, hem anahtar hem değer verisini sunan yöntemler vardır. Dizilimin içerikleri aşağıdaki dizgilerden biri veya ikisi olmalıdır:
content-id
,id-content
.
Dışa ve içe aktarma ayarları¶
-
$cfg['ZipDump']
¶ Tür: boolean Varsayılan değer: true
-
$cfg['GZipDump']
¶ Tür: boolean Varsayılan değer: true
-
$cfg['BZipDump']
¶ Tür: boolean Varsayılan değer: true Döküm dosyası oluşturulurken zip/GZip/BZip2 sıkıştırmasının kullanımına izin vermek gerekirse tanımlar
-
$cfg['CompressOnFly']
¶ Tür: boolean Varsayılan değer: true Dışarı aktarılan GZip/BZip2 sıkıştırılmış dışarı aktarımlar için anında sıkıştırmaya izin vermek gerekirse tanımlar. Bu daha küçük dökümleri etkilemez ve bunun dışında kullanıcıların php bellek sınırlamasından dolayı belleğe uymayacak daha büyük dökümleri oluşturmasına izin verir. Üretilmiş dosyalar daha fazla GZip/BZip2 başlıkları içerir ama tüm normal programlar bununla doğru bir şekilde başa çıkar.
-
$cfg['Export']
¶ Tür: dizilim Varsayılan değer: array(…) Bu dizilimde dışa aktarma için varsayılan parametreler tanımlanır, öğelerin adları dışa aktarma sayfasındaki metin görünümüyle aynıdır bu yüzden ne anlama geldiklerini kolayca tanımlayabilirsiniz.
-
$cfg['Export']['format']
¶ Tür: dizgi Varsayılan değer: 'sql'
Varsayılan dışa aktarma biçimi.
-
$cfg['Export']['method']
¶ Tür: dizgi Varsayılan değer: 'quick'
Yüklendiğinde dışa aktarma formunun nasıl görüntüleneceğini tanımlar. Geçerli değerler:
quick
(hızlı) yapılandırmak için seçenekleri en az sayıda görüntülercustom
(özel) yapılandırmak için her kullanılabilir seçeneği görüntülercustom-no-form
(özel-formsuz),custom
(özel) ile aynıdır ama kullanılan hızlı dışa aktar seçeneğini görüntülemez
-
$cfg['Export']['compression']
¶ Tür: dizgi Varsayılan değer: 'none'
Varsayılan dışa aktarma sıkıştırma yöntemi. Olası değerler
'none'
,'zip'
veya'gzip'
şeklindedir.
-
$cfg['Export']['charset']
¶ Tür: dizgi Varsayılan değer: ''
Oluşturulan dışa aktarma işlemi için karakter kümesi tanımlar. Varsayılan olarak karakter kümesi dönüştürme UTF-8 farzedilerek yapılmaz.
-
$cfg['Export']['file_template_table']
¶ Tür: dizgi Varsayılan değer: '@TABLE@'
Tablo dışa aktarmaları için varsayılan dosya adı şablonu.
Ayrıca bkz.
-
$cfg['Export']['file_template_database']
¶ Tür: dizgi Varsayılan değer: '@DATABASE@'
Veritabanı dışa aktarmaları için varsayılan dosya adı şablonu.
Ayrıca bkz.
-
$cfg['Export']['file_template_server']
¶ Tür: dizgi Varsayılan değer: '@SERVER@'
Sunucu dışa aktarmaları için varsayılan dosya adı şablonu.
Ayrıca bkz.
-
$cfg['Export']['remove_definer_from_definitions']
¶ Tür: boolean Varsayılan değer: false Olay, görünüm ve rutin tanımlarından DEFINER yan tümcesini kaldırın.
5.2.0 sürümüyle geldi.
-
$cfg['Import']
¶ Tür: dizilim Varsayılan değer: array(…) Bu dizilimde içe aktarma için varsayılan parametreler tanımlanır, öğelerin adları içe aktarma sayfasındaki metin görünümüyle aynıdır bu yüzden ne anlama geldiklerini kolayca tanımlayabilirsiniz.
-
$cfg['Import']['charset']
¶ Tür: dizgi Varsayılan değer: ''
İçe aktarma işlemi için karakter kümesi tanımlar. Varsayılan olarak karakter kümesi dönüştürme UTF-8 farzedilerek yapılmaz.
-
$cfg['Schema']
¶ Tür: dizilim Varsayılan değer: array(…)
-
$cfg['Schema']['format']
¶ Tür: dizgi Varsayılan değer: 'pdf'
Şema dışa aktarması için varsayılan biçimi tanımlar. Olası değerler
'pdf'
,'eps'
,dia'
veya'svg'
şeklindedir.
Sekmeleri görüntüleme ayarları¶
-
$cfg['TabsMode']
¶ Tür: dizgi Varsayılan değer: 'both'
Menü sekmelerinin
'icons'
(simgeler),'text'
(metin) ya da'both'
(ikisinide) içerip içermeyeceğini tanımlar.
-
$cfg['PropertiesNumColumns']
¶ Tür: tam sayı Varsayılan değer: 1 Veritabanı özelliği görünümünde tabloları görüntülemek için kaç tane sütun kullanılacak? Bu 1’den daha büyük bir değere ayarlandığında, veritabanının türü daha fazla görüntüleme alanı için atlanacaktır.
-
$cfg['DefaultTabServer']
¶ Tür: dizgi Varsayılan değer: 'welcome'
Sunucu görünümünde varsayılan olarak görüntülenen sekmeyi tanımlar. Olası değerler şunun eşdeğerinde bulunur:
welcome
(çoklu kullanıcı ayarlamaları için önerilir)databases
,status
variables
privileges
-
$cfg['DefaultTabDatabase']
¶ Tür: dizgi Varsayılan değer: 'structure'
Veritabanı görünümünde varsayılan olarak görüntülenen sekmeyi tanımlar. Olası değerler şunun eşdeğerinde bulunur:
structure
sql
search
operations
-
$cfg['DefaultTabTable']
¶ Tür: dizgi Varsayılan değer: 'browse'
Tablo görünümünde varsayılan olarak görüntülenen sekmeyi tanımlar. Olası değerler şunun eşdeğerinde bulunur:
structure
sql
search
insert
browse
PDF Seçenekleri¶
-
$cfg['PDFPageSizes']
¶ Tür: dizilim Varsayılan değer: array('A3', 'A4', 'A5', 'letter', 'legal')
PDF sayfalarını oluşturmak için olası kağıt boyutlarının dizilimi.
Bunu değiştirmek asla gerekmemeli.
-
$cfg['PDFDefaultPageSize']
¶ Tür: dizgi Varsayılan değer: 'A4'
PDF sayfalarını oluştururken kullanılan varsayılan sayfa boyutu. Geçerli değerler
$cfg['PDFPageSizes']
içinde listelenen herhangi biridir.
Diller¶
-
$cfg['DefaultLang']
¶ Tür: dizgi Varsayılan değer: 'tr'
Eğer tarayıcı tanımlı veya kullanıcı tanımlı değilse, kullanmak için varsayılan dili tanımlar. İlgili dil dosyası locale/kod/LC_MESSAGES/phpmyadmin.mo içinde olması gerekir.
-
$cfg['DefaultConnectionCollation']
¶ Tür: dizgi Varsayılan değer: 'utf8mb4_general_ci'
Eğer kullanıcı tanımlı değilse, kullanmak için varsayılan bağlantı karşılaştırmasını tanımlar. Olası değerler listesi için karakter grubu MySQL belgelerine bakın.
-
$cfg['Lang']
¶ Tür: dizgi Varsayılan değer: ayarlı değil Kullanmak için dili zorlar. İlgili dil dosyası locale/kod/LC_MESSAGES/phpmyadmin.mo içinde olması gerekir.
-
$cfg['FilterLanguages']
¶ Tür: dizgi Varsayılan değer: ''
Verilmiş düzenli ifadeyle eşleşen mevcut dillerin listesini sınırlar. Örneğin sadece Türkçe ve İngilizce istiyorsanız, süzgeci
'^(tr|en)'
olarak ayarlamalısınız.
-
$cfg['RecodingEngine']
¶ Tür: dizgi Varsayılan değer: 'auto'
Karakter grubu dönüştürmesi için hangi işlevin kullanılacağını burada seçebilirsiniz. Olası değerler:
'auto'
- otomatik olarak mevcut olanı kullanır (önce denenmiş iconv, ardından mbstring)'iconv'
- iconv veya libiconv işlevlerini kullanır'mb'
- mbstring uzantısını kullanır'none'
- kodlama dönüştürmesini etkisizleştirir
Etkinleştirilmiş karakter grubu dönüştürmesi, bir dosyayı dışa aktarırken karakter grubunu seçmek için Dışa Aktar ve İçe Aktar sayfalarında aşağı çekilir menüyü aktif eder. Bu menüdeki varsayılan değer
$cfg['Export']['charset']
ve$cfg['Import']['charset']
’den gelir.6.0.0 sürümünde değişti: Recode uzantısı desteği kaldırıldı.
'recode'
değeri yoksayılır ve bunun yerine varsayılan değer ('auto'
) kullanılır.
-
$cfg['IconvExtraParams']
¶ Tür: dizgi Varsayılan değer: '//TRANSLIT'
Karakter grubu dönüştürmesinde kullanılan iconv için bazı parametreleri belirler. Ayrıntılar için iconv belgelerine bakın. Varsayılan olarak
//TRANSLIT
kullanılır, onun için geçersiz karakterler dönüştürülecektir.
-
$cfg['AvailableCharsets']
¶ Tür: dizilim Varsayılan değer: array(…) MySQL dönüştürmesi için kullanılabilir karakter grupları. Kendinizinkini (mbstring/iconv tarafından desteklenen herhangi biri) ekleyebilir ya da kullanmadığınızı kaldırabilirsiniz. Karakter grupları burada listelendiği gibi aynı sırada gösterilecektir, bu yüzden eğer bunlardan bazılarını sıkça kullanıyorsanız en üste taşıyın.
Web sunucusu ayarları¶
-
$cfg['OBGzip']
¶ Tür: dizgi/boolean Varsayılan değer: 'auto'
HTTP aktarımlarında arttırılmış hız için GZip çıktı arabelleklemesi kullanılmasını tanımlar. Etkinleştirmek/etkisizleştirmek için true/false olarak ayarlayın. ‘auto’ olarak (dizgi) ayarlandığında, phpMyAdmin çıktı arabelleklemesini etkinleştirmeyi dener ve eğer tarayıcınız arabellekleme ile sorun yaşarsa otomatik olarak etkisizleştirecektir. Arabellekleme etkinleştirildiğinde, belli yama ile IE6’nın veri bozulmasına sebep olduğu bilinmektedir.
-
$cfg['TrustedProxies']
¶ Tür: dizilim Varsayılan değer: array() $cfg['Servers'][$i]['AllowDeny']['order']
için güvenilir olan proksileri ve HTTP başlıklarını listeler. Bu liste varsayılan olarak boştur, proksi arkasındaki IP adresleri için kuralları kullanmak isterseniz, bazı güvenilir proksi sunucularını doldurmanız gerekir.Aşağıdaki örnek phpMyAdmin’in güveneceği proksi 1.2.3.4’ten gelen HTTP_X_FORWARDED_FOR (
X-Forwarded-For
) başlığını belirler:$cfg['TrustedProxies'] = ['1.2.3.4' => 'HTTP_X_FORWARDED_FOR'];
$cfg['Servers'][$i]['AllowDeny']['rules']
yönergesi her zamanki gibi istemcinin IP adresini kullanır.
-
$cfg['GD2Available']
¶ Tür: dizgi Varsayılan değer: 'auto'
GD >= 2 kullanılabilir olmasını belirler. Eğer evet ise MIME dönüşümleri için kullanılabilir. Olası değerler:
- auto - otomatik olarak algılar
- yes - GD 2 işlevleri kullanılabilir
- no - GD 2 işlevi kullanılamaz
-
$cfg['CheckConfigurationPermissions']
¶ Tür: boolean Varsayılan değer: true Biz normal olarak herkes tarafından yazılabilir olmadığından emin olmak için yapılandırma dosyasındaki izinleri kontrol ederiz. Ancak phpMyAdmin, izinler yanlış göründüğü ama aslında algılanamadığı durumda, Windows olmayan sunucuya bağlanmış NTFS dosya sistemi üzerine kurulabilir. Bu durumda sysadmin bu parametreyi
false
olarak ayarlayacaktır.
-
$cfg['LinkLengthLimit']
¶ Tür: tam sayı Varsayılan değer: 1000 Bağlantılardaki URL uzunluğu için sınırdır. Uzunluk bu sınırın üzerinde olduğunda, düğmeyle birlikte form tarafından değiştirilir. Bu uzun URL’lerle sorunları olan bazı web sunucuları (IIS) için gerekir.
-
$cfg['CSPAllow']
¶ Tür: dizgi Varsayılan değer: ''
İçerik Güvenliği İlkesi başlığında izin verilen betiğe ve resim kaynaklarına dahil olan ilave dizgi.
Bu, normalde by İçerik Güvenliği İlkesi tarafından izin verilmeyen,
config.footer.inc.php
veyaconfig.header.inc.php
dosyaları içindeki bazı harici JavaScript dosyalarını dahil etmek istediğinizde faydalı olabilir.Bazı sitelere izin vermek için sadece şu dizgi içinde listeleyin:
$cfg['CSPAllow'] = 'example.com example.net';
4.0.4 sürümüyle geldi.
-
$cfg['DisableMultiTableMaintenance']
¶ Tür: boolean Varsayılan değer: false Veritabanı Yapı sayfasında, bazı tabloları işaretlemek ondan sonra birçok tablo için en iyi hale getirilmesi gibi işlemler seçmek mümkündür. Bu sunucuyu yavaşlatabilir; bu nedenle bunu
true
olarak ayarlamak böyle çoklu bakım işlemlerini önleyebilir.
Tema ayarları¶
Sonraki güncelleme ile her ne kadar değişikliklerinizin üzerine yazılacak olsada, lütfen doğrudanthemes/themename/scss/_variables.scss
dosyasını değiştirin.
Tasarım özelleştirme¶
Tür: boolean Varsayılan değer: true True olarak ayarlandığında, gezinti panelindeki bir öğe üzerinde bekletmek öğenin işaretlenmesine neden olur (arka plan işaretlenir).
-
$cfg['BrowsePointerEnable']
¶ Tür: boolean Varsayılan değer: true True olarak ayarlandığında, Gözatma sayfasındaki bir satır üzerinde bekletmek satırın işaretlenmesine neden olur (arka plan işaretlenir).
-
$cfg['BrowseMarkerEnable']
¶ Tür: boolean Varsayılan değer: true True olarak ayarlandığında, satır, onay kutusu ile seçildiğinde veri satırı işaretlenir (arka plan işaretlenir).
-
$cfg['LimitChars']
¶ Tür: tam sayı Varsayılan değer: 50 Gözatma görünümünde sayısal olmayan herhangi bir alanda gösterilen en fazla karakter sayısı. Gözatma sayfasında bir değiştirme düğmesiyle kapatılabilir.
-
$cfg['RowActionLinks']
¶ Tür: dizgi Varsayılan değer: 'left'
Tablo içerikleri görüntülendiğinde (hepsini sol tarafta, sağ tarafta, her iki tarafta görüntüleyebilir ya da hiçbir yerde görüntülemeyebilirsiniz) tablo satır bağlantılarının (Düzenle, Kopyala, Sil) koyulacağı yeri tanımlar.
-
$cfg['RowActionLinksWithoutUnique']
¶ Tür: boolean Varsayılan değer: false Seçim unique key sahip olmadığında bile çoklu satır işlemleri için satır bağlantılarının (Düzenle, Kopyala, Sil) ve onay kutularının görüntülenip görüntülenmeyeceğini tanımlar. Benzersiz bir anahtar olmaması durumunda satır eylemlerini kullanmak, tam satır(lar)ı seçmek için garantili bir yol olmadığından etkilenen farklı/daha fazla satır ile sonuçlanabilir.
-
$cfg['RememberSorting']
¶ Tür: boolean Varsayılan değer: true Eğer etkinleştirildiyse, tablolara gözatarken, her tablonun sıralanmasını hatırlar.
-
$cfg['TablePrimaryKeyOrder']
¶ Tür: dizgi Varsayılan değer: 'NONE'
Bu, primary key sahip olan tablolar için harici olarak tanımlanan sıralama düzeni olmadığında, varsayılan sıralama düzenini tanımlar. Kabul edilebilir değerler: [‘NONE’, ‘ASC’, ‘DESC’]
-
$cfg['ShowBrowseComments']
¶ Tür: boolean Varsayılan değer: true
-
$cfg['ShowPropertyComments']
¶ Tür: boolean Varsayılan değer: true Uyan değişkeni
true
olarak ayarlayarak Gözat veya Özellik görüntüsündeki sütun açıklamalarının görüntülenmesini etkinleştirebilirsiniz. Gözatma kipinde, açıklamalar başlığın içinde gösterilir. Özellik kipinde, açıklamalar sütun adının altında CSS-biçimlendirilmiş kesikli çizgi kullanılarak görüntülenir. Açıklama bu sütun için araç ipucu olarak gösterilir.
-
$cfg['FirstDayOfCalendar']
¶ Tür: tam sayı Varsayılan değer: 0 Bu, takvimde haftanın ilk gününü tanımlayacak. Sayı 0’dan 6’ya kadar ayarlanabilir ve bu da sırasıyla Pazar’dan Cumartesi’ye kadar haftanın yedi gününü temsil eder. Bu değer ayrıca kullanıcı tarafından Ayarlar -> Özellikler -> Genel -> Takvimin ilk günü alanında yapılandırılabilir.
Metin alanları¶
-
$cfg['CharEditing']
¶ Tür: dizgi Varsayılan değer: 'input'
CHAR ve VARCHAR sütunları için hangi düzenleme denetimleri türünün kullanılmasını tanımlar. Veri düzenlemeye ve ayrıca yapı düzenlemedeki varsayılan değerlere uygular. Olası değerler:
- input - bu, MySQL içinde sütunların boyutları için metnin boyutunu sınırlamaya izin verir, ama sütunlarda yeni satırlarda sorunlar yaşanır
- textarea - sütunlarda yeni satırlarla sorunlar yaşanmaz ama ayrıca uzunluk kısıtlamaları yoktur
-
$cfg['MinSizeForInputField']
¶ Tür: tam sayı Varsayılan değer: 4 CHAR ve VARCHAR sütunları için oluşturulmuş en az girdi alanları boyutunu tanımlar.
-
$cfg['MaxSizeForInputField']
¶ Tür: tam sayı Varsayılan değer: 60 CHAR ve VARCHAR sütunları için oluşturulmuş en fazla girdi alanları boyutunu tanımlar.
-
$cfg['TextareaCols']
¶ Tür: tam sayı Varsayılan değer: 40
-
$cfg['TextareaRows']
¶ Tür: tam sayı Varsayılan değer: 15
-
$cfg['CharTextareaCols']
¶ Tür: tam sayı Varsayılan değer: 40
-
$cfg['CharTextareaRows']
¶ Tür: tam sayı Varsayılan değer: 7 Metin alanı için sütun ve satır sayısı. Bu değer sorgu penceresi içerisindeki SQL sorgu metni alanı için (*2) ve SQL metni alanı için (*1.25) olan önemi belirtecektir.
Char* değerleri CHAR ve VARCHAR düzenlemesi için kullanılır (eğer
$cfg['CharEditing']
aracılığıyla yapılandırılmışsa).5.0.0 sürümünde değişti: Varsayılan değer 2’den 7’ye değiştirildi.
-
$cfg['LongtextDoubleTextarea']
¶ Tür: boolean Varsayılan değer: true LONGTEXT sütunlar için metin alanının çift boyut olup olmayacağını tanımlar.
-
$cfg['TextareaAutoSelect']
¶ Tür: boolean Varsayılan değer: false Sorgu kutusunun bütün metin alanı tıklamayla seçilecekse tanımlar.
-
$cfg['EnableAutocompleteForTablesAndColumns']
¶ Tür: boolean Varsayılan değer: true Herhangi bir SQL sorgu kutusunda tablo ve sütun adları için otomatik tamamlamanın etkinleştirilip etkinleştirilmemesi.
SQL sorgu kutusu ayarları¶
-
$cfg['SQLQuery']['Edit']
¶ Tür: boolean Varsayılan değer: true Herhangi bir SQL Sorgu kutusunda sorguyu değiştirmek için bir düzenleme bağlantısının görüntülenip görüntülenmemesi.
-
$cfg['SQLQuery']['Explain']
¶ Tür: boolean Varsayılan değer: true Herhangi bir SQL Sorgu kutusunda SELECT sorgusunu açıklamak için bağlantının görüntülenip görüntülenmemesi.
-
$cfg['SQLQuery']['ShowAsPHP']
¶ Tür: boolean Varsayılan değer: true Herhangi bir SQL Sorgu kutusunda PHP kodunda sorguyu yaydırmak için bağlantının görüntülenip görüntülenmemesi.
-
$cfg['SQLQuery']['Refresh']
¶ Tür: boolean Varsayılan değer: true Herhangi bir SQL Sorgu kutusunda sorguyu yenilemek için bağlantının görüntülenip görüntülenmemesi.
Web sunucusu gönderme/kaydetme/içe aktarma dizinleri¶
Eğer PHP güvenli kipte çalışıyorsa, tüm dizinlerin sahibi phpMyAdmin betiklerinin sahibiyle aynı kullanıcı olmak zorundadır.
phpMyAdmin’in yüklendiği dizin bir open_basedir
kısıtlamasına tabi ise, PHP yorumlayıcısı tarafından erişilebilir bazı dizinlerde geçici bir dizin oluşturmanız gerekir.
Güvenlik nedenleriyle, tüm dizinler beb sunucusu tarafından yayımlanan ağaç dışında tutulmalıdır. Eğer web sunucusu tarafından yayımlanan bu dizine sahip olmaktan kaçınamıyorsanız, ya web sunucusu yapılandırması (örneğin .htaccess veya web.config dosyalarını kullanarak) tarafından buna erişimi sınırlayın ya da en azından oraya bir boş index.html
dosyası yerleştirin, böylece dizin listeleme mümkün olmasın. Ancak dizin web sunucusu tarafından erişilebilir olduğu sürece, bir saldırgan dosyaları indirmek için dosya adlarını tahmin edebilir.
-
$cfg['UploadDir']
¶ Tür: dizgi Varsayılan değer: ''
SQL dosyalarının phpMyAdmin haricindeki diğerleriyle (örneğin, FTP) gönderildiği dizinin adıdır. Bu dosyalar veritabanı veya tablo adına tıkladığınızda aşağı açılır kutu altında, ondan sonra İçe Aktar sekmesinde kullanılabilir.
Her kullanıcı için farklı dizin istiyorsanız, %u kullanıcı adı ile değiştirilecektir.
Lütfen unutmayın dosya adlarının son eki “.sql” (ya da “.sql.bz2” ya da “.sql.gz” eğer sıkıştırılmış biçimler için destek etkinleştirilirse) olmak zorundadır.
Dosyanız HTTP yoluyla göndermek için çok büyük olduğunda ya da dosya gönderimleri PHP’de etkisizleştirilmişse bu özellik faydalıdır.
Uyarı
Bu dizinin nasıl kurulacağı ve kullanımının nasıl güvenli olacağı talimatları için lütfen bu bölümün (Web sunucusu gönderme/kaydetme/içe aktarma dizinleri) en üstüne bakın.
Ayrıca bkz.
Alternatifler için bakınız 1.16 Büyük döküm dosyalarını gönderemiyorum (bellek, HTTP ya da zaman aşımı sorunları)..
-
$cfg['SaveDir']
¶ Tür: dizgi Varsayılan değer: ''
Dışa aktarılan dosyaların kaydedilebildiği web sunucusunun adı.
Her kullanıcı için farklı bir dizin istiyorsanız, %u, kullanıcı adı ile değiştirilecektir.
Lütfen unutmayın dizin mevcut olmak zorundadır ve web sunucusunu çalıştıran kullanıcı için yazılabilir olmalıdır.
Uyarı
Bu dizinin nasıl kurulacağı ve kullanımının nasıl güvenli olacağı talimatları için lütfen bu bölümün (Web sunucusu gönderme/kaydetme/içe aktarma dizinleri) en üstüne bakın.
-
$cfg['TempDir']
¶ Tür: dizgi Varsayılan değer: './tmp/'
Geçici dosyaların depolanabildiği dizinin adı. Şu anda, birçok amaç için kullanılır:
- Sayfa yüklemesini hızlandıran şablonlar önbelleği.
- ESRI Şekil dosyaları içe aktarma, bakınız 6.30 İçe Aktarma: ESRI Şekil dosyalarını nasıl içe aktarabilirim?.
- Gönderilmiş dosyaların
open_basedir
kısıtlamalarına geçici bir çözüm bulmak için, bakınız 1.11 İçe aktarma sekmesinden bir dosya gönderirken bir ‘open_basedir kısıtlaması’ alıyorum..
Mümkün olduğunca sadece web sunucusunu çalıştıran kullanıcının erişmesini gerektiren bu dizin tam izinlere sahip olmalıdır. Eğer root yetkileriniz varsa, kolayca bu dizinin sahibini bu kullanıcı yapar ve sadece bunun sayesinde erişilebilir yapılır:
chown www-data:www-data tmp chmod 700 tmp
Eğer dizinin sahibini değiştiremiyorsanız, ACL kullanarak basit bir kur ile başarılı olabilirsiniz:
chmod 700 tmp setfacl -m "g:www-data:rwx" tmp setfacl -d -m "g:www-data:rwx" tmp
Eğer yukarıdaki hiçbiri işinize yaramadıysa, hala dizini chmod 777 yapabilirsiniz ama bu dizindeki sistem okuması ve yazması diğer kullanıcıları riske sokabilir.
Uyarı
Bu dizinin nasıl kurulacağı ve kullanımının nasıl güvenli olacağı talimatları için lütfen bu bölümün (Web sunucusu gönderme/kaydetme/içe aktarma dizinleri) en üstüne bakın.
Çeşitli görüntüleme ayarı¶
-
$cfg['RepeatCells']
¶ Tür: tam sayı Varsayılan değer: 100 Her X hücrede bir başlıkları tekrarlar ya da etkisiz kılmak için 0’dır.
-
$cfg['EditInWindow']
¶ Tür: boolean Varsayılan değer: true 4.3.0 sürümünden beri önerilmiyor: Bu ayar kaldırıldı.
-
$cfg['QueryWindowWidth']
¶ Tür: tam sayı Varsayılan değer: 550 4.3.0 sürümünden beri önerilmiyor: Bu ayar kaldırıldı.
-
$cfg['QueryWindowHeight']
¶ Tür: tam sayı Varsayılan değer: 310 4.3.0 sürümünden beri önerilmiyor: Bu ayar kaldırıldı.
-
$cfg['QueryHistoryDB']
¶ Tür: boolean Varsayılan değer: false
-
$cfg['QueryWindowDefTab']
¶ Tür: dizgi Varsayılan değer: 'sql'
4.3.0 sürümünden beri önerilmiyor: Bu ayar kaldırıldı.
-
$cfg['QueryHistoryMax']
¶ Tür: tam sayı Varsayılan değer: 25 Eğer
$cfg['QueryHistoryDB']
,true
olarak ayarlanırsa, tüm Sorgularınız sizin oluşturduğunuz tabloda günlüklenir ($cfg['Servers'][$i]['history']
yönergesine bakın). Eğer false olarak ayarlıysa, tüm sorgularınız forma eklenecektir ama sadece pencereniz açık kaldığı sürece kaydedilmiş kalırlar.JavaScript tabanlı sorgu penceresi kullanıldığında, gözatmak için yeni tabloya/vt’ye tıkladığınızda her zaman güncellenmiş olacaktır ve sorguyu kullandıktan sonra SQL’i Düzenle’ye tıklarsanız odaklanacaktır. Sorgu metin alanının altındaki Pencerenin dışından bu sorgunun üzerine yazma kutusunu işaretleyerek sorgu penceresinin güncellenmesini önleyebilirsiniz. Ondan sonra metin alanının içeriğini kaybetmeden arkaplanda tablolara/veritabanlarına gözatabilirsiniz böylece bu özellikle ilk önce bakmak zorunda olduğunuz tablolarla sorgu yazdığınızda faydalıdır. Metin alanının içeriğini değiştirdiğinizde onay kutusu otomatik olarak işaretli gelir. Değişiklikler yapmış olsanız bile sorgu penceresinin kesinlikle güncellenmiş olanı getirmesini istediğinizde lütfen düğmeden işareti kaldırın.
Eğer
$cfg['QueryHistoryDB']
,true
olarak ayarlanırsa,$cfg['QueryHistoryMax']
kullanarak kaydedilmiş geçmiş öğelerinin miktarını belirleyebilirsiniz.
Tür: boolean Varsayılan değer: true 6.0.0 sürümüyle geldi.
Kullanıcıların, diğer tüm kullanıcıların kullanabileceği yer işaretleri oluşturmasına izin ver
-
$cfg['BrowseMIME']
¶ Tür: boolean Varsayılan değer: true Dönüşümler’i etkinleştirme.
-
$cfg['MaxExactCount']
¶ Tür: tam sayı Varsayılan değer: 50000 InnoDB tabloları için phpMyAdmin’in
SELECT COUNT
kullanarak ne kadar büyüklükte tablolar için kesin satır sayısı getirtmeli onu belirler. Eğer yaklaşık satır sayısıSHOW TABLE STATUS
tarafından döndürülen sayı gibi bu değerden küçükse,SELECT COUNT
kullanılacaktır yoksa yaklaşık sayı kullanılacaktır.4.8.0 sürümünde değişti: Varsayılan değer performans nedenleriyle 50000’e düşürüldü.
4.2.6 sürümünde değişti: Varsayılan değeri 500000’e değiştirildi.
-
$cfg['MaxExactCountViews']
¶ Tür: tam sayı Varsayılan değer: 0 VIEW’ler için, tam sayı elde edildiğinden bu yana performansta etkisi vardır,
SELECT COUNT ... LIMIT
kullanarak, bu görüntülenecek olan en fazla değerdir. Bunu 0’a ayarlamak herhangi bir satır sayımını atlatır.
-
$cfg['NaturalOrder']
¶ Tür: boolean Varsayılan değer: true Veritabanı ve tablo adlarını doğal sırasına göre sıralar (örneğin, t1, t2, t10). Şimdilik gezinti panelinde ve Veritabanı görünümünde uygulandı, tablo listesi için.
-
$cfg['InitialSlidersState']
¶ Tür: dizgi Varsayılan değer: 'closed'
Eğer
'closed'
olarak ayarlanırsa, görsel kaydırıcı başlangıçta kapalı durumda olur.'open'
değeri durumu tersine çevirir. Tüm görsel kaydırıcıları tamamen etkisizleştirmek için'disabled'
kullanın.
-
$cfg['UserprefsDisallow']
¶ Tür: dizilim Varsayılan değer: array() Kullanıcı tercihleri yoluyla kullanıcıların ayarlayamadığı yapılandırma seçenekleri adlarını içerir (
$cfg
dizilimi içindeki anahtarlar). Olası değerler içinsrc/Config/Forms/User/
altındaki sınıflara bakın.
-
$cfg['UserprefsDeveloperTab']
¶ Tür: boolean Varsayılan değer: false 3.4.0 sürümüyle geldi.
phpMyAdmin’in geliştiricileri için kullanıcı tercihleri içindeki seçenekleri içeren bir sekmeyi etkinleştirir.
Sayfa başlığı¶
Tarayıcınızın penceresi veya sekme başlık çubuğu tarafından görüntülenen sayfa başlığı özelleştirilebilir. 6.27 Ne biçimde dizgiler kullanabilirim? bölümünü kullanabilirsiniz. Aşağıdaki dört seçenek, phpMyAdmin arayüzünün çeşitli bölümlerinin özelleştirilmesini sağlar. Oturum açma sayfası başlığının değiştirilemeyeceğini unutmayın.
-
$cfg['TitleTable']
¶ Tür: dizgi Varsayılan değer: '@HTTP_HOST@ / @VSERVER@ / @DATABASE@ / @TABLE@ | @PHPMYADMIN@'
-
$cfg['TitleDatabase']
¶ Tür: dizgi Varsayılan değer: '@HTTP_HOST@ / @VSERVER@ / @DATABASE@ | @PHPMYADMIN@'
-
$cfg['TitleServer']
¶ Tür: dizgi Varsayılan değer: '@HTTP_HOST@ / @VSERVER@ | @PHPMYADMIN@'
-
$cfg['TitleDefault']
¶ Tür: dizgi Varsayılan değer: '@HTTP_HOST@ | @PHPMYADMIN@'
Tema yöneticisi ayarları¶
-
$cfg['ThemeManager']
¶ Tür: boolean Varsayılan değer: true Kullanıcı seçebilir temaları etkinleştirir. Bakınız 2.7 Temaların kullanımı ve oluşturulması.
-
$cfg['ThemeDefault']
¶ Tür: dizgi Varsayılan değer: 'pmahomme'
Varsayılan tema (
./public/themes/
altında bir alt dizin).
-
$cfg['ThemePerServer']
¶ Tür: boolean Varsayılan değer: false Her sunucu için farklı temaya izin vermek gerekirse.
-
$cfg['FontSize']
¶ Tür: dizgi Varsayılan değer: ‘%82’ 5.0.0 sürümünden beri önerilmiyor: Tarayıcının daha verimli olması ile bu ayar kaldırıldı, dolayısıyla bu seçeneğe gerek kalmadı.
Kullanılacak yazı tipi boyutu, CSS olarak uygulanır.
Varsayılan sorgular¶
-
$cfg['DefaultQueryTable']
¶ Tür: dizgi Varsayılan değer: 'SELECT * FROM @TABLE@ WHERE 1'
-
$cfg['DefaultQueryDatabase']
¶ Tür: dizgi Varsayılan değer: ''
Kullanıcı herhangi bir belirtme yapmadığında sorgu kutularında görüntülenecek varsayılan sorgular. Standart olarak kullanabilirsiniz, bakınız 6.27 Ne biçimde dizgiler kullanabilirim?.
MySQL ayarları¶
-
$cfg['DefaultFunctions']
¶ Tür: dizilim Varsayılan değer: array('FUNC_CHAR' => '', 'FUNC_DATE' => '', 'FUNC_NUMBER' => '', 'FUNC_SPATIAL' => 'GeomFromText', 'FUNC_UUID' => 'UUID', 'first_timestamp' => 'NOW')
Satır eklendiğinde/değiştirildiğinde varsayılan olarak seçilen işlevler. Tabloda ilk zaman damgası sütunu için kullanılan
first_timestamp
için ve (FUNC\_NUMBER, ``, ``FUNC\_DATE, ``, ``FUNC\_CHAR, ``, ``FUNC\_SPATIAL, ``, ``FUNC\_UUID
) olarak üstveri türleri için tanımlanan işlevler.Örnek yapılandırma
$cfg['DefaultFunctions'] = [ 'FUNC_CHAR' => '', 'FUNC_DATE' => '', 'FUNC_NUMBER' => '', 'FUNC_SPATIAL' => 'ST_GeomFromText', 'FUNC_UUID' => 'UUID', 'first_timestamp' => 'UTC_TIMESTAMP', ];
Dönüşümler için varsayılan seçenekler¶
-
$cfg['DefaultTransformations']
¶ Tür: dizilim Varsayılan değer: Aşağıda listelenen anahtar değerleri olan dizilim
-
$cfg['DefaultTransformations']['Substring']
¶ Tür: dizilim Varsayılan değer: array(0, ‘all’, ‘…’)
-
$cfg['DefaultTransformations']['Bool2Text']
¶ Tür: dizilim Varsayılan değer: array(‘T’, ‘F’)
-
$cfg['DefaultTransformations']['External']
¶ Tür: dizilim Varsayılan değer: array(0, ‘-f /dev/null -i -wrap -q’, 1, 1)
-
$cfg['DefaultTransformations']['PreApPend']
¶ Tür: dizilim Varsayılan değer: array(‘’, ‘’)
-
$cfg['DefaultTransformations']['Hex']
¶ Tür: dizilim Varsayılan değer: array(‘2’)
-
$cfg['DefaultTransformations']['DateFormat']
¶ Tür: dizilim Varsayılan değer: array(0, ‘’, ‘local’)
-
$cfg['DefaultTransformations']['Inline']
¶ Tür: dizilim Varsayılan değer: array(‘100’, 100)
-
$cfg['DefaultTransformations']['TextImageLink']
¶ Tür: dizilim Varsayılan değer: array(‘’, 100, 50)
-
$cfg['DefaultTransformations']['TextLink']
¶ Tür: dizilim Varsayılan değer: array(‘’, ‘’, ‘’)
Konsol ayarları¶
Not
Bu ayarların çoğunlukla kullanıcı tarafından değiştirilmesi gerekmektedir.
-
$cfg['Console']['StartHistory']
¶ Tür: boolean Varsayılan değer: false Başlangıçta sorgu geçmişini göster
-
$cfg['Console']['AlwaysExpand']
¶ Tür: boolean Varsayılan değer: false Her zaman sorgu mesajlarını genişlet
-
$cfg['Console']['CurrentQuery']
¶ Tür: boolean Varsayılan değer: true Şu an gözatılan sorguyu göster
-
$cfg['Console']['EnterExecutes']
¶ Tür: boolean Varsayılan değer: false Enter tuşuna basıldığında sorguları çalıştır ve Shift+Enter tuşları ile yeni satır ekle
-
$cfg['Console']['DarkTheme']
¶ Tür: boolean Varsayılan değer: false Koyu temaya değiştir
-
$cfg['Console']['Mode']
¶ Tür: dizgi Varsayılan değer: ‘bilgi’ Konsol kipi
-
$cfg['Console']['Height']
¶ Tür: tam sayı Varsayılan değer: 92 Konsol yüksekliği
Geliştirici¶
Uyarı
Bu ayarlar performansta veya güvenlikte çok büyük etkilere sahip olabilir.
-
$cfg['environment']
¶ Tür: dizgi Varsayılan değer: 'production'
Çalışma ortamını ayarlar.
Bunun yalnızca phpMyAdmin’in kendisini geliştirirken değiştirilmesi gerekir.
Geliştirme
kipi bazı yerlerde hata ayıklama bilgileri görüntüleyebilir.Olası değerler
'production'
veya'development'
dir.
-
$cfg['DBG']
¶ Tür: dizilim Varsayılan değer: []
-
$cfg['DBG']['sql']
¶ Tür: boolean Varsayılan değer: false Sorguları ve çalıştırma zamanlarını konsolun Debug SQL sekmesinde görüntülenmesi için günlüklemeyi etkinleştirir.
-
$cfg['DBG']['sqllog']
¶ Tür: boolean Varsayılan değer: false Syslog için sorguların ve çalıştırma zamanlarının günlüklemesini etkinleştirir.
$cfg['DBG']['sql']
etkinleştirilmesi gerekir.
-
$cfg['DBG']['demo']
¶ Tür: boolean Varsayılan değer: false Sunucuya kendisini tanıtım sunucusu olarak sunmasına izin vermesi için etkinleştirir. Bu phpMyAdmin tanıtım sunucusu için kullanılır.
Bu, şu anki aşağıdaki davranışları değiştirir:
- Ana sayfada karşılama iletisi var.
- Tanıtım sunucusu ve kullanılan Git gözden geçirme bilgisi hakkında alt bilgi var.
- Kur betiği, varolan yapılandırma olsa bile etkinleştirilir.
- Kur, MySQL sunucusuna bağlanmaya çalışmaz.
-
$cfg['DBG']['simple2fa']
¶ Tür: boolean Varsayılan değer: false Basit iki etkenli kimlik doğrulaması kullanarak iki etkenli kimlik doğrulamasını denemek için kullanılabilir.
Örnekler¶
phpMyAdmin’in normal kurulumları için aşağıdaki yapılandırma parçacıklarına bakın.
Temel örnek¶
Bazı çekirdek yapılandırma düzenine sahip olmak için config.inc.php
dosyasına kopyalanabilen örnek yapılandırma dosyası; phpMyAdmin ile birlikte config.sample.inc.php
olarak dağıtılır. Lütfen tüm yapılandırma seçeneklerini içermediğini unutmayın, sadece en sık kullanılanları.
<?php
/**
* phpMyAdmin sample configuration, you can use it as base for
* manual configuration. For easier setup you can use setup/
*
* All directives are explained in documentation in the doc/ folder
* or at <https://docs.phpmyadmin.net/>.
*/
declare(strict_types=1);
/**
* This is needed for cookie based authentication to encrypt the cookie.
* Needs to be a 32-bytes long string of random bytes. See FAQ 2.10.
*/
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/**
* Servers configuration
*/
$i = 0;
/**
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
/**
* phpMyAdmin configuration storage settings.
*/
/* User used to manipulate with storage */
// $cfg['Servers'][$i]['controlhost'] = '';
// $cfg['Servers'][$i]['controlport'] = '';
// $cfg['Servers'][$i]['controluser'] = 'pma';
// $cfg['Servers'][$i]['controlpass'] = 'pmapass';
/* Storage database and tables */
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
// $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
// $cfg['Servers'][$i]['relation'] = 'pma__relation';
// $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
// $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
// $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
// $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
// $cfg['Servers'][$i]['history'] = 'pma__history';
// $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
// $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
// $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
// $cfg['Servers'][$i]['recent'] = 'pma__recent';
// $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
// $cfg['Servers'][$i]['users'] = 'pma__users';
// $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
// $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
// $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
// $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
// $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
// $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
/**
* End of servers configuration
*/
/**
* Directories for saving/loading files from server
*/
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
/**
* Whether to display icons or text or both icons and text in table row
* action segment. Value can be either of 'icons', 'text' or 'both'.
* default = 'both'
*/
//$cfg['RowActionType'] = 'icons';
/**
* Defines whether a user should be displayed a "show all (records)"
* button in browse mode or not.
* default = false
*/
//$cfg['ShowAll'] = true;
/**
* Number of rows displayed when browsing a result set. If the result
* set contains more rows, "Previous" and "Next".
* Possible values: 25, 50, 100, 250, 500
* default = 25
*/
//$cfg['MaxRows'] = 50;
/**
* Disallow editing of binary fields
* valid values are:
* false allow editing
* 'blob' allow editing except for BLOB fields
* 'noblob' disallow editing except for BLOB fields
* 'all' disallow editing
* default = 'blob'
*/
//$cfg['ProtectBinary'] = false;
/**
* Default language to use, if not browser-defined or user-defined
* (you find all languages in the locale folder)
* uncomment the desired line:
* default = 'en'
*/
//$cfg['DefaultLang'] = 'en';
//$cfg['DefaultLang'] = 'de';
/**
* How many columns should be used for table display of a database?
* (a value larger than 1 results in some information being hidden)
* default = 1
*/
//$cfg['PropertiesNumColumns'] = 2;
/**
* Set to true if you want DB-based query history.If false, this utilizes
* JS-routines to display query history (lost by window close)
*
* This requires configuration storage enabled, see above.
* default = false
*/
//$cfg['QueryHistoryDB'] = true;
/**
* When using DB-based query history, how many entries should be kept?
* default = 25
*/
//$cfg['QueryHistoryMax'] = 100;
/**
* Whether or not to query the user before sending the error report to
* the phpMyAdmin team when a JavaScript error occurs
*
* Available options
* ('ask' | 'always' | 'never')
* default = 'ask'
*/
//$cfg['SendErrorReports'] = 'always';
/**
* 'URLQueryEncryption' defines whether phpMyAdmin will encrypt sensitive data from the URL query string.
* 'URLQueryEncryptionSecretKey' is a 32 bytes long secret key used to encrypt/decrypt the URL query string.
*/
//$cfg['URLQueryEncryption'] = true;
//$cfg['URLQueryEncryptionSecretKey'] = '';
/**
* You can find more configuration options in the documentation
* in the doc/ folder or at <https://docs.phpmyadmin.net/>.
*/
Uyarı
Hala mevcut değilse ‘pma’ denetim kullanıcısını kullanmayın ve parola olarak da ‘pmapass’ kullanmayın.
Giriş yapma kimlik doğrulaması örneği¶
Bu örnek Oturumu Açma kimlik doğrulaması kipi tanıtım kullanımı için examples/signon.php
kullanır:
<?php
$i = 0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'signon';
$cfg['Servers'][$i]['SignonSession'] = 'SignonSession';
$cfg['Servers'][$i]['SignonURL'] = 'examples/signon.php';
IP adresi sınırlı otomatik oturum açma örneği¶
Eğer phpMyAdmin’e yerel olarak erişirken otomatik olarak oturum açmayı, uzaktan erişirken bir parola sormasını istiyorsanız, aşağıdaki parçacığı kullanarak başarılı olabilirsiniz:
if ($_SERVER['REMOTE_ADDR'] === '127.0.0.1') {
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'yourpassword';
} else {
$cfg['Servers'][$i]['auth_type'] = 'cookie';
}
Not
Internet üzerinden IP adreslerine dayalı süzme yapmak güvenilir değildir, sadece yerel adres için kullanın.
Birden çok MySQL sunucusu kullanımı için örnek¶
$cfg['Servers']
kullanarak herhangi bir sayıda sunucuyu yapılandırabilirsiniz, aşağıdaki örnek bunların iki tanesini gösterir:
<?php
// The string is a hexadecimal representation of a 32-bytes long string of random bytes.
$cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
$i = 0;
$i++; // server 1 :
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['verbose'] = 'no1';
$cfg['Servers'][$i]['host'] = 'localhost';
// more options for #1 ...
$i++; // server 2 :
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['verbose'] = 'no2';
$cfg['Servers'][$i]['host'] = 'remote.host.addr';//or ip:'10.9.8.1'
// this server must allow remote clients, e.g., host 10.9.8.%
// not only in mysql.host but also in the startup configuration
// more options for #2 ...
// end of server sections
$cfg['ServerDefault'] = 0; // to choose the server on startup
// further general options ...
SSL ile Google Bulut SQL¶
Google Bulut SQL’e bağlamak için şimdilik sertifika doğrulamayı etkisizleştirmeniz gerekir. Bu, örnek adınızla eşleşen CN için sorun olabilen sertifikadan kaynaklanır, ama bir IP adresine bağlanırsınız ve PHP bu ikisini eşleştirmeye çalışır. Doğrulama ile şunun gibi hata iletisi ile sonlandırırsınız:
Peer certificate CN=`api-project-851612429544:pmatest' did not match expected CN=`8.8.8.8'
Uyarı
Etkisizleştirilmiş doğrulama ile trafiğiniz şifrelenir, ancak ortadan gelen saldırılara açık olursunuz.
SSL kullanılarak phpMyAdmin’den Google Bulut SQL’e bağlanmak için istemci ve sunucu sertifikalarını indirin ve phpMyAdmin’e bunları kullanmasını söyleyin:
// IP address of your instance
$cfg['Servers'][$i]['host'] = '8.8.8.8';
// Use SSL for connection
$cfg['Servers'][$i]['ssl'] = true;
// Client secret key
$cfg['Servers'][$i]['ssl_key'] = '../client-key.pem';
// Client certificate
$cfg['Servers'][$i]['ssl_cert'] = '../client-cert.pem';
// Server certification authority
$cfg['Servers'][$i]['ssl_ca'] = '../server-ca.pem';
// Disable SSL verification (see above note)
$cfg['Servers'][$i]['ssl_verify'] = false;
SSL ile Amazon RDS Aurora¶
phpMyAdmin’i SSL kullanarak bir Amazon RDS Aurora MySQL veritabanı örneğine bağlamak için CA sunucu sertifikasını indirin ve phpMyAdmin’e bunu kullanmasını söyleyin:
// Address of your instance
$cfg['Servers'][$i]['host'] = 'replace-me-cluster-name.cluster-replace-me-id.replace-me-region.rds.amazonaws.com';
// Use SSL for connection
$cfg['Servers'][$i]['ssl'] = true;
// You need to have the region CA file and the authority CA file (2019 edition CA for example) in the PEM bundle for it to work
$cfg['Servers'][$i]['ssl_ca'] = '../rds-combined-ca-bundle.pem';
// Enable SSL verification
$cfg['Servers'][$i]['ssl_verify'] = true;
Ayrıca bkz.
Veritabanı sunucusuna bağlantı için SSL kullanımı,
$cfg['Servers'][$i]['ssl']
,
$cfg['Servers'][$i]['ssl_ca']
,
$cfg['Servers'][$i]['ssl_verify']
Ayrıca bkz.
- Tüm bölgeler için şu anki RDS CA paketi https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem
- Üst CA olmadan eu-west-3 bölgesi için RDS CA (2019 sürümü) https://s3.amazonaws.com/rds-downloads/rds-ca-2019-eu-west-3.pem
- Kullanılabilir Amazon RDS CA dosyalarının listesi
- Amazon MySQL Aurora güvenlik kılavuzu
- Bölge başına Amazon sertifika paketleri
hCaptcha kullanarak reCaptcha¶
$cfg['CaptchaApi'] = 'https://www.hcaptcha.com/1/api.js';
$cfg['CaptchaCsp'] = 'https://hcaptcha.com https://*.hcaptcha.com';
$cfg['CaptchaRequestParam'] = 'h-captcha';
$cfg['CaptchaResponseParam'] = 'h-captcha-response';
$cfg['CaptchaSiteVerifyURL'] = 'https://hcaptcha.com/siteverify';
// This is the secret key from hCaptcha dashboard
$cfg['CaptchaLoginPrivateKey'] = '0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
// This is the site key from hCaptcha dashboard
$cfg['CaptchaLoginPublicKey'] = 'xxx-xxx-xxx-xxx-xxxx';
Ayrıca bkz.
Ayrıca bkz.
Turnstile kullanarak reCaptcha¶
$cfg['CaptchaMethod'] = 'checkbox';
$cfg['CaptchaApi'] = 'https://challenges.cloudflare.com/turnstile/v0/api.js';
$cfg['CaptchaCsp'] = 'https://challenges.cloudflare.com https://static.cloudflareinsights.com';
$cfg['CaptchaRequestParam'] = 'cf-turnstile';
$cfg['CaptchaResponseParam'] = 'cf-turnstile-response';
$cfg['CaptchaLoginPublicKey'] = '0xxxxxxxxxxxxxxxxxxxxxx';
$cfg['CaptchaLoginPrivateKey'] = '0x4AAAAAAAA_xx_xxxxxxxxxxxxxxxxxxxx';
$cfg['CaptchaSiteVerifyURL'] = 'https://challenges.cloudflare.com/turnstile/v0/siteverify';
Ayrıca bkz.
Ayrıca bkz.
Google reCaptcha v2/v3 kullanarak reCaptcha¶
$cfg['CaptchaLoginPublicKey'] = 'xxxxxxxxxxxxxxxx-xxxxxxxxxxxx';
$cfg['CaptchaLoginPrivateKey'] = 'xxxxxxxxx-xxxxxxxxxxxxxx';
// Remove it if you dot not want the checkbox mode
$cfg['CaptchaMethod'] = 'checkbox';
Ayrıca bkz.
Ayrıca bkz.
Kullanım Kılavuzu¶
phpMyAdmin yapılandırmak¶
Arayüzü özelleştirmek için kullanılabilen birçok yapılandırma ayarı vardır. Bu ayarlar Yapılandırma içinde tanımlanır. Yapılandırmanın birçok katmanı vardır.
Genel ayarlar Yapılandırma içinde anlatıldığı gibi config.inc.php
dosyasında yapılandırılabilir. Bu, veritabanlarına ve kapsamlı diğer sistem ayarlarına bağlantıları yapılandırmak için tek yoldur.
Bunun en başında sürekli phpMyAdmin yapılandırma depolaması içinde depolanabilen, muhtemelen otomatik olarak Sıfır yapılandırma aracılığıyla yapılandırılmış kullanıcı ayarları vardır. Eğer phpMyAdmin yapılandırma depolaması yapılandırılmadıysa, ayarlar geçici olarak oturum verileri içinde saklanır; bunlar sadece siz oturumu kapatana kadar geçerlidir.
Ayrıca, ileriki kullanımlar için kullanıcı yapılandırmasını kaydedebilir, ya bunları bir dosya olarak ya da tarayıcı yerel depolaması için indirebilirsiniz. Bu her iki seçeneği Ayarlar sekmesinde bulabilirsiniz. Tarayıcı yerel depolamasında saklanan ayarlar otomatik olarak phpMyAdmin’e oturum açmanız üzerine yükleme için sunulacaktır.
İki etkenli kimlik doğrulaması¶
4.8.0 sürümüyle geldi.
phpMyAdmin 4.8.0 sürümünden itibaren oturum açarken kullanılacak olan iki etkenli kimlik doğrulamasını yapılandırabilirsiniz. Bunu kullanmak için önce phpMyAdmin yapılandırma depolaması’nı yapılandırmanız gerekir. Bu yapıldıktan sonra, her kullanıcı Ayarlar içindeki ikinci kimlik doğrulaması etkenini tercih edebilir.
Git kaynak deposundan phpMyAdmin’i çalıştırırken, bağımlılıklar el ile yüklenmek zorundadır; komut ile böyle yapmanın en tipik yolu:
composer require pragmarx/google2fa-qrcode bacon/bacon-qr-code
Ya da FIDO U2F ile bir donanım güvenlik anahtarı kullanarak:
composer require code-lts/u2f-php-server
Kimlik Doğrulama Uygulaması (2FA)¶
Kimlik doğrulaması için bir uygulama kullanmak, HOTP ve TOTP’ye dayalı oldukça yaygın bir yaklaşımdır. Bu, phpMyAdmin’den kimlik doğrulama uygulamasına özel bir anahtar aktarımına dayanır ve uygulama daha sonra bu anahtara göre bir defalık kod oluşturabilir. Uygulamaya phpMyAdmin’den anahtarı girmenin en kolay yolu bir QR kodunu tarama yoluyladır.
Bu standartları uygulayan, cep telefonları için mevcut düzinelerce uygulama vardır, en yaygın kullanılan şunlardır:
Donanım Güvenlik Anahtarı (FIDO U2F)¶
Donanım belirteçleri kullanmak, bir yazılım tabanlı çözümden daha güvenli olarak kabul edilir. phpMyAdmin FIDO U2F belirteçlerini destekler.
Bu belirteçlerin birkaç üreticisi vardır, örneğin:
Basit iki etkenli kimlik doğrulaması¶
Bu kimlik doğrulaması, gerçekten iki etkenli kimlik doğrulaması sağlamadığından yalnızca deneme ve tanıtım amacıyla dahil edildi, sadece düğmeye tıklayarak kullanıcıdan oturum açmayı onaylamasını ister.
Üretimde kullanılmamalıdır ve $cfg['DBG']['simple2fa']
ayarlanmadıkça etkisizleştirilmiştir.
Dönüşümler¶
Not
Dönüşümlerin özelliğini kullanmak için phpMyAdmin yapılandırma depolaması’nı yapılandırmanız gerekir.
Giriş¶
Dönüşümleri etkinleştirmek için column_info
tablosunu ve doğru yönergeleri ayarlamalısınız. Lütfen bunun nasıl yapılacağına Yapılandırma bölümünden bakın.
phpMyAdmin’in iki farklı türde dönüşümü vardır: phpMyAdmin’de gezinirken sadece verilerin nasıl gösterildiğini etkileyen tarayıcı görüntüleme dönüşümleri; ve phpMyAdmin aracılığıyla eklenmeden önce bir değeri etkileyen girdi dönüşümleri. Her bir sütunun içeriğine farklı dönüşümler uygulayabilirsiniz. Her dönüşümün, depolanan verileri nasıl etkileyeceğini tanımlama seçenekleri vardır.
Bir dosya adı içeren dosyaadi
sütunu var sayın. Normal olarak phpMyAdmin içinde sadece bu dosya adını görecektiniz. Görüntüleme dönüşümlerini kullanarak dosya adını HTML bağlantısına dönüştürebilirsiniz, böylece sütunun bağlantısında phpMyAdmin yapısının içerisine tıklayabilirsiniz ve dosyanın yeni bir tarayıcı penceresinde görüntülendiğini göreceksiniz. Dönüşüm seçeneklerini kullanarak aynı zamanda bir dizgiye eklemek/başına eklemek için dizgileri ya da istediğiniz depolanan çıktı biçimini belirtebilirsiniz.
Mevcut tüm dönüşümlere ve seçeneklerine genel bir bakış için ya varolan bir sütunun Değiştir
bağlantısına gidebilir ya da yeni bir sütun oluşturmak için ileti öğesinden gidebilirsiniz, her iki durumda da sisteminizde bulunan her bir dönüşüm hakkında daha fazla bilgi gösterecek olan “Tarayıcı görüntüleme dönüşümü” ve “Girdi dönüşümü” için o sütun yapısı sayfasında bir bağlantı vardır.
Dönüşümleri nasıl etkili olarak kullanabileceğinizle ilgili eğitim için resmi phpMyAdmin ana sayfamazdaki Bağlantı bölümümüze bakın.
Kullanım¶
Tablo yapısı sayfasına gidin (bir tablo için ‘Yapı’ bağlantısına tıklayarak ulaşın). Oradaki “Değiştir”e (veya değiştir simgesine) tıklayın ve satırın sonunda beş dönüşümle ilgili alanın olduğunu göreceksiniz. Onlara ‘Media type’, ‘Tarayıcı dönüşümü’ ve ‘Dönüşüm seçenekleri’ denir.
- ‘Media type’ alanı aşağı açılır menü alanıdır. Sütunun içeriklerine karşı gelen Media type seçin. Lütfen birçok dönüşümün bir Media type seçilene kadar etkin olmadığını unutmayın.
- ‘Tarayıcı görüntüleme dönüşümü’ alanı aşağı açılır bir alandır. Ön tanımlı dönüşümlerin umutla büyüyen miktardan seçebilirsiniz. Kendi dönüşümünüzü nasıl yapacağınız bilgisi için aşağıya bakın. Genel dönüşümler ve mime türü sınırlı dönüşümleri vardır. Genel dönüşümler herhangi bir mime türü için kullanılabilir. Eğer gerekli olursa, ne olursa olsun mime türünü alacaklardır. Mime türü sınırlı dönüşümleri genellikle sadece belli bir mime türünde işler. Ana mime türünde (‘image’ gibi) işleyen dönüşümler vardır, büyük olasılıkla ne olursa olsun alt türü alacaktır ve sadece belirli bir alt türde (‘image/jpeg’ gibi) işleyenlerdir. Dönüşümleri tanımlanmamış işlev için olan mime türlerinde kullanabilirsiniz. Seçtiğiniz doğru dönüşüm için güvenlik denetimi yoktur, bu yüzden çıktının neye benzeyeceğine dikkat edin.
- ‘Tarayıcı görüntüleme dönüşümü seçenekleri’ alanı serbest tür metin alanıdır. Buraya belli dönüşüm işlevi seçeneklerini girmek zorundasınız. Genellikle dönüştürmeler varsayılan seçeneklerle işleyebilir ama genel olarak hangi seçeneklerin gerekli olduğunu görmek için genel bakışla bakmak iyi bir fikirdir. ENUM/SET-Alanları gibi, ‘a’,’b’,’c’,…(EKSİK BOŞLUKLARI UNUTMAYIN) biçimini kullanan birkaç seçeneğe bölmek zorundasınız. Bunun nedeni dahili olarak seçeneklerin bir dizilim gibi ayrıştırılacağıdır, dizilimde ilk değeri ilk öğeyi bırakın ve saire. Eğer MIME karakter grubu belirlemek istiyorsanız, dönüştürme_seçenekleri içinden tanımlayabilirsiniz. Bunu, gurubun son değeri olarak belirli mime-dönüşümün ön tanımlanmış seçeneklerinin dışına koymalısınız. “’; charset=XXX’” biçimini kullanın. Eğer dönüşüm kullanırsanız, belirleyebileceğiniz 2 seçenek için ve karakter grubuna ilave etmek isterseniz, “‘birinci parametre’,’ikinci parametre’,’charset=us-ascii’” girin. Ancak varsayılanları kullanabileceğiniz parametreler: “’’,’’,’charset=us-ascii’”. Varsayılan seçenekler,
$cfg['DefaultTransformations']
kullanılarak yapılandırılabilir. - “Girdi dönüşümü”, “Tarayıcı görüntüleme dönüşümü” için yukarıdaki talimatlara tam olarak karşılık gelen başka bir açılır menüdür, ancak bunlar, veritabanına eklenmeden önce verileri etkiler. Bunlar en yaygın olarak ya özel bir düzenleyici (örneğin, phpMyAdmin SQL düzenleyici arayüzünü kullanarak) ya da seçici (örneğin bir resmi yüklemek gibi) sağlamak için kullanılır. Bir IPv4 adresini ikiliye dönüştürmek veya düzenli bir ifadeyle ayrıştırmak gibi verileri değiştirmek de mümkündür.
- Son olarak, ‘Girdi dönüşümü seçenekleri’, yukarıdaki “Tarayıcı görüntüleme dönüşümü seçenekleri” bölümünün eşdeğeridir ve isteğe bağlı ve gerekli parametrelerin girildiği yerdir.
Dosya yapısı¶
Mime türleri için tüm belirli dönüşümler src/Plugins/Transformations/
dizini içindeki sınıf (class) dosyaları aracılığıyla tanımlanır. Her biri src/Plugins/Transformations/Abs
içinde tanımlanmış belirli bir dönüşüm soyut sınıfını (abstract class) genişletir.
Özelleştirmeyi kolaylaştırmak ve yeni veya özel dönüşümlerin kolayca eklenmesini sağlamak için dosyalarda saklanırlar.
Kullanıcı kendi mime türlerini giremediğinden dönüşümlerin her zaman işe yarayacağı kesindir. Dönüştürme işlevinin işlemeyi bilmediği bir mime türüne bir dönüşüm uygulamanın hiçbir anlamı yoktur.
Herhangi bir diğer dönüştürme işlevi tarafından dahil edilebilir bazı temel işlevleri sağlayan src/Plugins/Transformations.php
adında bir dosya vardır.
[Transformation Name]TransformationsPlugin
adına sahip soyut sınıfını genişletirken dosya adı geleneği [Mimetype]_[Subtype]_[Transformation Name].php
’dir. Dönüşümlerin eklentileriyle uygulanmak zorunda olan yöntemlerin tümü:
- ana sınıf (class) içindeki getMIMEType() ve getMIMESubtype();
- genişletilen soyut sınıfı (abstract class) içindeki getName(), getInfo() ve applyTransformation().
getMIMEType(), getMIMESubtype() ve getName() yöntemleri MIME türünün adını, MIME Alt türünü ve buna göre de dönüşümü döndürür. getInfo() dönüşümlerin açıklamasını ve alabileceği olası seçenekleri döndürür ve applyTransformation() dönüşüm eklentisinin asıl çalışma yöntemidir.
Kendi dönüşüm eklentinizi eklemek için lütfen src/Plugins/Transformations/TEMPLATE
ve src/Plugins/Transformations/TEMPLATE_ABSTRACT
dosyalarına bakın. Ayrıca (soyut dönüşüm sınıfı ile ya da olmadan) yeni bir dönüşüm eklentisi oluşturabilirsiniz, file:scripts/transformations_generator_plugin.sh veya scripts/transformations_generator_main_class.sh
kullanarak.
applyTransformation() yöntemi her zaman üç değişkenle iletilir:
- $buffer - Sütunun içindeki metni içerir. Bu dönüştürmek istediğiniz metindir.
- $options - Dizilim olarak herhangi bir kullanıcı geçişli seçenekten bir dönüştürme işlevine kadar olanı içerir.
- $meta - Sütununuz hakkındaki bilgiye sahip bir nesne içerir. Veri mysql_fetch_field() işlevinin çıktısından çizilir. Bunun anlamı, kılavuz sayfasında anlatılmış tüm nesne tercihleri bu değişken içinde mevcuttur ve unsigned/zerofill/not_null/… tercihlerine göre sütunu dönüştürmek için kullanılabilir. $meta->mime türü değişkeni sütunun orijinal Media type içerir (yani ‘text/plain’, ‘image/jpeg’ vs.)
Yer işaretleri¶
Not
Yer imleri özelliğini kullanmak için phpMyAdmin yapılandırma depolaması’nı yapılandırmanız gerekir.
Yer imlerini depolama¶
Çalıştırlan herhangi bir sorgu sonuçların görüntülendiği sayfada yer imi olarak işaretlenebilir. Sadece sayfanın en sonunda Bu SQL sorgusunu işaretle etiketli düğmeyi bulacaksınız. Bir yer imini depoladığınız anda, bu sorgu veritabanına bağlantılanır. Bu veritabanı için sorgu kutusunun göründüğü her sayfada aşağı açılır yer imine artık erişebilirsiniz.
Yer imleri içindeki değişkenler¶
Sorgunun içerisinde, ayrıca değerler için yer tutuculara sahip olabilirsiniz. Bu, sorgu içerisine /*
ve */
arasına SQL açıklamaları eklenerek yapılır. Açıklamaların içerisinde [VARIABLE{variable-number}]
özel dizgisi kullanılır. SQL açıklamalarından çıkarılan bütün sorgunun kendiliğinden geçerli olmak zorunda olduğunun farkında olun aksi halde bir yer imi olarak saklayamayacaksınız. Ayrıca, ‘VARIABLE’ metninin büyük küçük harfe duyarlı olduğunu unutmayın.
Yer imi yürütüldüğünde, sorgu kutusu sayfasındaki Değerler girdi kutuları içine yazılan her şey, depolanan sorgunuzun içindeki /*[VARIABLE{variable-number}]*/
dizgilerini değiştirecek.
Ayrıca, sorgunuz için /*[VARIABLE{variable-number}]*/
dizgisi içerisindeki her şeyin bu şekilde kalacağını ama /**/
karakterlerinin çıkarılacağını hatırlayın. Bu yüzden, Variable 1 girdi kutusuna girdiğiniz VARIABLE1 dizgisinin olduğu sorgunuz içinde:
/*, [VARIABLE1] AS myname */
dizgisinin şuna genişletileceği
, VARIABLE1 as myname
dizgisini kullanabilirsiniz.
Daha karışık bir örnek, diyelim ki şu sorguyu sakladınız:
SELECT Name, Address FROM addresses WHERE 1 /* AND Name LIKE '%[VARIABLE1]%' */
Eğer saklanan sorgu için değişken olarak “phpMyAdmin” girmek isterseniz, tam sorgu şu olacaktır:
SELECT Name, Address FROM addresses WHERE 1 AND Name LIKE '%phpMyAdmin%'
/**/
yapısının içerisinde**BOŞLUKLARIN OLMAYACAĞINI UNUTMAYIN**. Buraya girilen herhangi bir boşluk sorgunuza daha sonra üstelik boşluk olarak eklenecektir ve özellikle “LIKE ‘’” ifadesi içerisinde değişken genişletmesi kullanıldığında beklenmedik sonuçlara yol açabilir.
Bir ter imi kullanarak bir tabloya gözatma¶
Bir yer imi tablo ile aynı ada sahip olduğunda, bu tabloya gözatılırken sorgu olarak kullanılacaktır.
Kullanıcı yönetimi¶
Kullanıcı yönetimi, MySQL sunucusuna bağlanmak için izin verilen kullanıcıları ve her veritabanı üzerinde sahip oldukları izinleri denetleme sürecidir. phpMyAdmin, kullanıcı adını ve parolayı MySQL üzerine geçirsede, sonrasında kullanıcıya belirli bir eylemi gerçekleştirmesi için izin verilip verilmediğini belirleyen, kullanıcı yönetimi ile baş edemez. phpMyAdmin içinde, yöneticiler kullanıcıları oluşturma, varolan kullacıları görüntüleme ve düzenleme, ve kullanıcıları kaldırma üzerine tam denetime sahiptir.
phpMyAdmin içinde kullanıcı yönetimi, ana sayfadan Kullanıcı hesapları sekmesi aracılığıyla denetlenir. Kullanıcılar oluşturulabilir, düzenlenebilir ve kaldırılabilir.
Yeni bir kullanıcı oluşturma¶
Yeni bir kullanıcı oluşturmak için Kullanıcı hesapları sayfasının en altında yandaki Kullanıcı hesabı ekle bağlantısına tıklayın (“süper kullanıcı” olmak zorundasınız, örn. “root” kullanıcısı). Kullanıcıyı belirli gereksinimlerinize yapılandırmak için metin kutuları ve aşağı açılan menüleri kullanın. Ondan sonra bu kullanıcı için bir veritabanı oluşturup oluşturmamayı ve belirli genel yetkileri verip vermemeyi seçebilirsiniz. Bir kere kullanıcıyı oluşturdunuz mu (Git düğmesine tıklayarak), belirli bir veritabanına bu kullanıcının izinlerini tanımlayabilirsiniz (bu durumda genel yetkileri vermeyin). Genelde, kullanıcıların (KULLANIM dışında) herhangi bir genel yetkiye ihtiyacı yoktur, sadece kendi belirli veritabanı için izinlere ihtiyacı vardır.
Varolan bir kullanıcıyı düzenleme¶
Varolan bir kullanıcıyı düzenlemek için basitçe Kullanıcı hesapları sayfasında bu kullanıcının sağındaki kalem simgesine tıklayın. Ondan sonra genel ve veritabanına özel yetkilerini düzenleyebilir, parolalarını değiştirebilir veya yeni bir kullanıcıya bu yetkileri bile kopyalayabilirsiniz.
Bir kullanıcıyı silme¶
Kullanıcı hesapları sayfasından, kaldırmak istediğiniz kullanıcı için, aynı zamanda aynı adda (varsa) herhangi bir veritabanını da kaldırıp kaldırmayacağınızı seçmek için onay kutusunu işaretleyin ve Git’e tıklayın.
Belirli bir veritabanı için kullanıcıya yetkileri atama¶
Kullanıcılar, kullanıcı kaydı (ana sayfadaki Kullanıcı hesapları bağlantısından) düzenlenerek veritabanlarına atanır. Eğer verilen bir tablo için belirli bir biçimde kullanıcı oluşturuyorsanız, önce (genel yetkileri olmadan) kullanıcıyı oluşturmak zorundasınız ve ondan sonra geri dönmek ve tek tek tabloya tablo ve yetkileri eklemek için bu kullanıcıyı düzenlemek zorundasınız.
İlişkiler¶
phpMyAdmin, mevcut olduğunda MySQL-yerel (InnoDB) yöntemleri kullanarak ve gerektiğinde özel sadece phpMyAdmin özelliklerine başvurarak ilişkilere (dış anahtarlara benzer) izin verir. Bu ilişkileri düzenlemenin iki yolu vardır, ilişki görünümü ve sürükle-ve-bırak tasarımcı ile – ikisi de bu sayfada açıklanır.
Not
Sadece phpMyAdmin ilişkilerini kullanmak için phpMyAdmin yapılandırma depolaması’nı yapılandırmanız gerekir.
Teknik bilgi¶
Şu anda yerel olarak ilişkileri destekleyen tek MySQL tablo türü InnoDB’dir. Bir InnoDB tablosu kullanırken, phpMyAdmin, veritabanına hangi uygulama erişirse erişsin MySQL tarafından zorlanacak olan gerçek InnoDB ilişkileri oluşturacak. Herhangi bir diğer tablo türü söz konusu olduğunda, phpMyAdmin ilişkileri dahili olarak uygular ve bu ilişkiler herhangi bir diğer uygulamaya uygulanmaz.
İlişki görünümü¶
Çalışır vaziyette olması için önce düzgün olarak [[pmadb|pmadb]] oluşturmak zorundasınız. Bir kez bu kuruldu mu, bir tablonun “Yapı”sı sayfasını seçin. Tablo tanımının altında “İlişki görünümü” adında bir bağlantı gösterilir. Eğer bu bağlantıya tıklarsanız, herhangi bir (çoğu) alan için başka bir tabloda bir bağlantı oluşturmanızı sağlayan bir sayfa gösterilecektir. Burada sadece BİRİNCİL ANAHTARLAR gösterilir, bu yüzden başvurduğunuz alan görünmüyorsa, büyük olasılıkla yanlış bir şey yapıyorsunuzdur. En alttaki aşağı açılır menü bir kayıt adı olarak kullanılacak alandır.
İlişki görünümü örneği¶


Diyelim kategorilere sahipsiniz ve bağlantılar ve bir kategori birkaç bağlantı içerebilir. Tablo yapınız böyle bir şey olacaktır:
- category.category_id (benzersiz olmak zorunda)
- category.name
- link.link_id
- link.category_id
- link.uri.
link tablosu için ve category_id alanı için ilişki görünümü (tablo yapısı altında) sayfasını açın, asıl kayıt olarak category.category_id seçin.
Eğer şimdi bağlantı tablosuna gözatıyorsanız, category_id alanı, düzgün kategori kaydı için tıklanabilir hiper bağlantı olacaktır. Ancak tüm görüdüğünüz sadece category_id ‘dir, kategorinin adı değildir.

Bunu düzeltmek için category tablosunun ilişki görünümünü açın ve en alttaki aşağı açılır menüde “adı” seçin. Eğer şimdi tekrar bağlantı tablosuna gözatarsanız ve category_id hiper bağlantısı üzerine fareyi getirirseniz, ilgili kategoriden gelen değer araç ipucu olarak gösterilecektir.

Tasarımcı¶
Tasarımcı özelliği phpMyAdmin ilişkilerini oluşturmanın, düzenlemenin ve görüntülemenin grafiksel bir yoludur. Bu ilişkiler, phpMyAdmin’in ilişki görünümünde oluşturulanları ile uyumludur.
Bu özelliği kullanmak için düzgün yapılandırılmış phpMyAdmin yapılandırma depolaması’na ihtiyacınız var ve $cfg['Servers'][$i]['table_coords']
yapılandırmış olmak zorundasınız.
Tasarımcı’yı kullanmak için veritabanının yapı sayfasını seçin, ondan sonra Tasarımcı sekmesini arayın.
Görünümü PDF içine aktarmak için önce PDF sayfalarnı oluşturmak zorundasınız. Tasarımcı, tabloların nasıl görüntüleneceğine ilişkin düzeni oluşturur. Son olarak görünümü dışa aktarmak için bunu bir PDF sayfası ile oluşturmak ve tasarımcı ile oluşturduğunuz düzeninizi seçmek zorundasınız.
Çizelgeler¶
3.4.0 sürümüyle geldi.
phpMyAdmin 3.4.0 sürümünden bu yana, çizelgeleri “Sorgu sonuçları işlemleri” alanındaki “Çizelgeyi görüntüle” bağlantısına tıklayarak bir SQL sorgusundan kolayca oluşturabilirsiniz.

Aşağıdaki seçenekler ile çizelgeyi özelleştirebildiğiniz bir “Çizelgeyi görüntüle” pencere katmanı gösteriliyor.
- Çizelge türü: Çizelge türünü seçmenizi sağlar. Çubuk çizelgeler, sütun çizelgeler, çizgi çizelgeler, eğri çizelgeler, alan çizelgeler, dilim çizelgeler ve zaman çizelgesi çizelgeler (sadece şu anki seri seçimi için uygulanabilir çizelge türleri sunulur) desteklenen türlerdir.
- X ekseni: Ana eksen için alanı seçmenizi sağlar.
- Seri: Çizelge için seri seçmenizi sağlar. Birden fazla seri seçebilirsiniz.
- Başlık: Yukarıdaki çizelgede görüntülenen çizelge için bir başlık belirlemeyi sağlar.
- X ekseni ve Y ekseni etiketleri: Eksenler için etiketleri belirlemeyi sağlar.
- Başlangıç satırı ve satır sayısı: Sonuçlar kümesinin belirli bir satır sayısı için sadece çizelgeleri oluşturmayı sağlar.

Örnekler¶
Dilim çizelge¶
Basit bir dilim çizelge için sorgu sonuçları şununla oluşturulabilir:
SELECT 'Food' AS 'expense',
1250 AS 'amount' UNION
SELECT 'Accommodation', 500 UNION
SELECT 'Travel', 720 UNION
SELECT 'Misc', 220
Ve bu sorgunun sonucu:
expense | amount |
---|---|
Food | 1250 |
Accommodation | 500 |
Travel | 720 |
Misc | 220 |
X ekseni ve seri içinde miktar olarak gider seçimi:

Çubuk ve sütun çizelge¶
Hem çubuk çizelgeler hem de sütun çizelgeler istiflemeyi destekler. Bu türlerden birinin seçilmesi üzerine istiflemeyi seçmek için bir onay kutusu görüntülenir.
Basit bir çubuk ve sütun çizelge için sorgu sonuçları şununla oluşturulabilir:
SELECT
'ACADEMY DINOSAUR' AS 'title',
0.99 AS 'rental_rate',
20.99 AS 'replacement_cost' UNION
SELECT 'ACE GOLDFINGER', 4.99, 12.99 UNION
SELECT 'ADAPTATION HOLES', 2.99, 18.99 UNION
SELECT 'AFFAIR PREJUDICE', 2.99, 26.99 UNION
SELECT 'AFRICAN EGG', 2.99, 22.99
Ve bu sorgunun sonucu:
title | rental_rate | replacement_cost |
---|---|---|
ACADEMY DINOSAUR | 0.99 | 20.99 |
ACE GOLDFINGER | 4.99 | 12.99 |
ADAPTATION HOLES | 2.99 | 18.99 |
AFFAIR PREJUDICE | 2.99 | 26.99 |
AFRICAN EGG | 2.99 | 22.99 |
X ekseni olarak başlık ve seri olarak rental_rate ve replacement_cost seçimi:

Dağılım çizelge¶
Dağılım çizelgeler başka bir değişkene nazaran bir veya daha fazla değişkenin hareketinin tanımlanmasında yararlıdır.
Çubuk ve sütun çizelgeler bölümünden aynı veri kümesi kullanımı ve X ekseni olarak replacement_cost ve seri içinde rental_rate seçimi:

Çizgi, eğri ve zaman çizelgesi çizelgeler¶
Bu çizelgeler temel verilerdeki eğilimleri göstermek için kullanılabilir. Zaman çizelgesi çizelgeler, göz önünde tutulan tarih/saat arasındaki mesafeleri alarak X ekseni çizerken, eğri çizelgeler düzgün çizgiler çizer.
Basit bir çizgi, eğri veya zaman çizelgesi çizelgeleri için sorgu sonuçları şununla oluşturulabilir:
SELECT
DATE('2006-01-08') AS 'date',
2056 AS 'revenue',
1378 AS 'cost' UNION
SELECT DATE('2006-01-09'), 1898, 2301 UNION
SELECT DATE('2006-01-15'), 1560, 600 UNION
SELECT DATE('2006-01-17'), 3457, 1565
Ve bu sorgunun sonucu:
date | revenue | cost |
---|---|---|
2016-01-08 | 2056 | 1378 |
2006-01-09 | 1898 | 2301 |
2006-01-15 | 1560 | 600 |
2006-01-17 | 3457 | 1565 |



İçe ve dışa aktarma¶
İçe aktar¶
Verileri içe aktarmak için phpMyAdmin içinde “İçe aktar” sekmesine gidin. Belirli bir veritabanı veya tablo içine verileri aktarmak için veritabanını veya tabloyu “İçe aktar” sekmesine gitmeden önce açın.
Standart İçe ve Dışa aktar sekmesine ek olarak, ayrıca bir SQL dosyasını doğrudan web tarayıcınızdaki phpMyAdmin arayüzüne yerel dosya yöneticisinden sürükleyip ve bırakarak içe aktarabilirsiniz.
Eğer büyük dosyaları içe aktarırken sorunlar yaşıyorsanız, lütfen bakınız 1.16 Büyük döküm dosyalarını gönderemiyorum (bellek, HTTP ya da zaman aşımı sorunları)..
Aşağıdaki yöntemleri kullanarak içe aktarabilirsiniz:
Form tabanlı gönderme
Herhangi bir desteklenen biçim ile kullanılabilir, ayrıca (b|g)zipped dosyaları, örn., mydump.sql.gz .
Form tabanlı SQL Sorgusu
Geçerli SQL dökümleri ile kullanılabilir.
Gönderme dizinini kullanarak
phpMyAdmin’in yüklü olduğu web sunucunuzda bir gönderme dizini belirleyebilirsiniz, dosyanızı bu dizin içine gönderdikten sonra phpMyAdmin’in içe aktarma ileti kutusunda bu dosyayı seçebilirsiniz, bakınız$cfg['UploadDir']
.
phpMyAdmin birkaç çeşitli yaygın olarak kullanılan biçimlerden içe aktarabilir.
CSV¶
Hesap tabloları ya da çeşitli diğer programlar tarafından dışa/içe aktarmak için sıklıkla kullanılan virgülle ayrılmış değerler biçimi.
Not
‘AUTO_INCREMENT’ alanına sahip tabloda bir CSV dosyasından bir tabloya veriyi içe aktarırken, CSV alanındaki her kayıt için ‘AUTO_INCREMENT’ değeri ‘0’ (sıfır) olarak yapılır. Bu, ‘AUTO_INCREMENT’ alanını doğru olarak yerleştirmeyi sağlar.
Artık sunucu veya veritabanı seviyesinde bir CSV dosyasını içe aktarmak mümkündür. CSV dosyasını içe aktarmak için bir tablo oluşturmak yerine, en uygun bir yapıya sizin için karar verilecektir ve bunun yerine, veriler bunun içine aktarılacaktır. Tüm diğer özellikler, gereksinimler ve sınırlamalar önceden olduğu gibidir.
VERİ YÜKLE kullanarak CSV¶
CSV ile benzerdir, sadece dahili MySQL ayrıştırıcısı kullanarak ve phpMyAdmin’inki de değil.
ESRI Şekil Dosyası¶
ESRI şekil dosyası veya basitçe bir şekil dosyası, coğrafi bilgi sistemleri yazılımı için popüler bir jeo-uzamsal vektör verisi biçimidir. Esri ve diğer yazılım ürünleri arasında veri birlikte çalışabilirliği için bir (çoğunlukla) açık belirtim olarak Esri tarafından geliştirildi ve düzenlendi.
MedyaViki¶
phpMyAdmin (4.0 veya sonraki sürümü) tarafından içe aktarılabilen, MedyaViki dosyaları, aynı zamanda şimdi de içe aktarılabilir. Bu, Vikipedi tarafından tabloları görüntülemek için kullanılan biçimdir.
OpenDocument Hesap Tablosu (ODS)¶
Bir veya daha fazla hesap tablosu içeren OpenDocument çalışma kitapları artık doğrudan içe aktarılabilir.
ODS hesap tablosu içe aktarılırken, hesap tablosu, içe aktarmayı mümkün olduğunca basit yapmak için belirli bir şekilde adlandırılmak zorundadır.
Tablo adı¶
İçe aktarma sırasında, phpMyAdmin tablo adı olarak sayfa adını kullanır; varolan tablo adınız (veya oluşturmak istediğiniz tablo, hızlı bir şekilde İşlemler sekmesinden yeni tabloyu yeniden adlandırabildiğinizden beri bu daha az ilgilendirse de) ile eşleşmesi için hesap tablosu programınızdaki sayfayı yeniden adlandırmalısınız.
Sütun adları¶
Ayrıca, hesap tablosunun ilk satırını sütun adları olan bir başlık (bu, hesap tablonuzun üst kısmına yeni bir satır ekleyerek yapılabilir) yapmalısınız. İçe aktarma ekranında iken, “Dosyanın ilk satırı tablo sütun adlarını içeriyor;” için onay kutusunu seçin, bu şekilde yeni içe aktarılan verileriniz uygun sütunlara gidecek.
Not
Formüller ve hesaplamalar değerlendirilmeyecektir, daha doğrusu, en son kayıttan değerleri yüklenecektir. Lütfen hesap tablosundaki tüm değerleri içe aktarmadan önce gerektiği gibi olduğundan emin olun.
SQL¶
SQL, veri üzerinde herhangi bir değiştirme yapmak için kullanılabilir, ayrıca yedeklenen verileri geri yüklemek için yararlıdır.
XML¶
phpMyAdmin tarafından dışa aktarılan XML dosyaları (3.3.0 veya sonraki sürüm) artık içe aktarılabilir. Yapılar (veritabanlar, tablolar, görünümler, tetikleyiciler, vb.) ve/veya veriler dosyanın içeriklerine bağlı olarak oluşturulacaktır.
Desteklenen xml şemaları henüz bu vikide belgelenmedi.
Dışa aktar¶
phpMyAdmin, yaygın olarak kullanılan çeşitli biçimlerde yerel diskinizdeki (veya özel bir web sunucusu $cfg['SaveDir']
klasörü) metin dosyaları (hatta sıkıştırılmış) içine aktarabilir:
CodeGen¶
NHibernate dosya biçimi. Planlanan sürümler: Java, Hibernate, PHP PDO, JSON, vb. Bu yüzden ön geçici adı codegen’dir.
CSV¶
Hesap tabloları ya da çeşitli diğer programlar tarafından dışa/içe aktarmak için sıklıkla kullanılan virgülle ayrılmış değerler biçimi.
Microsoft Excel için CSV¶
Bu sadece Microsoft Excel’in çoğu İngilizce sürümleri içine aktarılabilen önceden yapılandırılmış CSV içe aktarma sürümüdür. Bazı yerelleştirilmiş sürümler (“Türkçe” gibi), alan ayıracı olarak “,” yerine “;” bekler.
Microsoft Word 2000¶
Eğer Microsoft Word 2000 veya daha yenisini kullanıyorsanız (veya OpenOffice.org gibi uyumlusunu), bu dışa aktarmayı kullanabilirsiniz.
JSON¶
JSON (JavaScript Object Notation - JavaScript Nesne Gösterimi) hafif bir veri değişim biçimidir. İnsanlar için okuması ve yazması kolay ve makineler için ayrıştırması ve oluşturması kolaydır.
4.7.0 sürümünde değişti: Oluşturulan JSON yapısı geçerli JSON verisi üretmek için phpMyAdmin 4.7.0 sürümünde değiştirildi.
Oluşturulan JSON, aşağıda öznitelikleri olan nesnelerin listesidir:
-
type
¶ Verilen nesnenin türü, şunlardan biri olabilir:
header
- Açıklama içeren dışa aktarma başlığı ve phpMyAdmin sürümü.
database
- Veritabanının adını içeren, bir veritabanı işaretleyici başlangıcı.
table
- Tablo verisi dışa aktarma.
-
comment
¶ İsteğe bağlı metinsel açıklama.
Örnek çıktı:
[
{
"comment": "Export to JSON plugin for PHPMyAdmin",
"type": "header",
"version": "4.7.0-dev"
},
{
"name": "cars",
"type": "database"
},
{
"data": [
{
"car_id": "1",
"description": "Green Chrysler 300",
"make_id": "5",
"mileage": "113688",
"price": "13545.00",
"transmission": "automatic",
"yearmade": "2007"
}
],
"database": "cars",
"name": "cars",
"type": "table"
},
{
"data": [
{
"make": "Chrysler",
"make_id": "5"
}
],
"database": "cars",
"name": "makes",
"type": "table"
}
]
LaTeX¶
Eğer tablo verilerini veya yapıyı LaTeX içine gömmek istiyorsanız, bu sizin için doğru seçimdir.
LaTeX, yüksek dizgisel kaliteli bilimsel ve matematiksel belgeler üretmek için çok uygun bir dizim sistemidir. Ayrıca kitapları tamamlamak için basit harflerden diğer belgeleri her türlü üretmek için uygundur. LaTeX, biçimlendirme motoru olarak TeX kullanır. Kapsamlı TeX Arşivi Ağı üzerinde TeX and LaTeX hakkında daha fazla bilgi edinin, ayrıca od TeX kısa açıklamasına bakın.
Çıktı, işlenebilir olmadan önce bir LaTeX belgesi içine gömülü olması gerekir, örneğin aşağıdaki belgede:
\documentclass{article}
\title{phpMyAdmin SQL output}
\author{}
\usepackage{longtable,lscape}
\date{}
\setlength{\parindent}{0pt}
\usepackage[left=2cm,top=2cm,right=2cm,nohead,nofoot]{geometry}
\pdfpagewidth 210mm
\pdfpageheight 297mm
\begin{document}
\maketitle
% insert phpMyAdmin LaTeX Dump here
\end{document}
MedyaViki¶
Hem tablolar hem de veritabanları, tabloları görüntülemek için Vikipedi tarafından kullanılan MedyaViki biçiminde dışa aktarılabilir. Yapıyı, veriyi veya her ikisini de, tablo adları ya da başlıkları dahil olmak üzere dışa aktarabilir.
OpenDocument Hesap Tablosu¶
Yaygın olarak kabul edilen, hesap tablosu verileri için açık standarttır. LibreOffice, OpenOffice, Microsoft Office veya Google Dokümanlar gibi birçok son hesap tablosu programı bu biçimi işleyebilir.
OpenDocument Metni¶
Yaygın olarak kabul edilen metin verileri için yeni standarttır. En son kelime işlemciler (LibreOffice, OpenOffice, Microsoft Word, AbiWord veya KWord gibi) bunu işleyebilir.
PDF¶
Tanıtım amaçları için, düzenlenebilir olmayan PDF sizin için en iyi seçim olabilir.
PHP Dizilimi¶
Seçilen tablo veya veritabanının içerikleri ile çok boyutlu bir dizilimi tanımlayacak bir php dosyası oluşturabilirsiniz.
SQL¶
SQL’e aktarmak veritabanınızı geri yükleme için kullanılabilir, böylece yedekleme için yararlıdır.
‘Oluşturulan sorgunun azami uzunluğu’ seçeneği belgesiz olarak görünüyor. Ancak deneyler gösteriyor ki büyük genişlikte EKLEMELERİ bölüyor bu yüzden her biri verilen bayt sayısından (veya karakterlerden?) büyük olmaz. Böylece dosyayı içe aktarırken, büyük tablolar için “‘max_allowed_packet’ bayttan daha büyük bir paket aldınız” hatasından kaçının.
Veri Seçenekleri¶
Tam eklemeler SQL dökümüne sütun adlarını ekler. Bu parametre dökümünün okunabilirliğini ve güvenilirliğini artırır. Sütun adlarını eklemek dökümün boyutunu artırır, ancak Genişletilmiş eklemeler ile birleştirildiğinde önemsizdir.
Genişletilmiş eklemeler birden çok veri satırını tek bir INSERT sorgusuna birleştirir. Bu, büyük SQL dökümleri için dosya boyutunu önemli ölçüde azaltacaktır, içe aktarıldığında INSERT hızını artırır ve genellikle de önerilir.
Texy!¶
Texy! biçimlendirme biçimi. Örneğini Texy! tanıtımı sitesinde görebilirsiniz.
XML¶
Özel komut dosyaları ile kullanmak için kolayca ayrıştırılabilir.
3.3.0 sürümünde değişti: XML şeması kullanımı 3.3.0 sürümünden itibaren değişti
YAML¶
YAML hem insanlar tarafından okunabilir hem de hesaplama açısından güçlü ( <https://yaml.org> ) olan bir veri serileştirme biçimidir.
Özel Temalar¶
phpMyAdmin üçüncü taraf temalar için destek ile gelir. İlave temaları <https://www.phpmyadmin.net/themes/> adresindeki web sitemizden indirebilirsiniz.
Yapılandırma¶
Temalar $cfg['ThemeManager']
ve $cfg['ThemeDefault']
ile yapılandırılır. ./public/themes/
dizini altında, pmahomme
dizinini ya da temel yapısını silmemelisiniz çünkü bu phpMyAdmin tarafından kullanılan sistem temasıdır. pmahomme
, geriye dönük uyumluluk için ve resimleri ya da css dosyalarını içermeyen tüm temalar için tüm resimleri ve stilleri içerir. Eğer $cfg['ThemeManager']
etkinleştirilirse, ana sayfada sık kullanılan temanızı seçebilirsiniz. Seçilen temanız tanımlama bilgisi içinde saklanacaktır.
Özel tema oluşturma¶
Tema oluşturmak için:
./public/themes/
dizini altında yeni bir alt dizin yapın (örneğin “temanızın_adı”).- dosyaları ve dizinleri pmahomme` dizininden “temanızın_adı” dizinine kopyalayın
- “temanızın_adı/css” dizinindeki css dosyalarını düzenleyin
- yeni resimlerinizi “temanızın_adı/img” dizinine koyun
- “temanızın_adı” dizinindeki
_variables.scss
dosyasını düzenleyin - “temanızın_adı” dizinindeki
theme.json
dosyasını, tema üstverisini (aşağıya bakın) içermesi için düzenleyin - temanızın yeni bir ekran görüntüsünü yapın ve “temanızın_adı/screen.png” adı altında kaydedin
Tema üstverisi¶
4.8.0 sürümünde değişti: 4.8.0 sürümünden önce info.inc.php
dosyasındaki tema üstverileri aktarıldı. Daha kolay ayrıştırmayı (PHP kod işlemeye gerek kalmadan) sağlamak ve ilave özellikleri desteklemek için theme.json
ile değiştirildi.
Tema dizininde tema üstverilerini içeren theme.json
dosyası bulunur. Şu anki oluştuğu hali:
-
name
Temanın görüntülenme adı.
Bu alan zorunludur.
-
version
Tema sürümü, oldukça gelişigüzel olabilir ve phpMyAdmin sürümü ile eşleşmek zorunda değildir.
Bu alan zorunludur.
-
description
Tema tanımı. Bu web sitesinde gösterilecektir.
Bu alan zorunludur.
-
author
Temayı hazırlayanın adı.
Bu alan zorunludur.
-
url
Temayı hazırlayanın web sitesine bağlantı. Oradan destek almak için bir yol olması iyi bir fikirdir.
-
supports
Desteklenen büyük phpMyAdmin sürümlerinin dizilimi.
Bu alan zorunludur.
Örneğin, phpMyAdmin 4.8 ile gelen Orijinal tema tanımı:
{
"name": "Original",
"version": "4.8",
"description": "Original phpMyAdmin theme",
"author": "phpMyAdmin developers",
"url": "https://www.phpmyadmin.net/",
"supports": ["4.8"]
}
Paylaşılan resimler¶
Eğer kendi simgelerinizi ve düğmelerinizi kullanmak istemiyorsanız, “temanızın_adı” içindeki “img” dizinini kaldırın. phpMyAdmin varsayılan simgeleri ve düğmeleri kullanacaktır (sistem teması pmahomme
’dan).
Diğer bilgi kaynakları¶
Basılı Kitap¶
phpMyAdmin’i kullanmak için kusursuz bir kılavuz olan, Marc Delisle tarafından hazırlanmış Mastering phpMyAdmin for Effective MySQL Management (Etkili MySQL Yönetimi için phpMyAdmin’de Ustalaşma) adlı kitaptır. Bu kitap ve diğer resmi olarak uygun bulunmuş phpMyAdmin sitesindeki kitaplar hakkında bilgi alabilirsiniz.
SSS - Sıkça Sorulan Sorular¶
Lütfen phpMyAdmin’nin özelliklerinin ve/veya arayüzünün derinlemesine kapsamı için phpMyAdmin ana sayfasındaki Bağlantı bölümü’müze bir göz atın.
Sunucu¶
1.1 Sunucum belirli eylemler gerektiğinde her seferinde arızalanıyor ya da phpMyAdmin boş sayfa gönderiyor veya tarayıcımda sayfa şifreli karakterlerle doluyor, ne yapabilirim?¶
config.inc.php
dosyanızdaki $cfg['OBGzip']
yönergesini false
ve php yapılandırma dosyanızdaki zlib.output_compression
yönergesini Off
olarak ayarlamayı deneyin.
1.2 phpMyAdmin kullandığımda Apache sunucum arızalanıyor.¶
Önce Apache’nin (ve mümkünse MySQL’in) en son sürümünü denemelisiniz. Eğer sunucunuz arızalanmaya devam ederse, lütfen çeşitli Apache destek gruplarından yardım isteyin.
1.3 (geri alındı).¶
1.4 IIS üzerinde phpMyAdmin kullanımında, hata mesajı alıyorum: “Belirlenen CGI uygulaması HTTP başlıklarının tam bir grubunu döndürmeyerek uygunsuz davrandı …”.¶
Şimdi PHP dağıtımındaki install.txt dosyasını okumayı bırakın. Resmi PHP hata veritabanından bu PHP hata raporu #12061 içindeki son mesaja bir bakın.
1.5 IIS üzerinde phpMyAdmin kullanımında, HTTP ile birçok hata mesajı ve/veya arızalarla yüz yüze kalıyorum.¶
Bu, PHP ISAPI süzgeci ile ilgili bilinen bir sorundur: o kadar sağlam değildir. Lütfen onun yerine tanımlama bilgisi kimlik doğrulaması kipi kullanın.
1.6 PWS’de phpMyAdmin kullanamıyorum: hiçbir şey görüntülenmiyor!¶
Bu bir PWS hatası gibi görünüyor. Filippo Simoncini geçici bir çözüm buldu (şu anda daha iyi bir düzeltme yok): src/Header.php
ve index.php
betiklerinden DOCTYPE
bildirimlerini (2 satır) yorumlayın ya da kaldırın.
1.7 Nasıl gzip dökümü alabilirim ya da CSV olarak dışa aktarabilirim? Bu çalışıyor görünmüyor.¶
Bu özellik platformun (Unix/Windows, Güvenli Kip veya değil, ve benzeri) daha bağımsız olması için gzencode()
PHP işlevi tabanlıdır. Bu yüzden, Zlib desteğine (--with-zlib
) sahip olmak zorundasınız.
1.8 Tabloya metin dosyası ekleyemiyorum ve güvenli kipin etkili olmasıyla ilgili bir hata alıyorum.¶
Gönderilen dosyanız php.ini
içindeki upload_tmp_dir
(genellikle sistem varsayılanı /tmp’dir) değişkeniyle tanımlanan “gönderme dizini” içine PHP tarafından kaydedilir. Aşağıdaki ayarlamayı güvenli kipte çalışan Apache sunucuları için öneririz, dosyaların gönderilmesini oldukça güvenli yaparak etkinleştirmek için:
- göndermeler için ayrı dizin oluşturun: mkdir /tmp/php
- Apache sunucusunun user.group’a sahiplik verin: chown apache.apache /tmp/php
- uygun izni verin: chmod 600 /tmp/php
php.ini
içineupload_tmp_dir = /tmp/php
koyun- Apache’yi yeniden başlatın
1.9 (geri alındı).¶
1.10 Güvenli bir sunucu üzerinde çalışan phpMyAdmin ile dosyaları gönderirken sorun yaşıyorum. Tarayıcım Internet Explorer ve Apache sunucusu kullanıyorum.¶
phpWizard forumunda “Rob M”in önerdiğine göre bu satırı httpd.conf dosyanızın içine ekleyin:
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
Internet Explorer ve SSL arasındaki çoğu sorunu hallettiği görünüyor.
1.11 İçe aktarma sekmesinden bir dosya gönderirken bir ‘open_basedir kısıtlaması’ alıyorum.¶
2.2.4 sürümünden bu yana, phpMyAdmin open_basedir kısıtlamalarıyla sunucuları destekler. Ancak geçici dizin oluşturmanız ve $cfg['TempDir']
olarak yapılandırmanız gerekir. Gönderilmiş dosyalar buraya taşınacaktır ve SQL komutlarınızın yürütülmesinden sonra kaldırılacaktır.
1.12 MySQL root parolamı kaybettim, ne yapabilirim?¶
phpMyAdmin, kullandığınız MySQL sunucusuna karşı kimlik doğrulaması yapar, böylece phpMyAdmin’i parola kaybından kurtarmak için MySQL düzeyinde kurtarmanız gerekir.
MySQL kılavuzu izinleri nasıl sıfırlayacağınızı anlatır.
Eğer barındırma sağlayıcınız tarafından yüklü MySQL sunucusu kullanıyorsanız, parolanızı kurtarmak için lütfen desteği ile irtibata geçin.
1.13 (geri alındı).¶
1.14 (geri alındı).¶
1.15 mysql.user sütun adlarıyla sorunlarım var.¶
Önceki MySQL sürümlerinde, User
ve Password
sütunları user
ve password
olarak adlandırılırdı. Lütfen sütun adlarınızı şu anki standartlarla hizalamak için değiştirin.
1.16 Büyük döküm dosyalarını gönderemiyorum (bellek, HTTP ya da zaman aşımı sorunları).¶
2.7.0 sürümünden başlayarak, içe aktarma motoru yeniden yazıldı ve bu sorunlar meydana gelmemelidir. Eğer mümkünse, yeni içe aktarma özelliklerinin avantajından yararlanmak için phpMyAdmin’inizi en son sürüme yükseltin.
Kontrol edilecek (veya kontrol etmesi için anamakine sağlayıcısına sorulacak) ilk şeyler php.ini
yapılandırma dosyası içindeki max_execution_time
, upload_max_filesize
, memory_limit
ve post_max_size
değerleridir. Tüm bu ayarlar PHP tarafından işlenen ve gönderilebilen en fazla veri boyutunu sınırlandırır. Lütfen post_max_size
değerinin upload_max_filesize
değerinden daha büyük olması gerektiğini unutmayın. Eğer gönderdiğiniz çok büyükse veya barındırma hizmeti sağlayıcınız ayarları değiştirmeye isteksizse birkaç geçici çözüm mevcut:
$cfg['UploadDir']
özelliğine bakın. Bu, scp, FTP veya sık kullandığınız dosya aktarım yönteminizle bir dosyayı göndermenize izin verir. phpMyAdmin ondan sonra dosyaları geçici dizinden içe aktarabilir. Daha fazla bilgi bu belgenin Yapılandırma bölümünde mevcuttur.Göndermeden önce dosyaları bölmek için yardımcı uygulama (BigDump gibi) kullanmak. Bunu ya da herhangi üçüncü taraf uygulamaları destekleyemiyoruz ama kullanıcıların bununla başarılı olduğundan bilgimiz var.
Eğer kabuk (komut satırı) erişiminiz varsa, doğrudan dosyaları içe aktarmak için MySQL kullanın. Bunu MySQL içinden “source” komutunu vererek yapabilirsiniz:
source filename.sql;
1.17 phpMyAdmin hangi Veritabanı sürümlerini destekliyor?¶
MySQL için 5.5 ve daha yeni sürümleri desteklenir. Daha eski MySQL sürümleri için İndirmeler sayfamız daha eski phpMyAdmin sürümlerini (desteklenmiyor olabilir) sunar.
MariaDB için 5.5 ve daha yeni sürümleri desteklenir.
1.17a MySQL sunucusuna bağlanamıyorum. Her zaman hata mesajı döndürüyor, “İstemci, sunucu tarafından istenen kimlik doğrulaması protokolünü desteklemiyor; MySQL istemcisinin yükseltilmesi düşünülmeli”¶
MySQL’e eski bir MySQL istemci kütüphanesiyle erişmeyi denediniz. MySQL istemci kütüphanesinin sürümü phpinfo() çıktınızda kontrol edilebilir. Genelde, bu, sunucunuz gibi en az aynı ufak sürüme sahip olmalıdır - 1.17 phpMyAdmin hangi Veritabanı sürümlerini destekliyor? içinde bahsedildiği gibi. Bu soruna genel olarak MySQL sürümü 4.1 veya daha yenisi neden olur. MySQL kimlik doğrulaması adreslemesini değiştirdi ve PHP’niz eski yöntemi kullanmaya çalışıyor. Uygun çözüm, MySQL kurulumuyla eşleşen, uygun istemci kütüphanesi ile mysqli uzantısını kullanmaktır. Daha fazla bilgi (ve birkaç geçici çözüm) MySQL Belgesinde yer almaktadır.
1.18 (geri alındı).¶
1.19 “Görüntüleme ilişkileri” özelliğini çalıştıramıyorum çünkü betik, kullandığım yazı tipi yüzünü bilmiyor görünüyor!¶
Bu özellik için kullandığımız TCPDF kütüphanesi yazı tipi yüzlerini kullanmak için bazı özel dosyalar gerektirir. Lütfen bu dosyaları yapmak için TCPDF kılavuzuna başvurun.
1.20 Eksik mysqli ve mysql uzantıları ile ilgili bir hata alıyorum.¶
Bir MySQL sunucusuna bağlanmak için PHP’nin “MySQL uzantısı” olarak adlandırılan MySQL işlevleri grubuna ihtiyacı vardır. Bu uzantı PHP dağıtımının parçası (birlikte derlenmiş) olabilir, ayrıca dinamik olarak yüklenmesi gerekebilir. Adı büyük olasılıkla mysqli.so veya php_mysqli.dll’dir. phpMyAdmin uzantıyı yüklemeyi denemiştir ama başarısız olmuştur. Genellikle, sorun “PHP-MySQL” veya benzer bir şey adında bir yazılım paketini yükleyerek çözülür.
MySQL uzantıları olarak PHP’nin sağladığı iki arayüz vardı - mysql
ve mysqli
. mysql
arayüzü PHP 7.0 sürümünde kaldırıldı.
Bu soruna ayrıca php.ini
içindeki yanlış yollar ya da yanlış php.ini
kullanımı neden olabilir.
extension_dir
dizinini işaret eden klasör içinde uzantı dosyalarının olduğundan ve php.ini
dosyanız içinde karşılık gelen satırların derleme dışı bırakılmadığından emin olun (şu anki kurulumu kontrol etmek için phpinfo()
kullanabilirsiniz):
[PHP]
; Directory in which the loadable extensions (modules) reside.
extension_dir = "C:/Apache2/modules/php/ext"
php.ini
dosyası birkaç yerden yüklenebilir (özellikle Windows’ta), bu yüzden lütfen doğru olanı güncellediğinizi kontrol edin. Eğer Apache kullanılıyorsa, PHPIniDir
yönergesini kullanarak bu dosya için belirli bir yol kullanmasını söyleyebilirsiniz:
LoadModule php7_module "C:/php7/php7apache2_4.dll"
<IfModule php7_module>
PHPIniDir "C:/php7"
<Location>
AddType text/html .php
AddHandler application/x-httpd-php .php
</Location>
</IfModule>
Bazı nadir durumlarda bu soruna ayrıca MySQL uzantılarının yüklenmesini engelleyen PHP’de yüklü diğer uzantılar neden olabilir. Eğer başka bir şey başarısız olursa, diğer veritabanları için uzantıları php.ini
dosyasından derleme dışı bırakmayı deneyebilirsiniz.
1.21 Unix altında PHP’nin CGI sürümünü çalıştırıyorum ve kimlik doğ. kullanarak oturum açamıyorum.¶
php.ini
içinde mysql.max_links
değerini 1’den büyüğe ayarlayın.
1.22 “Metin dosyası yeri” alanını göremiyorum bu yüzden gönderemiyorum.¶
Bu büyük ihtimalle php.ini
içinden kaynaklanıyor, file_uploads
parametreniz “on” olarak ayarlı değil.
1.23 Win32 makinede MySQL çalıştırıyorum. Her defasında yeni bir tablo oluşturduğumda tablo ve sütun adları küçük harfe değiştiriliyor!¶
Bu oluyor çünkü MySQL’in Win32 sürümü içinde lower_case_table_names
yönergesi varsayılanı 1 (AÇIK
). Yönergeyi basitçe 0’a (KAPALI
) değiştirerek bu davranışı değiştirebilirsiniz: Sadece Windows dizininiz içinde bulunması gereken my.ini
dosyanızı düzenleyin ve aşağıdaki satırı [mysqld] grubuna ekleyin:
set-variable = lower_case_table_names=0
Not
Büyük küçük harfe duyarlı bir dosya sisteminde bu değişkeni –lower-case-table-names=0 ile 0’a zorlamak ve farklı büyük küçük harf kullanarak MyISAM tablo adlarına erişmek, indeks bozulmasıyla sonuçlanabilir.
Sonra, dosyayı kaydedin ve MySQL hizmetini yeniden başlatın. Sorgu kullanarak bu yönergenin değerini her zaman kontrol edebilirsiniz
SHOW VARIABLES LIKE 'lower_case_table_names';
1.24 (geri alındı).¶
1.25 Windows XP üzerinde mod_gzip-1.3.26.1a ile birlikte Apache çalıştırıyorum ve sorunlar yaşıyorum, mesela SQL sorgusu çalıştırdığımda ki tanımsız değişkenler gibi.¶
Jose Fandos’tan bir ipucu: httpd.conf içinde aşağıdaki iki satıra şöyle bir açıklama koyun:
# mod_gzip_item_include file \.php$
# mod_gzip_item_include mime "application/x-httpd-php.*"
Apache (Windows) üzerinde mod_gzip sürümü olarak PHP betikleri kullanma sorun olur. Elbette Apache’yi yeniden başlatmak zorundasınız.
1.26 phpMyAdmin’i henüz IIS’nin belge kök klasörü içine kurdum ama phpMyAdmin’i çalıştırmayı denediğimde “Belirtilmiş girdi dosyası yok” hatası alıyorum.¶
Bu izin sorunudur. Phpmyadmin klasörüne sağ tuşla tıklayın ve özellikleri seçin. Güvenlik sekmesi altında, “Düzenle -> Ekle -> Gelişmiş -> Şimdi Bul” ve listeden “IUSR” kullanıcısını seçin. Şimdi bunların izinlerini ayarlayın ve bunun çalışması gerekir.
1.27 Çok büyük bir sayfa görüntülemek istediğimde boş bir sayfa alıyorum (örn. bir yığın tabloyla db_structure.php).¶
Buna, GZIP çıktı arabelleklemesi etkinleştirildiğinde meydana gelen bir PHP hatası neden olmuştur. Eğer kapatırsanız (config.inc.php
içinde $cfg['OBGzip']
ayarlayarak), çalışmalıdır. Bu hata PHP 5.0.0’da düzeltilmiştir.
1.28 MySQL sunucum bazen sorguları reddediyor ve ‘Errorcode: 13’ mesajını döndürüyor. Bu ne anlama geliyor?¶
lower_case_table_names
değeri 1’e ayarlı olmasına rağmen veritabanı / tablo adlarında büyük harfli karakterler olduğunda bir MySQL hatasından dolayı bu olabiliyor. Bunu düzeltmek için bu yönergeyi kapatın, tüm veritabanı ve tablo adlarını küçük harfe dönüştürün ve tekrar açın. Alternatif olarak MySQL 3.23.56 / 4.0.11-gamma ile başlayan mevcut bir hata düzeltmesi vardır.
1.29 Bir tablo oluşturduğumda ya da sütun değiştirdiğimde, bir hata alıyorum ve sütunlar çoğalıyor.¶
PHP’nin .php dosyalarını yorumlama sorunlarının olduğu bir şekilde Apache’yi yapılandırmak mümkün.
Bu sorun iki farklı (ve çakışan) yönergeler grubu kullanıldığında meydana gelir:
SetOutputFilter PHP
SetInputFilter PHP
ve
AddType application/x-httpd-php .php
Gördüğümüz durumda, /etc/httpd/conf/addon-modules/php.conf
içinde diğer grup varken, bir grup yönerge /etc/httpd/conf/httpd.conf
içindeydi. Önerilen yol AddType
ile, bu yüzden sadece satırların ilk grubunu derleme dışı bırakın ve Apache’yi yeniden başlatın:
#SetOutputFilter PHP
#SetInputFilter PHP
1.31 phpMyAdmin hangi PHP sürümlerini destekliyor?¶
4.5 yayımından bu yana phpMyAdmin sadece PHP 5.5 ve daha yenisini destekler. 4.1 yayımından bu yana phpMyAdmin sadece PHP 5.3 ve daha yenisini destekler. PHP 5.2 için 4.0.x yayımlarını kullanabilirsiniz.
phpMyAdmin 4.6 sürümünden bu yana PHP 7, 4.6.5 sürümünden bu yana PHP 7.1, 4.7.4 sürümünden bu yana PHP 7.2 desteklenmektedir.
HHVM, phpMyAdmin 4.8 sürümüne kadar desteklenir.
5.0 yayımından bu yana phpMyAdmin sadece PHP 7.1 ve daha yenisini destekler. 5.2 yayımından bu yana phpMyAdmin sadece PHP 7.2 ve daha yenisini destekler. 6.0 yayımından bu yana phpMyAdmin sadece PHP 8.1 ve daha yenisini destekler.
1.32 Apache IIS ile >HTTP kimlik doğrulaması kullanabilir miyim?¶
Evet. Bu işlem IIS 5.1 altında ISAPI kipinde PHP 4.3.9, phpMyAdmin 2.6.1 ile denendi.
php.ini
dosyanız içinde,cgi.rfc2616_headers = 0
olarak ayarlayınWeb Sitesi Özellikleri -> Dizin Güvenliği -> İsimsiz Erişim
ileti kutusunda,İsimsiz erişim
onay kutusunu işaretleyin ve herhangi bir diğer onay kutularından işaretleri kaldırın (yani eğer etkinleştirilirse,Basit kimlik doğrulaması
,Bütünleşik Windows kimlik doğrulaması
veÖzet kimlik doğrulaması
işaretlerini kaldırın).TAMAM
’a tıklayın.Özel Hatalar
içinde401;1
’den401;5
’e kadar olan aralığı seçin veVarsayılana Ayarla
düğmesine tıklayın.
Ayrıca bkz.
1.33 (geri alındı).¶
1.34 Doğrudan bir veritabanına ya da tablo sayfalarına erişebilir miyim?¶
Evet. İlk çalıştırma, http://sunucu/phpMyAdmin/index.php?server=X&db=database&table=table&target=script
gibi bir URL kullanabilirsiniz. Sunucu
için config.inc.php
içindeki sayısal anamakine indeksini ($i
olan) ifade eden sunucu sayısı kullanabilirsiniz. Tablo ve betik kısımları isteğe bağlıdır.
Eğer http://sunucu/phpMyAdmin/veritabanı[/table][/script]
gibi bir URL istiyorsanız, bazı yapılandırmalar yapmanız gerekir. Aşağıdaki satırlar sadece Apache web sunucusu için uygulanır. Önce, Apache genel yapılandırmasıyla birlikte bazı özellikleri etkinleştirdiğinizden emin olun. phpMyAdmin’nin kurulu olduğu dizin için Options SymLinksIfOwnerMatch
ve AllowOverride FileInfo
parametrelerini etkinleştirmiş olmanız gerekir ve mod_rewrite’ın etkinleştirilmiş olmasına ihtiyacınız vardır. Ondan sonra sadece phpMyAdmin kurulumunun (içinde bulunduğu dizin adını değiştirmeyi unutmayın) kök klasöründe aşağıdaki .htaccess dosyasını oluşturmaya ihtiyacınız var:
RewriteEngine On
RewriteBase /path_to_phpMyAdmin
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-z_]+\.php)$ index.php?db=$1&table=$2&target=$3 [R]
RewriteRule ^([a-zA-Z0-9_]+)/([a-z_]+\.php)$ index.php?db=$1&target=$2 [R]
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ index.php?db=$1&table=$2 [R]
RewriteRule ^([a-zA-Z0-9_]+)$ index.php?db=$1 [R]
5.1.0 sürümünde değişti: phpMyAdmin 5.1.0’da target
parametresini kullanma desteği kaldırıldı. Bunun yerine route
parametresini kullanın.
1.35 Apache CGI ile HTTP kimlik doğrulaması kullanabilir miyim?¶
Evet. Ancak aşağıdaki yeniden yazma kuralını kullanarak kimlik doğrulaması değişkenini CGI’a geçirmeniz gerekir:
RewriteEngine On
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
1.36 “500 İç Sunucu Hatası” hatası alıyorum.¶
Bunun için çok açıklama olabilir ve sunucunuzun hata günlük dosyasına bir bakın, bir ipucu verebilir.
1.37 Farklı makinelerde küme olarak phpMyAdmin çalıştırıyorum ve tanımlama bilgisi kimlik doğrulamasında parola şifreleme çalışmıyor.¶
Eğer küme farklı yapılardan oluşuyorsa, şifreleme/çözme için PHP kodu doğru çalışmayacaktır. Bunun nedeni kod içinde işlevleri paketleme/açma işlevlerinin kullanımıdır. Tek çözüm bu durumda iyi çalışan openssl uzantısı kullanmaktır.
1.38 Suhosin etkinleştirilen bir sunucuda phpMyAdmin kullanabilir miyim?¶
Evet ama Suhosin’in varsayılan yapılandırma değerlerinin bazı işlemlerle sorunlara neden olduğu bilinir, örneğin çok sütun ile ve primary key yoksa veya metinsel primary key ile bir tabloyu düzenlediğinizde.
Suhosin yapılandırması bazı durumlarda bozukluklara yol açabilir ve tek HTTP isteğinde büyük miktarlarda sütunların aktarılması gereken benzeri bir uygulama olan phpMyAdmin gibi tamamen önleyemez, Suhosin önlemeyi denediği şey neyse. Genel olarak tüm suhosin.request.*
, suhosin.post.*
ve suhosin.get.*
yönergeleri phpMyAdmin kullanılabilirliği üzerinde olumsuz etkilere sahip olabilir. Hangi sınırın değişken düşümlerine neden olduğunu her zaman hata günlüklerinizde bulabilirsiniz, böylece sorunu teşhis edebilir ve eşleşen yapılandırma değişkenlerini ayarlayabilirsiniz.
Çoğu Suhosin yapılandırma seçenekleri için varsayılan değerler pek çok senaryoda çalışacaktır, ancak en az aşağıdaki parametreleri ayarlamak isteyebilirsiniz:
- suhosin.request.max_vars artırılmalıdır (örn. 2048)
- suhosin.post.max_vars artırılmalıdır (örn. 2048)
- suhosin.request.max_array_index_length artırılmalıdır (örn. 256)
- suhosin.post.max_array_index_length artırılmalıdır (örn. 256)
- suhosin.request.max_totalname_length artırılmalıdır (örn. 8192)
- suhosin.post.max_totalname_length artırılmalıdır (örn. 8192)
- suhosin.get.max_value_length artırılmalıdır (örn. 1024)
- suhosin.sql.bailout_on_error etkisizleştirilmiş olması gerekir (varsayılan)
- suhosin.log.* SQL ‘e dahil edilmemeli, yoksa büyük yavaşlama yaşarsınız
- suhosin.sql.union etkisizleştirilmek zorundadır (varsayılan olan).
- suhosin.sql.multiselect etkisizleştirilmek zorundadır (varsayılan olan).
- suhosin.sql.comment etkisizleştirilmek zorundadır (varsayılan olan).
Güvenliği daha da artırmak için ayrıca bu değişiklikleri öneririz:
- suhosin.executor.include.max_traversal yerel dosya ek saldırılarına karşı bir azaltıcı etken olarak etkinleştirilmelidir. Bunu ReCaptcha kütüphanesi ile kullanılan
../
gibi 2’ye ayarlanmasını öneririz. - suhosin.cookie.encrypt etkinleştirilmelidir.
- suhosin.executor.disable_emodifier etkinleştirilmelidir.
Aynı zamanda $cfg['SuhosinDisableWarning']
kullanarak uyarıyı etkisizleştirebilirsiniz.
1.39 Https yoluyla bağlanmayı denediğimde, oturum açabiliyorum ama ondan sonra bağlantım http’ye yeniden geri yönlendiriliyor. Bu davranışa ne neden olabilir?¶
Buna, sitenin https kullandığı bilgisine sahip olmayan PHP betikleri gerçeği neden olur. Kullanılan web sunucusuna bağlı olarak, buna erişmek için kullanılan URL ve şema hakkkında PHP’nin bilgi almasına izin vernek için bunu yapılandırmalısınız.
Örneğin Apache’de yapılandırma içinde SSLOptions
ve StdEnvVars
yönergelerini etkinleştirdiğinizden emin olun.
Ayrıca bkz.
1.40 Apache ters proksi yoluyla phpMyAdmin’e eriştiğimde, tanımlama bilgisiyle oturum açma çalışmıyor.¶
Tanımlama bilgisi kimlik doğrulaması kullanabilmek için Apache, ayarlı tanımlama bilgisi üst bilgilerini yeniden yazacağını bilmek zorundadır. Apache 2.2 belgelerinden örnek:
ProxyPass /mirror/foo/ http://backend.example.com/
ProxyPassReverse /mirror/foo/ http://backend.example.com/
ProxyPassReverseCookieDomain backend.example.com public.example.com
ProxyPassReverseCookiePath / /mirror/foo/
Not: eğer arka uç url http://sunucu/~kullanici/phpmyadmin
gibi görünüyorsa, ProxyPassReverse* satırlarındaki tilda (~), %7E olarak kodlanmış url olmak zorundadır. Bu phpmyadmin’e özgü değildir, sadece Apache’nin davranışıdır.
ProxyPass /mirror/foo/ http://backend.example.com/~user/phpmyadmin
ProxyPassReverse /mirror/foo/ http://backend.example.com/%7Euser/phpmyadmin
ProxyPassReverseCookiePath /%7Euser/phpmyadmin /mirror/foo
1.41 Veritabanını görüntülediğimde ve yetkilerini görmek için sorduğumda, bilinmeyen bir sütunla ilgili hata alıyorum.¶
MySQL sunucusunun yetki tabloları güncel değil, sunucuda mysql_upgrade komutunu çalıştırmanız gerekir.
1.42 Robot’ları phpMyAdmin’e erişimini nasıl önleyebilirim?¶
Kullanıcı tanıtıcı alanı tabanlı erişimi süzmek için .htaccess dosyasına çeşitli kuralları ekleyebilirsiniz. Bu kurtulmak için oldukça kolaydır ama en azından bazı robot’ların kurulumunuza erişimini önleyebilir.
RewriteEngine on
# Allow only GET and POST verbs
RewriteCond %{REQUEST_METHOD} !^(GET|POST)$ [NC,OR]
# Ban Typical Vulnerability Scanners and others
# Kick out Script Kiddies
RewriteCond %{HTTP_USER_AGENT} ^(java|curl|wget).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(libwww-perl|curl|wget|python|nikto|wkito|pikto|scan|acunetix).* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|HTTrack|clshttp|archiver|loader|email|harvest|extract|grab|miner).* [NC,OR]
# Ban Search Engines, Crawlers to your administrative panel
# No reasons to access from bots
# Ultimately Better than the useless robots.txt
# Did google respect robots.txt?
# Try google: intitle:phpMyAdmin intext:"Welcome to phpMyAdmin *.*.*" intext:"Log in" -wiki -forum -forums -questions intext:"Cookies must be enabled"
RewriteCond %{HTTP_USER_AGENT} ^.*(AdsBot-Google|ia_archiver|Scooter|Ask.Jeeves|Baiduspider|Exabot|FAST.Enterprise.Crawler|FAST-WebCrawler|www\.neomo\.de|Gigabot|Mediapartners-Google|Google.Desktop|Feedfetcher-Google|Googlebot|heise-IT-Markt-Crawler|heritrix|ibm.com\cs/crawler|ICCrawler|ichiro|MJ12bot|MetagerBot|msnbot-NewsBlogs|msnbot|msnbot-media|NG-Search|lucene.apache.org|NutchCVS|OmniExplorer_Bot|online.link.validator|psbot0|Seekbot|Sensis.Web.Crawler|SEO.search.Crawler|Seoma.\[SEO.Crawler\]|SEOsearch|Snappy|www.urltrends.com|www.tkl.iis.u-tokyo.ac.jp/~crawler|SynooBot|crawleradmin.t-info@telekom.de|TurnitinBot|voyager|W3.SiteSearch.Crawler|W3C-checklink|W3C_Validator|www.WISEnutbot.com|yacybot|Yahoo-MMCrawler|Yahoo\!.DE.Slurp|Yahoo\!.Slurp|YahooSeeker).* [NC]
RewriteRule .* - [F]
1.43 Yüzlerce sütun içeren tablomun yapısını neden görüntüleyemiyorum?¶
Çünkü PHP’nizin memory_limit
değeri çok düşük; php.ini
içinde ayarlayın.
1.44 phpMyAdmin’in diskteki yüklü boyutunu nasıl düşürebilirim?¶
Bazı kullanıcılar phpMyAdmin yükleme boyutunu düşürebilmeyi istedi. Bu önerilmez ve üzerinde eksik özellikler karışıklığa neden olabilir, ama yapılabilir. Kaldırıldığında hassas bir şekilde küçültmeye yarayan işlevsellik ve dosyalar listesi:
./locale/
klasörü, veya kullanılmayan alt klasörleri (arayüz çevirileri)- Varsayılan tema pmahomme dışında
./public/themes/
içindeki kullanılmayan temalar. ./libraries/language_stats.inc.php
(çeviri istatistikleri)./doc/
(belgeler)./setup/
(kur betiği)./examples/
(yapılandırma örnekleri)./sql/
(gelişmiş işlevsellikleri yapılandırmak için SQL betikleri)./js/src/
(./js/dist/ yeniden oluşturulacak kaynak dosyalar)./js/global.d.ts
JS türü bildirim dosyası- rm -rv satıcı/tecnickcom/tcpdf && composer dump-autoload –no-interaction –optimize –dev komutunu çalıştırın (PDF’ye dışa aktarma)
- rm -rv satıcı/williamdes/mariadb-mysql-kbs && composer dump-autoload –no-interaction –optimize –dev komutunu çalıştırın (MariaDB ve MySQL belgelerine harici bağlantılar)
- rm -rv satıcı/kod-lts/u2f-php-server && composer dump-autoload –no-interaction –optimize –dev komutunu çalıştırın (U2F ikinci etkenli kimlik doğrulaması)
- rm -rv satıcı/pragmarx/* && composer dump-autoload –no-interaction –optimize –dev komutunu çalıştırın (2FA ikinci etkenli kimlik doğrulaması)
- rm -rv satıcı/bacon/bacon-qr-code && composer dump-autoload –no-interaction –optimize –dev komutunu çalıştırın (2FA ikinci etkenli kimlik doğrulaması için QR kodu oluşturma)
1.45 Oturum açmaya çalışırken bilinmeyen kimlik doğrulama yöntemi caching_sha2_password hakkında bir hata iletisi alıyorum¶
MySQL sürüm 8 veya daha yenisini kullanarak oturum açarken, şu gibi bir hata iletisi ile karşılaşabilirsiniz:
mysqli_real_connect(): Sunucu, istemci için bilinmeyen kimlik doğrulama yöntemi istedi [caching_sha2_password]
mysqli_real_connect(): (HY000/2054): Sunucu, istemci için bilinmeyen kimlik doğrulama yöntemi istedi
Bu hata, PHP ve MySQL arasındaki sürüm uyumluluk sorunu yüzündendir. MySQL projesi yeni bir kimlik doğrulama yöntemini (bizim denemelermiz bunun sürüm 8.0.11 ile başladığını göstermektedir) tanıttı ancak PHP bu kimlik doğrulama yöntemini kullanma yeteneğini içermiyor. PHP, bunun PHP 7.4 sürümünde düzeltildiğini bildiriyor.
Bunu yaşayan kullanıcılara PHP kurulumlarını yükseltmeleri tavsiye edilir, ancak geçici bir çözümü var. MySQL kullanıcı hesabınız, şöyle bir komut ile eski kimlik doğrulamasını kullanmak için ayarlanabilir
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'PASSWORD';
Yapılandırma¶
2.1 “Uyarı: Başlık bilgisi eklenemiyor - … tarafından başlıklar zaten gönderildi” hata mesajı görüntüleniyor, sorun nedir?¶
config.inc.php
dosyanızı düzenleyin ve <?php
etiketinden önce ne başında ve ?>
etiketinden sonra ne de sonunda hiçbir şey (yani boş satırlar, boşluklar, karakterler olmasın…) olmadığından emin olun.
2.2 phpMyAdmin, MySQL’e bağlanamıyor. Yanlış olan nedir?¶
Ya PHP ayarınızla ile ilgili bir hata vardır ya da kullanıcı adınız/parolanız yanlıştır. mysql_connect kullanan küçük bir betik yapmayı deneyin ve eğer çalışırsa görürsünüz. Eğer çalışmazsa, PHP içinde MySQL desteğini bile derlememiş olabilirsiniz.
2.3 “Uyarı: MySQL Bağlantısı Başarısız: Yerel MySQL sunucusuna ‘/tmp/mysql.sock’ (111) soketi aracılığıyla bağlanılamıyor…” hata mesajı görüntüleniyor. Ne yapabilirim?¶
Hata iletisi ayrıca şu olabilir: Hata #2002 - Sunucu yanıt vermiyor (veya yerel MySQL sunucusunun soketi şu anda doğru olarak yapılandırılmadı).
Önce, MySQL tarafından kullanılan soketi belirlemeniz gerekir. Bunu yapmak için sunucunuza bağlanın ve MySQL bin dizinine gidin. Bu dizinde mysqladmin adında bir dosya olmalı. ./mysqladmin variables
yazın ve bu size MySQL sunucunuz hakkında bir takım bilgi vermeli, soket dahil (/tmp/mysql.sock, örneğin). Ayrıca bağlantı bilgisi için ISP’nize sorabilirsiniz ya da eğer kendinizde barındırıyorsanız, ‘mysql’ komut satırı istemcisinden bağlanın ve bağlantı türünü ve soketi ya da bağlantı noktasını almak için ‘status’ yazın.
Ondan sonra, PHP’ye bu soketi kullanmasını söylemeniz gerekir. Bunu php.ini
içindeki tüm PHP için ya da sadece config.inc.php
içinde sadece phpMyAdmin için yapabilirsiniz. Örneğin: $cfg['Servers'][$i]['socket']
Lütfen aynı zamanda bu dosyanın izinlerinin, web sunucunuz tarafından okunabilir olması için izin verdiğinden emin olun.
RedHat-Box’ımda MySQL soketi /var/lib/mysql/mysql.sock. php.ini
dosyanızın içinde bir satır bulacaksınız
mysql.default_socket = /tmp/mysql.sock
şuna değiştirin
mysql.default_socket = /var/lib/mysql/mysql.sock
Ondan sonra apache’yi yeniden başlatın ve çalışacaktır.
Ayrıca MySQL belgelemesinin ilgili bölümüne bir gözatın.
2.4 phpMyAdmin’i çalıştırmayı denediğimde tarayıcımda hiçbir şey görüntülenmiyor, ne yapabilirim?¶
phpMyAdmin yapılandırma dosyasında $cfg['OBGzip']
yönergesini ayarlamayı deneyin. Bu bazen yardımcı olur. Ayrıca PHP sürüm numarasına bir göz atın: eğer “b” veya “alpha” içeriyorsa, PHP’nin deneme sürümünü çalıştırıyorsunuz anlamına gelir. Bu o kadar iyi bir fikir değildir, lütfen düz gözden geçirmeye yükseltin.
2.5 Her defasında satır eklemek veya değiştirmek ya da bir veritabanı veya bir tablo kaldırmak istiyorum, bir hata 404 (sayfa bulunamadı) görüntüleniyor veya HTTP ya da tanımlama bilgisi kimlik doğrulaması ile, tekrar oturum açmak için soruyor. Yanlış olan nedir?¶
Web sunucusu kurulumunuzun ya PHP_SELF ya da REQUEST_URI değişkenlerini doğru doldurduğunu kontrol edin.
Eğer phpMyAdmin’i ters proksi arkasında çalıştırıyorsanız, kurulumunuz ile uyuşması için lütfen phpMyAdmin yapılandırma dosyasındaki $cfg['PmaAbsoluteUri']
yönergesini ayarlayın.
2.6 Localhost’um için bağlantı noktası yönlendirilmiş bir anamakinedeki MySQL Sunucusuna erişmeyi denerken “Şu kullanıcı için erişim reddedildi: ‘root@localhost’ (Parola kullanıyor: EVET)” hatası alıyorum.¶
Başka bir anamakineye bağlantı noktası yönlendirmesi yoluyla yeniden yönlendirdiğiniz localhost’unuzda bir bağlantı noktası kullanırken, MySQL beklendiği gibi localhost’u çözmüyor. Erik Wasser şöyle açıklıyor: Çözümü: eğer anamakineniz “localhost” ise MySQL (komut satırı aracı mysql de) her zaman bir şeyleri hızlandırmak için soket bağlantısı kullanmayı dener. Ve bu yapılandırma bağlantı noktası yönlendirmesiyle çalışmaz. Anamakine adı olarak “127.0.0.1” girerseniz, her şey doğru olur ve MySQL TCP bağlantısı kullanır.
2.7 Temaların kullanımı ve oluşturulması¶
Bakınız Özel Temalar.
2.8 “Eksik parametreler” hataları alıyorum, ne yapabilirim?¶
İşte kontrol etmeniz için birkaç nokta:
config.inc.php
içinde$cfg['PmaAbsoluteUri']
yönergesini boş bırakmayı deneyin. Ayrıca bakınız 4.7 Kimlik doğrulaması penceresi birden fazla görüntüleniyor, neden?.- Belki bozuk PHP kurulumuna sahipsiniz ya da Zend Optimizer’ınızı yükseltmeniz gerekli. <https://bugs.php.net/bug.php?id=31134> adresine bakın.
- Eğer ini yönergesi
varfilter.max_request_variables
ile Hardened PHP kullanıyorsanız, varsayılana (200) ayarlayın ya da başka bir düşük değere, eğer tablonuz yüksek sayıda sütuna sahipse, bu hatayı alabilirsiniz. Ona göre bu ayarı ayarlayın. (Klaus Dorninger’e ipucu için teşekkürler). php.ini
yönergesiarg_separator.input
içindeki “;” değeri bu hataya neden olacaktır. Onu “&;” ile değiştirin.- Eğer Suhosin kullanıyorsanız, istek sınırlarını arttırmak isteyebilirsiniz.
php.ini
içindekisession.save_path
yönergesinde belirtilmiş dizin mevcut değil ya da salt-okunur (buna PHP yükleyicisi içindeki hata neden olabilir).
2.9 Gönderme ilerlemesi çubuğu görme¶
Göndermeleriniz sırasında ilerleme çubuğunu görebilmeniz için sunucunuz uploadprogress’in uzantısına sahip olmak zorunda ve PHP 5.4.0 veya üzerini çalıştırıyor olmak zorundasınız. Dahası PHP’nizde JSON uzantısı etkinleştirilmiş olmak zorundadır.
Eğer PHP 5.4.0 veya yükseğini kullanılıyorsa, php.ini
dosyanız içindeki session.upload_progress.enabled
’ı, 1
olarak ayarlamak zorundasınız. Ancak, phpMyAdmin sürüm 4.0.4’ten başlayarak oturum tabanlı gönderme ilerlemesi sorunlu davranışlarından dolayı geçici olarak devre dışı bırakıldı.
2.10 Rastgele bayt dizgisi nasıl oluşturulur¶
Kriptografik kullanıma uygun bir rastgele bayt dizgisi oluşturmanın bir yolu, ‘random_bytes <https://www.php.net/tr/random_bytes>’_ :term:’PHP’ işlevini kullanmaktır. Bu işlev bir ikili dizgi döndürdüğünden, döndürülen değer, kopyalanmadan önce yazdırılabilir biçime dönüştürülmelidir.
Örneğin, $cfg['blowfish_secret']
yapılandırma yönergesi 32 bayt uzunluğunda bir dizgi gerektirir. Bu dizginin onaltılık gösterimini oluşturmak için aşağıdaki komut kullanılabilir.
php -r 'echo bin2hex(random_bytes(32)) . PHP_EOL;'
Yukarıdaki örnek şuna benzer bir çıktı verecektir:
f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851
Ve ardından bu onaltılık değer yapılandırma dosyasında kullanılabilir.
$cfg['blowfish_secret'] = sodium_hex2bin('f16ce59f45714194371b48fe362072dc3b019da7861558cd4ad29e4d6fb13851');
sodium_hex2bin işlevi burada onaltılık değeri ikili biçime dönüştürmek için kullanılır.
Bilinen kısıtlamalar¶
3.1 HTTP kimlik doğrulaması kullanıldığında, oturumu kapatan bir kullanıcı aynı takma ad ile tekrar oturum açamaz.¶
Bu, phpMyAdmin tarafından kullanılan kimlik doğrulaması mekanizmasıyla (protokol) ilgilidir. Bu sorunu atlatmak için: sadece tüm açılmış tarayıcı pencerelerini kapatın ve ondan sonra phpMyAdmin’e geri dönün. Tekrar oturum açabilmelisiniz.
3.2 Sıkıştırılmış kipte büyük bir tablo dökümlendiğinde, bellek sınırı hatası veya zaman sınırı hatası alıyorum.¶
Sıkıştırılmış dökümler bellek içinde yapılır ve bu php’nin bellek sınırlamasından dolayı kısıtlıdır. gzip/bzip2 dışa aktarmaları için 2.5.4’ten bu yana $cfg['CompressOnFly']
(varsayılan olarak etkinleştirildi) kullanılarak bunun üstesinden gelinebilir. zip dışa aktarmaları bu yolla baş edemez, bu yüzden büyük döküm için zip dosyalarına ihtiyacınız olursa, başka bir yol kullanmak zorundasınız.
3.3 InnoDB tablolar ile, tablo veya sütunu yeniden adlandırdığımda, dış anahtar ilişkilerini kaybettim.¶
Bu bir InnoDB hatasıdır, <https://bugs.mysql.com/bug.php?id=21704> adresine bakın.
3.4 MySQL sunucusu dağıtıma ile paketlenmiş mysqldump aracıyla oluşturduğum dökümleri içe aktaramamaktayım.¶
Sorun mysqldump
’ın eski bir sürümünün oluşturduğu şunun gibi geçersiz açıklamalar:
-- MySQL dump 8.22
--
-- Host: localhost Database: database
---------------------------------------------------------
-- Server version 3.23.54
Kodun geçersiz kısmı mysqldump ile oluşturulmuş her döküm içinde görünen, çizgilerden yapılmış yatay satırdır. Eğer dökümünüzü çalıştırmak istiyorsanız, geçerli MySQL içerisine döndürmek zorundasınız. Bu, ilk iki çizgiden sonra boşluk ya da önce # eklemek zorundasınız anlamına gelir: -- -------------------------------------------------------
veya #---------------------------------------------------------
3.5 İç içe klasörler kullanıldığında, yanlış şekilde çoklu hiyerarşiler görüntülenir.¶
Lütfen unutmayın aralarında herhangi bir karakter olmadan çok kez ayırma dizgisi kullanmamalısınız ya da tablo adınızın başında/sonunda. Eğer zorundaysanız, başka bir TableSeparator kullanmayı veya bu özelliği etkisizleştirmeyi düşünün.
Ayrıca bkz.
3.6 (geri alındı).¶
3.7 Çok sütunlu (100+) tablom var ve tabloya gözatmayı denediğimde “Uyarı: url ayrıştırılamaz” gibi bir dizi hata alıyorum. Bu nasıl düzeltilebilir?¶
Tablonuz ne primary key ne de unique key sahiptir, bu yüzden bu satırı tanımlamak için uzun ifade kullanmak zorundayız. Buna parse_url işlevi için sorunlar neden olur. Geçici çözüm primary key veya unique key oluşturmaktır.
3.8 Üzerine MIME-Dönüşümü koyduğum sütunların içinde (tıklanabilir) HTML-formları kullanamıyorum!¶
Çevreleyen form kalıbından dolayı (çoklu satır silme onay kutuları için), phpMyAdmin’nin sonuçları görüntülediği iç içe formlar tablo içerisine koyulamıyor. Eğer esas form kalıbı tbl_row_delete.php’yi hedef gösteren ile birlikte tutulursa ancak, tablo içerisinde herhangi bir form kullanabilirsiniz ve içerisine sadece kendi girdi öğelerinizi koyabilirsiniz. Eğer özel gönderi girdi alanı kullanıyorsanız, dönüşümlerdeki $HTTP_POST_VARS doğrulandığı yerde, sayfayı tekrar görüntülemek için form kendiliğinden gönderecektir. Dönüşümlerin nasıl etkin bir şekilde kullanılacağının eğitimi için resmi phpMyAdmin ana sayfasındaki Bağlantı bölümümüze bakın.
3.9 MySQL sunucusu için “–sql_mode=ANSI” kullandığımda hata mesajları alıyorum.¶
MySQL ANSI-uyumluluk kipinde çalıştığında, SQL’in nasıl yapılandırıldığında bazı başlıca farklılıklar vardır (<https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html> adresine bakın). Hepsinden önemlisi, tırnak karakteri (“), geçersiz SQL ifadeleri içerisinde çoğu dahili phpMyAdmin işlemlerini yapan dizgi tırnak karakteri olarak değil tanımlayıcı tırnak karakteri olarak yorumlanır. Bu davranış için geçici çözüm yoktur. Bu öğe için haber sorun #7383 içinde bildirilecektir.
3.10 Eşadlı ve birincil anahtar yok: SELECT’in sonuçları aynı değer ile bir sütundan daha fazlasını görüntülediğinde (örneğin SELECT soyadi from calisanlar where ilkadi like 'A%'
ve iki “Yavuz” değeri görüntülenir), Düzenle’ye tıklarsam istenilen satırı düzenlediğimden emin olamıyorum.¶
Lütfen tablonuzun primary key sahip olduğundan emin olun, böylece phpMyAdmin Düzenle ve Sil bağlantıları için bunu kullanabilir.
3.11 InnoDB tabloları için satır sayısı doğru değil.¶
phpMyAdmin satır sayısını getirmek için hızlı bir yöntem kullanır ve bu yöntem sadece InnoDB tabloları durumunda yaklaşık bir sayıyı döndürür. Bu sonuçları değiştirmenin bir yolu için $cfg['MaxExactCount']
yönergesine bakın, ama bunun performansta ciddi etkisi olmaktadır. Ancak, biri yaklaşık sayıya basitçe tıklayarak tam sayısı ile yaklaşık satır sayısını kolayca değiştirebilir. Bu aynı zamanda en altta görüntülenen satırlar toplamına bir defa tıklanarak tüm tablolar için yapılabilir.
Ayrıca bkz.
3.12 (geri alındı).¶
3.13 Bir tire içeren vt adını takiben USE
girdiğimde bir hata alıyorum.¶
MySQL 5.1.49 ile yaptığım denemeler gösterdi ki API, USE komutu için bu sözdizimini kabul etmiyor.
3.14 Sütunlardan birinde SELECT hakkına sahip olmadığımda tabloya gözatamıyorum.¶
Bu, başından beri phpMyAdmin’nin bilinen bir kısıtlamasıydı ve gelecekte de çözülmesi muhtemel değildir.
3.15 (geri alındı).¶
3.16 (geri alındı).¶
3.17 (geri alındı).¶
3.18 Çoklu tabloları içeren bir CSV dosyası içe aktardığımda, hepsi birlikte tek bir tabloya birleştiriliyor.¶
CSV biçimindeki tabloları ayırt etmek için güvenilir bir yol yoktur. Bir süreliğine çoklu tabloları içeren CSV dosyalarını parçalara ayırmak zorunda olacaksınız.
>3.19 Dosyayı içe aktardığımda ve phpMyAdmin uygun veri yapısını belirlediğinde sadece int, decimal ve varchar türlerini kullanıyor.¶
Şimdilik, içe aktarma türü saptama sistemi sadece bu MySQL türlerinden sütunlara atanabiliyor. Gelecekte, eklenecek olması daha büyük ihtimal ama şu anda yapıyı alışık olduğunuz göndererek içe aktarmayla düzenlemek zorundasınız. Ayrıca, şu gerçeği de unutmamalısınız ki phpMyAdmin uygun tür için sütun boyutu olarak verilen herhangi bir sütundaki en büyük öğe boyutunu kullanacaktır. Bu sütuna ekleyeceğiniz büyük öğeleri biliyorsanız ondan sonra buna göre sütun boyutlarını elle ayarlamalısınız. Bu, verim hatırına yapılır.
3.20 Yükseltmeden sonra, bazı yer imleri gitti ya da içerikleri gösterilemez durumda.¶
Belli bir noktada, yer imi içeriğini saklamak için kullanılan karakter grubu değişmiş. Yer iminizi daha yeni phpMyAdmin sürümünden yeniden oluşturmak daha iyidir.
3.21 Ş harfi gibi evrensel kodlar içeren bir kullanıcı adı ile oturum açamıyor.¶
Eğer MySQL varsayılan karakter grubu olarak utf-8 kullanması için yapılandırılmadığında bu olabilir. Bu, PHP ve MySQL sunucusunun nasıl biribirini etkilediğinin bir sınırlamasıdır; kimlik doğrulamasından önce PHP için karakter kümesini ayarlamanın hiçbir yolu yoktur.
Ayrıca bkz.
ISP’ler, çoklu kullanıcı kurulumları¶
4.1 Bir ISP’im var. Merkezi bir phpMyAdmin kopyasını kurabilir miyim veya her müşteri için yüklemem mi gerekir?¶
2.0.3 sürümünden bu yana, merkezi bir phpMyAdmin kopyasını tüm kullanıcılarınız için kurabiliyorsunuz. Bu özelliği geliştirilmesine NetCologne GmbH nazikçe sponsor oldu. Bu, doğru bir biçimde kurulu MySQL kullanıcı yönetimi ve phpMyAdmin HTTP ya da tanımlama bilgisi kimlik doğrulaması gerektirir.
Ayrıca bkz.
4.2 phpMyAdmin’ni kötü niyetli erişime karşı güvenli yapmanın tercih edilen yolu nedir?¶
Bu sisteminize bağlıdır. Eğer diğer insanlar tarafından erişilemeyen bir sunucu çalıştırıyorsanız, web sunucunuz ile paketlenmiş dizin koruması kullanmak yeterlidir (Apache ile .htaccess dosyaları kullanabilirsiniz, örneğin). Eğer diğer insanların sunucunuza telnet erişimi varsa, phpMyAdmin’in HTTP ya da tanımlama bilgisi kimlik doğrulamasını kullanmalısınız.
Öneriler:
config.inc.php
dosyanızchmod 660
yapılmalı.- Tüm phpMyAdmin dosyalarınız chown -R phpmy.apache yapılmış olmalı, phpmy, şifresini sadece sizin bildiğiniz kullanıcı ve apache, Apache’nin altında çalışan grup.
- PHP ve web sunucunuz için güvenlik önerilerini takip edin.
4.3 /lang veya /libraries içinde bir dosya olmamasıyla ilgili hatalar alıyorum.¶
php.ini
dosyasını kontrol edin ya da sistem yöneticinize kontrol etmesi için sorun. İçinde bir yerdeki include_path
“.” içermek zorundadır ve open_basedir
, eğer kullanılmışsa, phpMyAdmin’nin normal işlemine izin vermek için “.” ve “./lang” içermek zorundadır.
4.4 HTTP kimlik doğrulaması kullanırken phpMyAdmin sürekli “Erişim reddedildi” uyarısı veriyor.¶
Bu birkaç sebepten olabilir:
$cfg['Servers'][$i]['controluser']
ve/veya$cfg['Servers'][$i]['controlpass']
yanlıştır.- Oturum açma iletisinde belirttiğiniz kullanıcı adı/parola geçersizdir.
- phpMyAdmin dizini için zaten güvenlik mekanizması kurmuşsunuzdur, örn. .htaccess dosyası. Bu phpMyAdmin’nin kimlik doğrulamasına engel olacaktır, o yüzden kaldırın.
4.5 Kullanıcıların kendi veritabanlarını oluşturmasına izin vermek mümkün mü?¶
2.2.5’ten başlayarak, kullanıcı yönetimi sayfasında, kullanıcı için joker karakterli veritabanı adı girebilir (örneğin “joe%”) ve istediğiniz yetkileri verebilirsiniz. Örneğin, SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER
eklemek kullanıcıya kendi veritaban(larını)ını oluşturmasına/yönetmesine izin verecektir.
4.6 Anamakine tabanlı kimlik doğrulaması ilavelerini nasıl kullanabilirim?¶
Eğer eski bir .htaccess dosyasında varolan kurallarınız varsa, onları alabilir ve 'deny'
/'allow'
ve 'from'
dizgileri arasına kullanıcı adı ekleyebilirsiniz. Kurulumunuz bunu kullanmak için uygunsa, '%'
kullanıcı adı jokerini burada kullanmanın başlıca bir yararı olacaktır. Ardından yalnızca bu güncellenmiş satırları $cfg['Servers'][$i]['AllowDeny']['rules']
dizilimi içerisine ekleyebilirsiniz.
Eğer önceden yapılmış örnek isterseniz, bu kısmı deneyebilirsiniz. Özel ağ IP bloklarından başka herhangi bir ağa oturum açmasında ‘root’ kullancısına engel olur.
//block root from logging in except from the private networks
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = [
'deny root from all',
'allow root from localhost',
'allow root from 10.0.0.0/8',
'allow root from 192.168.0.0/16',
'allow root from 172.16.0.0/12',
];
4.7 Kimlik doğrulaması penceresi birden fazla görüntüleniyor, neden?¶
Eğer phpMyAdmin’i başlatmak için $cfg['PmaAbsoluteUri']
dizginiz içindeki ayarladığınızdan farklı bir URL kullanıyorsanız bu olur. Örneğin, eksik “www” ya da yapılandırma dosyasında tanımlanan bir etki alanı adını bir IP adresiyle girmek.
4.8 phpMyAdmin’i başlatan hangi parametreleri URL’de kullanabilirim?¶
phpMyAdmin başlatılırken, db
ve server
parametrelerini kullanabilirsiniz. Bu sonuncusu, ya sayısal anamakine indeksini (yapılandırma dosyasındaki $i
olan) ya da yapılandırma dosyasında bulunan anamakine adlarından birini içerebilir.
Örneğin, doğrudan belirli bir veritabanına atlamak için bir URL, https://ornek.com/phpmyadmin/?db=sakila
şeklinde yapılabilir.
4.9.0 sürümünde değişti: pma_username
ve pma_password
parametreleri kullanımı desteği phpMyAdmin 4.9.0 sürümünde kaldırılmıştır (bakınız PMASA-2019-4).
Tarayıcılar veya istemci İS¶
5.1 Yetersiz bellek hatası alıyorum ve 14 sütundan daha fazlasıyla bir tablo oluşturmayı denediğimde denetimlerim işlevsel olmuyor.¶
Sadece Win98/98SE altında bu sorunu yeniden üretebildik. WinNT4 veya Win2K altındaki denemede, 60 sütundan daha fazlasını kolayca oluşturabildik. Geçici çözüm daha küçük sütun sayısı oluşturmak, ondan sonra tablo özelliklerinize geri gelmeniz ve diğer sütunları eklemeniz.
5.2 Xitami 2.5b4 ile phpMyAdmin form alanlarını işlemiyor.¶
Bu phpMyAdmin sorunu değildir ama bilinen bir Xitami hatasıdır: formları kullanan her betik/web sitesi ile karşı karşıya geleceksiniz. Xitami sunucunuzu yükseltin ya da düşürün.
5.3 Konqueror (phpMyAdmin 2.2.2) ile tabloları dökümlerken sorunlarım oluyor.¶
Konqueror 2.1.1 ile: düz dökümler, zip ve gzip dökümleri sorunsuz çalışır, döküm için önerilen dosya adı hariç her zaman ‘tbl_dump.php’dir. bzip2 dökümleri çalışır görünmüyor. Konqueror 2.2.1 ile: düz dökümler çalışır; zip dökümler kullanıcının geçici dizini içinde yer alır, böylece Konqueror’u kapatmadan önce taşınmalıdırlar yoksa gözden kaybolurlar. gzip dökümleri hata mesajı verir. Konqueror 2.2.2 için denemenin yapılması gerekir.
5.4 Tanımlama bilgisi kimlik doğrulaması kipi kullanamıyorum çünkü Internet Explorer tanımlama bilgilerini hiç saklamıyor.¶
MS Internet Explorer tanımlama bilgileriyle ilgili olarak aslında hatalı görünür, an az 6 sürümüne kadar.
5.5 (geri alındı).¶
5.6 (geri alındı).¶
5.7 Tarayıcımı yeniliyorum (yeniden yüklüyorum) ve hoş geldiniz sayfasına geri geliyor.¶
Bazı tarayıcılar yenilemek istediğinizde çerçeve içerisinde sağ tıklamayı destekler, bunu sadece sağ çerçevede yapın.
5.8 Mozilla 0.9.7 ile sorgu kutusunda değiştirilmiş sorgu gönderirken sorunlar yaşıyorum.¶
Mozilla hatası gibi görünüyor: 0.9.6 tamamdır. Gözümüzü gelecek Mozilla sürümlerinin üzerinde tutacağız.
5.9 Mozilla 0.9.?’den 1.0’a ve Netscape 7.0-PR1 ile SQL-Sorgusu düzenleme alanında boşluk bırakamıyorum: sayfa aşağı kayıyor.¶
Bu bir Mozilla hatasıdır (BugZilla’da hata #26882’ye bakın).
5.10 (geri alındı).¶
5.11 Almanca harflerdeki üzerine koyulan çift noktalılar gibi Genişletilmiş-ASCII karakterler yanlış görüntüleniyor.¶
Lütfen tarayıcınızın karakter grubunu, phpMyAdmin’in başlangıç sayfasında seçmiş olduğunuz dil dosyasından birine ayarladığınızı garantileyin. Alternatif olarak çoğu tarayıcının en son sürümlerince desteklenen otomatik algılama kipini deneyebilirsiniz.
5.12 Mac OS X Safari tarayıcısı özel karakterleri “?” olarak değiştiriyor.¶
Bu sorun Chimera, Netscape ve Mozilla’nın bu soruna sahip olmadığını ekleyen macOS kullanıcısı tarafından raporlanmıştır.
5.13 (geri alındı)¶
5.14 (geri alındı)¶
5.15 (geri alındı)¶
5.16 Internet Explorer ile “Erişim reddedildi” Javascript hataları alıyorum. Ya da phpMyAdmin’i Windows altında çalışır hale getiremiyorum.¶
Lütfen aşağıdaki noktaları kontrol edin:
- Belki bir IP adresi için
config.inc.php
içindeki$cfg['PmaAbsoluteUri']
ayarınızı tanımladınız ve phpMyAdmin’i bir etki alanı adını içeren URL ya da tersi durum ile başlatıyorsunuz. - IE ve/veya Microsoft Güvenlik Merkezi içindeki güvenlik ayarları çok yüksek, bu nedenle betiklerin çalıştırılmasını engelliyor.
- Windows Güvenlik Duvarı Apache ve MySQL’i engelliyor. “Gelen” ve “Giden” yönlerindeki HTTP bağlantı noktalarına (80 veya 443) ve MySQL bağlantı noktasına (genellikle 3306) izin vermelisiniz.
5.17 Firefox ile veri satırlarını silemiyorum ya da veritabanını kaldıramıyorum.¶
Birçok kullanıcının da onayladığı soruna, Firefox’lara Tabbrowser Uzantıları eklentisini kurmak neden oluyor.
5.18 (geri alındı)¶
5.19 Tarayıcımda JavaScript hataları alıyorum.¶
Sorunlar tarayıcı uzantılarının bazı kombinasyonları ile raporlandı. Sorunu gidermek için tüm uzantıları etkisizleştirin ondan sonra sorunun devam edip etmediğini görmek için tarayıcı önbelleğinizi temizleyin.
5.20 İçerik Güvenlik İlkesi’nin ihlal edilmesi ile ilgili hatalar alıyorum.¶
Şunun gibi hatalar görürseniz:
Refused to apply inline style because it violates the following Content Security Policy directive
Buna genellikle İçerik Güvenlik İlkesi başlıklarını yanlışlıkla yeniden yazan bazı yazılımlar neden olur. Genellikle buna böyle hatalara neden olan antivirüs proksi veya tarayıcı eklentileri neden olur.
Eğer bu hataları görürseniz, antivirus içindeki HTTP proksiyi etkisizleştirmeye ya da İçerik Güvenlik İlkesi’ni yeniden yazmayı etkisizleştirmeye çalışın. Eğer bu yardımcı olmazsa, tarayıcı uzantılarını etkisizleştirmeyi deneyin.
Alternatif olarak bu aynı zamanda sunucu yapılandırma sorunu olabilir (eğer web sunucusu İçerik Güvenlik İlkesi başlıklarının yayınlanması için yapılandırılırsa, phpMyAdmin’den geleni geçersiz kılabilirler).
Bu tür hatalara neden olduğu bilinen programlar:
- Kaspersky Internet Security
5.21 Tabloya gözatarken ya da SQL sorgusu yürütürken potansiyel olarak güvenli olmayan işlem ile ilgili hata iletisi alıyorum.¶
Şunun gibi hatalar görürseniz:
A potentially unsafe operation has been detected in your request to this site.
Buna genellikle süzme istekleri yapan web uygulaması güvenlik duvarı neden olur. SQL eklemeyi önlemeye çalışır, ancak phpMyAdmin SQL sorgularını yürütmek için tasarlanmış bir araçtır, böylece onu kullanılamaz hale getirir.
Lütfen phpMyAdmin betiklerine web uygulaması güvenlik duvarı ayarlarından izin verin ya da tamamen phpMyAdmin yolu için etkisizleştirin.
Bu tür hatalara neden olduğu bilinen programlar:
- Wordfence Web Uygulaması Güvenlik Duvarı
phpMyAdmin kullanmak¶
6.1 Tabloya yeni satırları ekleyemiyorum / tablo oluşturamıyorum - MySQL, SQL hatası getirtiyor.¶
SQL hatasını dikkatli bir şekilde inceleyin. Çoğu zaman soruna yanlış sütun türü belirlenmesi neden olur. Genel hatalar:
- Bağımsız boyut değişkeni olmadan
VARCHAR
kullanmak - Bağımsız boyut değişkeni olmadan
TEXT
veyaBLOB
kullanmak
Aynı zamanda sözdiziminizin doğru olduğunu onaylamak için MySQL kılavuzundaki sözdizimi bölümüne bir bakın.
6.2 Bir tablo oluşturduğumda, iki sütun için indeks ayarlıyorum ve phpMyAdmin bu iki sütunla sadece bir indeks oluşturuyor.¶
Çoklu sütun indeksi oluşturmanın yolu budur. Eğer iki indeks isterseniz, ilkini tablo oluştururken oluşturun, kaydedin, ondan sonra tablo özelliklerini görüntüleyin ve diğer indeksi oluşturmak için İndeks bağlantısına tıklayın.
6.3 Tablomun içine boş değer nasıl eklerim?¶
2.2.3 sürümünden bu yana, boş yapılabilen her sütun için onay kutusuna sahipsiniz. 2.2.3’ten önce, sütunun değeri olarak tırnaksız “null” girmek zorundaydınız. 2.5.5 sürümünden bu yana, gerçek NULL değeri almak için onay kutusunu kullanmak zorundasınız, bu yüzden eğer “NULL” girerseniz, bu, sütunda harfi harfine NULL istiyorsunuz anlamına gelir ve NULL değeri değil (bu PHP4’te çalışır).
6.4 Veritabanımı veya tablomu nasıl yedekleyebilirim?¶
Gezinti panelinde veritabanı veya tablo adına tıklayın, özellikleri görüntülenecektir. Ondan sonra menüde, “Dışa Aktar”a tıklayın, yapıyı, veriyi veya her ikisini dökümleyebilirsiniz. Bu, veritabanınızı/tablonuzu yeniden oluşturmak için kullanılabilir standart SQL ifadeleri üretecek. “Dosyayı farklı kaydet”i seçmeniz gerekecek, böylece phpMyAdmin çıkan dökümü yerinizin olduğu yere iletebilir. PHP yapılandırmanıza bağlı olarak dökümü sıkıştırmak için seçenekleri göreceksiniz. Aynı zamanda $cfg['ExecTimeLimit']
yapılandırma değişkenine bakın. Bu konuda ilave yardım için bu belgede “döküm” kelimesini arayın.
6.5 Döküm kullanarak veritabanımı veya tablomu nasıl geri yüklerim (gönderirim)? “.sql” dosyasını nasıl çalıştırabilirim?¶
Gezinti panelinde veritabanı adına tıklayın, özellikleri görüntülenecektir. Sağ–taraftaki çerçeveden (veya phpMyAdmin sürümünüz 2.7.0’dan öncesiyse, “SQL”den) sekmeler listesinden “İçe Aktar”ı seçin. “İçe Aktarmak için Dosya” bölümünde, “Bilgisayarınıza gözat” kısmında döküm dosya adınızın yolu için Dosya Seçin düğmesini kullanın. Ondan sonra Git’e tıklayın. 2.7.0 sürümü ile içe aktarma motoru yeniden yazıldı, eğer mümkünse yeni özelliklerinin avantajlarından faydalanmak için yükseltmeniz önerilir. Bu konuda ilave yardım için bu belgede “gönderme” kelimesini arayın.
Not: Eski MySQL sürümlerinden daha yeni MySQL sürümlerine aktarılan dökümlerin içe aktarılırken oluşan hataları için, lütfen bakınız 6.41 Eski MySQL sürümlerinden (5.7.6 öncesi) daha yeni MySQL sürümlerine (5.7.7+) aktarılan dökümler içe aktarılırken içe aktarma hataları alıyorum, ancak aynı eski sürümlere geri aktarıldığında sorunsuz çalışırlar mı ?.
6.6 Örnekle sorgulamada ilişki tablosunu nasıl kullanabilirim?¶
İşte persons, towns ve countries tabloları ile bir örnek, “mydb” veritabanında bulunanların tümü. Eğer pma__relation
tablosuna sahip değilseniz, yapılandırma bölümünde açıklandığı gibi oluşturun. Ondan sonra örnek tabloları oluşturun:
CREATE TABLE REL_countries (
country_code char(1) NOT NULL default '',
description varchar(10) NOT NULL default '',
PRIMARY KEY (country_code)
) ENGINE=MyISAM;
INSERT INTO REL_countries VALUES ('C', 'Canada');
CREATE TABLE REL_persons (
id tinyint(4) NOT NULL auto_increment,
person_name varchar(32) NOT NULL default '',
town_code varchar(5) default '0',
country_code char(1) NOT NULL default '',
PRIMARY KEY (id)
) ENGINE=MyISAM;
INSERT INTO REL_persons VALUES (11, 'Marc', 'S', 'C');
INSERT INTO REL_persons VALUES (15, 'Paul', 'S', 'C');
CREATE TABLE REL_towns (
town_code varchar(5) NOT NULL default '0',
description varchar(30) NOT NULL default '',
PRIMARY KEY (town_code)
) ENGINE=MyISAM;
INSERT INTO REL_towns VALUES ('S', 'Sherbrooke');
INSERT INTO REL_towns VALUES ('M', 'Montréal');
Uygun bağlantıyı kurmak ve bilgiyi görüntülemek için:
- “REL_persons” tablosunda Yapı’ya tıklayın, ondan sonra İlişki görünümüne
- “town_code” için aşağı açılır menülerden seçin, dış veritabanı, tablo ve sütun için sırasıyla “mydb”, “REL_towns”, “town_code”
- “country_code” için aşağı açılır menülerden seçin, dış veritabanı, tablo ve sütun için sırasıyla “mydb”, “REL_countries”, “country_code”
- “REL_towns” tablosunda Yapı’ya tıklayın, ondan sonra İlişki görünümüne
- “Görüntülemek için sütun seçin” içinde, “açıklama”yı seçin
- “REL_countries” tablosu için önceki iki adımı tekrarlayın
Ondan sonra bunun gibi deneyin:
- Gezinti panelinde vt adınıza tıklayın
- “Sorgu”yu seçin
- Tabloları kullanın: persons, towns, countries
- “Sorguyu güncelle”ye tıklayın
- Sütun satırında, persons.person_name seçin ve “Göster” işaretleme kutusuna tıklayın
- Aynısını diğer 2 sütundaki towns.description ve countries.descriptions için yapın
- “Sorguyu güncelle”ye tıklayın ve doğru birleştirmelerin oluşturulduğunu sorgu kutusu içinde göreceksiniz
- “Sorguyu gönder”e tıklayın
6.7 “Görüntüleme sütunu” özelliğini nasıl kullanabilirim?¶
Önceki örnekten başlayarak, yapılandırma bölümünde açıklandığı gibi pma__table_info
oluşturun, ondan sonra persons tablonuza gözatın ve fareyi town kodu ya da country kodunun üzerine götürün. Ayrıca “görüntüleme sütununun” etkinleştirdiği ilave bir özellik için bakınız 6.21 Düzenle/ekle kipinde, bazı dış tablo tabanlı, bir sütun için olası değerlerin listesini nasıl görebilirim?: olası değerlerin aşağı açılır listesi.
6.8 Veritabanımın PDF şemasını nasıl yapabilirim?¶
Önce “relation”, “table_coords” ve “pdf_pages” yapılandırma değişkenleri doldurulmak zorundadır.
- Gezinti panelinde veritabanınızı seçin.
- En üstte gezinti çubuğundaki “Tasarımcı”yı seçin.
- Tabloları istediğiniz gibi taşıyın.
- Sol menüden “Şemayı dışa aktar”ı seçin.
- Dışa aktarma kipine bağlı açılacak.
- PDF olarak dışa aktarma türünü seçin, diğer ayarları yapabilirsiniz.
- Formu gönderin ve dosya indirilmeye başlayacak.
Ayrıca bkz.
6.9 phpMyAdmin sütunlarımdan birinin türünü değiştiriyor!¶
Hayır, bu, sessiz sütun türü değiştirmeyi yapan MySQL’dir.
6.10 Bir yetki oluşturulduğunda, veritabanı adında alttan çizgisi olanlarda ne oluyor?¶
Eğer alttan çizgiden önce ters eğik çizgi koymazsanız, bu joker karakter kabul edilir ve alttan çizgi “herhangi bir karakter” anlamına gelir. Bu yüzden, eğer veritabanı adı “benim_vt” ise, kullanıcı yetkileri benim1vt, benim2vt’ye … alacaktır. Eğer alttan çizgiden önce ters eğik çizgi koyarsanız, bu, veritabanı adı gerçek bir alttan çizgiye sahip olacaktır anlamına gelir.
6.11 İstatistikler sayfalarındaki garip sembol ø nedir?¶
“Ortalama” anlamına gelir.
6.12 Bazı Dışa Aktarma seçeneklerini anlamak istiyorum.¶
Yapı:
- Eğer içe aktarma sırasında zaten varsa, “DROP TABLE ekle” MySQL’e tabloyu kaldırmasını söyleyen bir satır ekleyecektir. Dışa aktarmanızdan sonra tabloyu KALDIRMAZ, sadece içe aktarma dosyasını etkiler.
- “If Not Exists” sadece eğer tablo mevcut değilse tablo oluşturacaktır. Yoksa, eğer tablo adı mevcutsa ama farklı bir yapısı varsa, hata alabilirsiniz.
- “AUTO_INCREMENT değeri ekle”, AUTO_INCREMENT değerinin (eğer varsa) yedeklemeye dahil edileceğini garanti eder.
- “Tablo ve sütun adlarını ters tırnaklarla kapattır”, sütun ve tablo adlarının özel karakterlerle biçimlenmiş korunmasını garanti eder.
- “Açıklamalara ekle”, sütun açıklamalarını, ilişkileri ve ortam türleri grubunu SQL açıklamaları (/* xxx */) olarak döküm içindeki pmadb içine dahil eder.
Veri:
- “Tam eklemeler” her INSERT komutunda sütun adlarını ekler, daha iyi belgeleme için (ama sonucu daha büyük bir dosyadır).
- “Gelişmiş eklemeler” INSERT eylemini ve tablo adını sadece bir kez kullanarak kısa döküm dosyası sağlar.
- “Gecikmeli eklemeler” en iyi MySQL kılavuzunda - INSERT DELAYED Sözdizimi açıklanır.
- “Yoksayılan eklemeler” hatalar yerine uyarı olarak davranır. Yine, daha fazla bilgi MySQL kılavuzunda - INSERT Sözdizimi sağlanır, ama aslında bununla seçilmiştir, bütün ifadenin başarısız olmasına neden olmaktansa geçersiz değerler ayarlanır ve eklenir.
6.13 Adının içinde nokta olan veritabanı oluşturmak istiyorum.¶
Bu kötü bir fikirdir çünkü MySQL içinde “veritabanı.tablo” sözdizimi, veritabanı ve tablo adını referans gösteren normal bir yoldur. Daha kötüsü, MySQL genellikle veritabanını nokta ile oluşturmanıza izin verir ama ondan sonra bununla çalışamazsınız, ne de silebilirsiniz.
6.14 (geri alındı).¶
6.15 Bir BLOB sütunu eklemek ve içine indeks koymak istiyorum ama MySQL, “BLOB sütunu ‘…’ anahtar uzunluğu olmadan anahtar belirlemede kullanıldı” diyor.¶
Bunu yapmanın doğru yolu, herhangi bir indeks olmaksızın sütun oluşturmak, ondan sonra tablo yapısını görüntülemek ve “Bir indeks oluştur” iletisini kullanmak. Bu sayfada, BLOB sütununuzu seçebileceksiniz ve BLOB sütununda bir indeks oluşturmak için şart olan indekse boyut ayarlayabileceksiniz.
6.16 Bir yığın düzenleme alanı ile sayfa içinde nasıl basitçe taşıyabilirim?¶
Çoğu sayfada pek çok düzenleme alanı (tablo yapısı değişiklikleri, satır düzenleme, vs.) ile taşımak için Ctrl+ok tuşlarını (Safari’de Option+Ok tuşları) kullanabilirsiniz.
6.17 Dönüşümler: Kendi mime türümü giremiyorum! Öyleyse yararlı olan bu özellik nedir?¶
Eğer dönüşümleri onlara koyamazsanız tanımlanan mime türleri kullanımda olmaz. Yoksa sütuna sadece açıklama koyabilirdiniz. Çünkü kendi mime türünüzü girmek ciddi sözdizimi kontrol sorunları ve doğrulamasına neden olacaktır, bu yüksek riskte yanlış kullanıcı girdisi durumuna sokar. Bunun yerine işlevleri ya da boş mime türü tanımlamalarını kullanarak mime türlerini başlatmak zorundasınız.
Ayrıca, kullanılabilir mime türlerinin bütün genel bakışına sahipsiniz. Tüm bu mime türlerini böyle ezbere bilen kim var ki istedikleri zaman girebilsinler?
6.18 Yer İmleri: Yer imlerini nerede saklayabilirim? Sorgu kutusunun altında neden hiç yer imlerini göremiyorum? Bu değişkenler ne için?¶
Yer imleri özelliğini kullanmak için phpMyAdmin yapılandırma depolaması’nı yapılandırmanız gerek. Bunu yaptıktan sonra SQL sekmesindeki yer imlerini kullanabilirsiniz.
Ayrıca bkz.
6.19 Dışa aktarılmış tabloyu dahil etmek için basit LATEX belgesini nasıl oluşturabilirim?¶
LATEX belgelerinize basitçe tabloyu dahil edebilirsiniz, en az örnek belge aşağıdaki gibi görünmelidir (table.tex
dosyasına aktarılmış tablo var farz edilirse):
\documentclass{article} % or any class you want
\usepackage{longtable} % for displaying table
\begin{document} % start of document
\include{table} % including exported table
\end{document} % end of document
6.20 Benim olmayan birçok veritabanı görüyorum ve onlara erişemiyorum.¶
Bu genel yetkilerden birine sahipsiniz: CREATE TEMPORARY TABLES, SHOW DATABASES, LOCK TABLES. Bu yetkiler aynı zamanda kullanıcılara tüm veritabanı adlarını görmelerini etkinleştirir. Bu yüzden eğer kullanıcılarınızın bu yetkilere ihtiyaçları yoksa, bunları kaldırabilirsiniz ve veritabanları listesi kısalacaktır.
Ayrıca bkz.
6.21 Düzenle/ekle kipinde, bazı dış tablo tabanlı, bir sütun için olası değerlerin listesini nasıl görebilirim?¶
Tablolar arasında ilgili bağlantıları kurmak zorundasınız ve aynı zamanda dış tablo içindeki “görüntüleme sütununu” ayarlayın. Örnek için bakınız 6.6 Örnekle sorgulamada ilişki tablosunu nasıl kullanabilirim?. Ondan sonra, eğer dış tablo içinde 100 değer veya daha azı varsa, değerlerin aşağı açılır listesi kullanılabilir olacaktır. Değerlerin iki listesini göreceksiniz, birinci liste anahtarı ve görüntüleme sütununu içerir, ikinci liste görüntüleme sütununu ve anahtarı içerir. Bunun nedeni ya anahtarın ya da görüntüleme sütununun ilk harfinin yazılabilmesidir. 100 değer veya daha fazlası için ayrı bir pencere görünecektir, dış anahtar değerlerine gözatmak ve birini seçmek için. 100 varsayılan sınırını değiştirmek için, $cfg['ForeignKeyMaxLimit']
yönergesine bakın.
6.22 Yer İmleri: Tablo için Gözatma kipine girildiğinde otomatik olarak varsayılan yer imini çalıştırabilir miyim?¶
Evet. Eğer yer imi tablo adıyla aynı etikete sahipse ve ortak yer imi değilse, çalıştırılacaktır.
Ayrıca bkz.
6.23 Dışa Aktar: phpMyAdmin’in Microsoft Excel dosyalarını dışa aktarabildiğini duydum?¶
Kutudan çıkar çıkmaz çalışan, Microsoft Excel için CSV kullanabilirsiniz.
3.4.5 sürümünde değişti: phpMyAdmin 3.4.5 sürümünden bu yana Microsoft Excel sürüm 97 ve yenisine doğrudan dışa aktarma için destek kaldırıldı.
6.24 Artık phpMyAdmin yerel MySQL 4.1.x sütun açıklamalarını destekliyor, pmadb içinde saklanan sütun açıklamalarıma ne oldu?¶
Tablonun pmadb-stili sütun açıklamalarının yerel biriyle otomatik yer değiştirmesi bu tablo için Yapı sayfasına girdiğinizde yapılır.
6.25 (geri alındı).¶
6.26 Satırların aralığını nasıl seçebilirim?¶
Aralığın ilk satırına tıklayın, shift (üst) tuşuna basılı tutun ve aralığın son satırına tıklayın. Bu, satırları gördüğünüz her yerde çalışır, örneğin Gözatma kipinde veya Yapı sayfasında.
6.27 Ne biçimde dizgiler kullanabilirim?¶
phpMyAdmin’nin biçim dizgilerini kabul ettiği tüm yerlerde, @VARIABLE@
genişlemesini ve strftime biçim dizgilerini kullanabilirsiniz. Genişletilmiş değişkenler içeriğe bağlıdır (örneğin, eğer seçili bir tabloya sahip değilseniz, tablo adını alamazsınız) ama aşağıdaki değişkenler kullanılabilir:
@HTTP_HOST@
- phpMyAdmin’i çalıştıran HTTP anamakinesi
@SERVER@
- MySQL sunucu adı
@VERBOSE@
$cfg['Servers'][$i]['verbose']
içinde tanımlandığı gibi ayrıntılı MySQL sunucusu adı@VSERVER@
- Eğer ayarlı ise ayrıntılı MySQL sunucusu adı, yoksa normaldir
@DATABASE@
- Şu anda açık olan veritabanı
@TABLE@
- Şu anda açık olan tablo
@COLUMNS@
- Şu anda açık olan tablo sütunları
@PHPMYADMIN@
- Sürümü ile phpMyAdmin
6.28 (geri alındı).¶
6.29 Sorgu sonuç tablomdan neden çizelge alamıyorum?¶
Her tablo çizelgeye koyulabilir değildir. Sadece bir, iki veya üç sütunlu tablolar çizelge olarak görselleştirilebilir. Üstelik tablo, onu anlamak için çizelge betiği olarak özel bir biçimde olmak zorundadır. Şimdilik desteklenen biçimler Çizelgeler içinde bulunabilir.
6.30 İçe Aktarma: ESRI Şekil dosyalarını nasıl içe aktarabilirim?¶
Aslında bir ESRI Şekil dosyası .shp dosyasının geometri verisini içeren ve .dbf dosyasının bu geometri verisiyle ilgili veriyi içeren çeşitli dosyalar grubudur. .dbf dosyasından okumak için dBase uzantısı (–enable-dbase) ile derlenmiş PHP’ye sahip olmanız gerekir. Yoksa sadece geometri verisi içe aktarılacaktır.
Bu dosyaların grubunu göndermek için aşağıdaki yöntemlerden birini kullanabilirsiniz:
Gönderme dizinini $cfg['UploadDir']
ile yapılandırın, her iki .shp ve .dbf dosyalarını aynı dosya adı ile gönderin ve içe aktar sayfasından .shp dosyasını seçin.
.shp ve .dbf dosyalarıyla bir zip arşivi oluşturun ve içe aktarın. Bunun çalışması için, kullanıcının yazabileceği (örneğin './tmp'
) web sunucusunun olduğu yerde $cfg['TempDir']
dizgisini ayarlamanız gerekir.
UNIX-tabanlı sistemde geçici dizin oluşturmak için yapabileceğiniz:
cd phpMyAdmin
mkdir tmp
chmod o+rwx tmp
6.31 Tasarımcıda bir ilişkiyi nasıl oluştururum?¶
İlişkiyi seçmek için, tıklayın: Pembe olarak gösterilen görüntü sütununa. Alanı, görüntü sütunu olarak ayarlamak/ayarı kaldırmak için “Görüntülemek için sütun seçin” simgesine tıklayın, ondan sonra uygun sütun adı üzerine tıklayın.
6.32 Odaklı arama özelliğini nasıl kullanabilirim?¶
Odaklı arama özelliği tablo arama özelliğine bir alternatiftir. Dağılım çizimi içindeki verisini temsil eden bir tablo keşfetmenize izin verir. Bir tablo seçerek ve Ara sekmesine tıklayarak bu özelliğin yerini öğrenebilirsiniz. Tablo Arama sayfasındaki alt sekmelerden birisi Odaklı Arama’dır.
Bir örnek için 6.6 Örnekle sorgulamada ilişki tablosunu nasıl kullanabilirim? içindeki REL_persons tablosunu dikkate alın. Odaklı aramayı kullanmak için iki sütunun seçilmesi gerekir, örneğin, id ve town_code. id değerleri bir eksende temsil edilir ve town_code değerleri diğer eksende. Her bir satır, id’si ve town_code’u tabanlı dağılım çizimi içinde işaret edilerek temsil edilecektir. Görüntülemek için iki alan dışında iki ilave arama kriterini dahil edebilirsiniz.
Her bir nokta için etiket olarak hangi alanın görüntülenmesi gerektiğini seçebilirsiniz. Eğer görüntülenme sütunu tablo için ayarlanmışsa (bakınız 6.7 “Görüntüleme sütunu” özelliğini nasıl kullanabilirim?), aksi halde siz ayarlamadıkça etiket olarak alınır. Ayrıca ‘Çizim için en fazla satır’ alanında belirlenerek çizimde görüntülenmesini istediğiniz en fazla satır sayısını seçebilirsiniz. Bir kere kriteriniz üzerinde karar verdiniz mi, çizimi görüntülemek için ‘Git’e tıklayın.
Çizim oluşturulduktan sonra, çizimi yakınlaştırmak ve uzaklaştırmak için fare tekerini kullanabilirsiniz. Buna ek olarak, gezdirme özelliği çizim üzerinde gezinme için etkinleştirilir. Ayrıntının belli bir seviyesine yakınlaştırabilirsiniz ve ilgilendiğiniz alanın yerini bulmak için gezdirmeyi kullanabilirsiniz. Noktaya tıklamak ileti kutusunu açar, görüntülenen veri satırı alanı verileri noktayla temsil edilir. Gerekirse değerleri düzenleyebilir ve güncelleme sorgusu yayınlamak için göndere tıklayabilirsiniz. Nasıl kullanılacağına ilişkin temel talimatlar, hemen çizimin üzerinde bulunan ‘Nasıl kullanılır?’ bağlantısına tıklanarak görüntülenebilir.
6.33 Bir tabloya gözatarken, sütun adını nasıl kopyalayabilirim?¶
Bağlantılı sütun adına tıklayarak sıralamanın yanısıra başlık hücrelerini sürükleyerek yeniden sıralamayı destekleyen sütunları da kopyalamak için gözat tablosu başlığı hücresi içerisindeki sütun adını seçmek zordur. Sütun adını kopyalamak için, araç ipucu böyle yapmanızı söylediğinde sütun adının yanındaki boş alana çift tıklayın. Bu size sütun adıyla bir girdi kutusu gösterecektir. Bu girdi kutusu içerisinden panonuza kopyalamak için sütun adına sağ tıklayabilirsiniz.
6.34 Sık Kullanılan Tablolar özelliğini nasıl kullanabilirim?¶
Sık Kullanılan Tablolar özelliği Son Tablolar özelliğine çok benzer. Gezinti panelindeki herhangi bir veritabanının sıkça kullanılan tabloları için bir kısayol eklemenize izin verir. Listeden basitçe seçerek listedeki herhangi bir tabloya kolayca gidebilirsiniz. Eğer phpMyAdmin Yapılandırma Depolamanızı yapılandırmadıysanız, bu tablolar tarayıcınızın yerel depolamasında saklanır. Aksi takdirde bu girişler phpMyAdmin Yapılandırma Depolaması içinde saklanır.
ÖNEMLİ: phpMyAdmin Yapılandırma Depolaması yokluğunda, Sık Kullanılan tablolarınız kendi içlerinde farklı seçimlerinize bağlı olarak farklı tarayıcılarda farklı olabilir.
Bir tabloyu Sık Kullanılan listesine eklemek için bir Veritabanının tablolarının listesindeki bir tablo adının önünde bulunan Gri yıldıza basitçe tıklayın ve yıldız ‘Sarı’ rengine dönene kadar bekleyin. Listeden bir tabloyu kaldırmak için Sarı yıldıza tıklayın ve tekrar Gri rengine dönene kadar bekleyin.
config.inc.php
dosyanızdaki $cfg['NumFavoriteTables']
dizgisini kullanarak, gezinti panelinde gösterilen sık kullanılan tabloların en fazla sayısını tanımlayabilirsiniz. Varsayılan değeri 10 dur.
6.35 Aralığı arama özelliğini nasıl kullanabilirim?¶
Aralığı arama özelliğinin yardımıyla, biri Arama sekmesinden bir tablo arama işlemi gerçekleştirirken belirli sütun(lar) için değerlerin aralığını belirleyebilir.
Bu özelliği kullanmak için sütun adının önündeki işletici seçme listesinden basitçe BETWEEN veya NOT BETWEEN işleticilerine tıklayın. Yukarıdaki seçeneklerden biri seçildiğinde, bu sütun için En Az ve En Fazla değeri soran bir ileti kutusu görünecek. Kesin sonuçlardan sadece BETWEEN durumunda olan değerlerin belirlenen aralığı dahil edilecektir ve NOT BETWEEN durmunda olanlar hariç tutulacaktır.
Not: Aralığı arama özelliği sadece ‘Sayısal’ ve ‘Tarih’ veri türü sütunlarında çalışacaktır.
6.36 Merkezi sütunlar nedir ve bu özelliği nasıl kullanabilirim?¶
Adından da anlaşılacağı gibi, Merkezi sütunlar özelliği veritabanı başına aynı veri öğesi için benzer ismi önlemek için bir merkezi sütunlar listesini ve aynı veri öğesi için veri türünün tutarlılığını sağlamayı etkinleştirir. Merkezi sütunlar listesini, bu veritabanında benzer sütun adını ve sütun tanımını yazmaktan kurtaracak olan herhangi bir tablo yapısına bir öğe eklemek için kullanabilirsiniz.
Merkezi listeye bir sütun eklemek için tablo yapısı sayfasına gidin, dahil etmek istediğiniz sütunları kontrol edin ve ondan sonra basitçe “Merkezi sütunlara ekle” seçeneğine tıklayın. Eğer bir veritabanından birden fazla tablodan tüm benzersiz sütunları eklemek istiyorsanız o zaman veritabanı yapısı sayfasına gidin, dahil etmek istediğiniz tabloları kontrol edin ve ondan sonra “Sütunları merkezi listeye ekle”yi seçin.
Merkezi listeden bir sütunu kaldırmak için tablo yapısı sayfasına gidin, kaldırmak istediğiniz sütunları kontrol edin ve ondan sonra basitçe “Merkezi sütunlardan kaldır” seçeneğine tıklayın. Eğer bir veritabanından birden fazla tablodan tüm sütunları kaldırmak istiyorsanız o zaman veritabanı yapısı sayfasına gidin, dahil etmek istediğiniz tabloları kontrol edin ve ondan sonra “Sütunları merkezi listeden kaldır”ı seçin.
Merkezi listeyi yönetmek ve görüntülemek için merkezi sütunları yönetmek istediğiniz veritabanını seçin ondan sonra üst menüden “Merkezi sütunlar”a tıklayın. Merkezi listeye yeni sütunları eklemek, düzenlemek ya da silmek için seçeneklerin olduğu bir sayfaya yönlendirileceksiniz.
6.37 Gelişmiş Tablo Yapısı özelliğini nasıl kullanabilirim?¶
Gelişmiş tablo yapısı özelliği tablo yapısının Üçüncü Normal Biçim’e kadar getirilmesine yardımcı olur. Normalleştirme için çeşitli adımlar sırasında öğeler hakkında sorular soran bir sihirbaz kullanıcıya sunulur ve yeni bir yapının Birinci/İkinci/Üçüncü Normal biçim içinde getirilmesi buna göre önerilir. Sihirbazın başlangıcında, kullanıcıların normalleştirmek istedikleri tablo yapısını normal biçime kadar seçmeleri gerekir.
İşte Birinci, İkinci ve Üçüncü Normal Biçimin tüm üçünü denemek için kullanabileceğiniz bir örnek tablo.
CREATE TABLE `VetOffice` (
`petName` varchar(64) NOT NULL,
`petBreed` varchar(64) NOT NULL,
`petType` varchar(64) NOT NULL,
`petDOB` date NOT NULL,
`ownerLastName` varchar(64) NOT NULL,
`ownerFirstName` varchar(64) NOT NULL,
`ownerPhone1` int(12) NOT NULL,
`ownerPhone2` int(12) NOT NULL,
`ownerEmail` varchar(64) NOT NULL,
);
Yukarıdaki tablo primary key olmadığı gibi Birinci Normal Biçimde değil. Birincil anahtarın (petName,`ownerLastName`,`ownerFirstName`) olması gerekir. Eğer primary key önerildiği gibi seçilirse, sonuçta oluşan tablonun İkinci içinde olmayacak olmasının yanı sıra aşağıdaki bağımlıların olması durumunda Üçüncü Normal biçim de olmayacaktır.
(OwnerLastName, OwnerFirstName) -> OwnerEmail
(OwnerLastName, OwnerFirstName) -> OwnerPhone
PetBreed -> PetType
Yani OwnerEmail alanının, OwnerLastName ve OwnerFirstName alanlarına bağlı olduğunu söyler. OwnerPhone alanı OwnerLastName ve OwnerFirstName alanına bağlıdır. PetType alanı da PetBreed alanına bağlıdır.
6.38 Nasıl otomatik artan değerleri yeniden atayabilirim?¶
Bazı kullanıcılar, AUTO_INCREMENT değerlerini ardışık olmasını tercih ederler; bu her zaman satır silmeden sonra böyle değildir.
Bunu gerçekleştirmek için adımlar şunlardır. Bunlar elle uygulanan adımlardır çünkü onlar bir noktada elle doğrulamayı gerektirir.
- Yeniden düzenlemek için tabloya özel erişime sahip olduğunuzdan emin olun
- primary key sütununuzdaki (yani id), AUTO_INCREMENT ayarını kaldırın
- Yapı > indeksler içinde birincil anahtarınızı silin
- Birincil anahtar, AUTO_INCREMENT olarak yeni bir future_id sütunu oluşturun
- Tablonuza gözatın ve beklentinize denk gelen yeni artışları doğrulayın
- Eski id sütununuzu kaldırın
- future_id sütununu id olarak yeniden adlandırın
- Yapı > Sütunları taşı aracılığıyla yeni id sütununu taşıyın
6.39 Bir veritabanını, tabloyu, sütunu veya yordamı yeniden adlandırırken, kopyalarken veya taşırken “Yetkileri Ayarla” seçeneği nedir?¶
Bir veritabanını/tabloyu/sütunu/yordamı yeniden adlandırırken/kopyalarken/taşırken, MySQL kendi başına bu nesnelerle ilgili orijinal yetkileri ayarlamaz. Bu seçeneği seçerek, phpMyAdmin izin tablosunu ayarlayacak böylece kullanıcılar yeni öğeler üzerinde aynı yetkilere sahip olacak.
Örneğin: Bir kullanıcı ‘bob’@’localhost’, ‘id’ adlı bir sütun üzerinde bir ‘SELECT’ yetkisine sahip. Şimdi, eğer bu sütun ‘id_new’ olarak yeniden adlandırılırsa, MySQL, kendi başına, yeni sütun adı için sütun yetkilerini ayarlamaz. phpMyAdmin sizin için bu ayarlamayı otomatik olarak yapabilir.
Notlar:
- Bir veritabanı için yetkiler ayarlanırken, tüm veritabanı ile ilgili öğelerin (tablolar, sütunlar ve yordamlar) yetkileri ayrıca veritabanının yeni adına ayarlanır.
- Benzer şekilde, bir tablo için yetkiler ayarlanırken, yeni tablo içerisindeki tüm sütunların yetkileri ayrıca ayarlanır.
- Yetkiler ayarlanırken, işlemi uygulayan kullanıcı aşağıdaki yetkilere sahip olmak zorundadır:
- Şurada belirtilen tablolardaki SELECT, INSERT, UPDATE, DELETE yetkileri: mysql.`db`, mysql.`columns_priv`, mysql.`tables_priv`, mysql.`procs_priv`
- FLUSH yetkisi (GENEL)
Böylece, bu nesneleri yeniden adlandırırken/kopyalarken/taşırken olduğu gibi veritabanını/tabloyu/sütunu/yordamı çoğaltmak istiyorsanız, bu seçeneği işaretlediğinizden emin olun.
6.40 “SQL” sayfasında “Parametreleri bağla” onay kutusunu görüyorum. Parametreleştirilmiş SQL sorgularını nasıl yazabilirim?¶
4.5 sürümünden itibaren, phpMyAdmin, “SQL” sayfasındaki parametreleştirilmiş sorguları çalıştırması için kullanıcılara izin verir. Parametrelerin önüne iki nokta üst üste (:) koyulmalıdır ve “Parametreleri bağla” onay kutusu işaretlendiğinde bu parametreler tanımlanacaktır ve bu parametrelerin girdi alanları sunulacaktır. Bu alana girilen değerler çalıştırılmadan önce sorguda yerine koyulacaktır.
6.41 Eski MySQL sürümlerinden (5.7.6 öncesi) daha yeni MySQL sürümlerine (5.7.7+) aktarılan dökümler içe aktarılırken içe aktarma hataları alıyorum, ancak aynı eski sürümlere geri aktarıldığında sorunsuz çalışırlar mı ?¶
Eğer 5.7.7 öncesi MySQL sunucularından yeni MySQL sunucusu 5.7.7+ sürümlerine aktarılan dökümler içe aktarılırken #1031 - ‘table_name’ için tablo depolama motoru bu seçeneğe sahip değil gibi hatalar alıyorsanız, bu InnoDB tabloları ile ROW_FORMAT=FIXED desteklenmediği için olabilir. Dahası, innodb_strict_mode değeri bir uyarı ya da bir hata olarak bildirilmekteyse tanımlanmaktadır.
MySQL 5.7.9 sürümünden bu yana, innodb_strict_mode için varsayılan değer ON’dur ve CREATE TABLE veya ALTER TABLE gibi bir ifade ile karşılaşıldığında böylece bir hata oluşturmaktadır.
İçe aktarılırken böyle hataları önlemenin iki yolu vardır:
- İçe aktarma işlemine başlamadan önce innodb_strict_mode değerini OFF olarak değiştirmek ve içe aktarma işlemi başarılı olarak tamamlandıktan sonra ON olarak çevirmek.
- Bu iki şekilde elde edilebilir:
- ‘Değişkenler’ sayfasına gidin ve innodb_strict_mode değerini düzenleyin
- Sorguyu çalıştırın : SET GLOBAL `innodb_strict_mode = ‘[değer]’`
İçe aktarma işlemi bittikten sonra, innodb_strict_mode değerinin orijinal değerine sıfırlanması önerilir.
phpMyAdmin projesi¶
7.1 Bir hata buldum. Geliştiricileri nasıl haberdar edebilirim?¶
Sorunlar izleyicimiz <https://github.com/phpmyadmin/phpmyadmin/issues> adresinde bulunur. Güvenlik sorunları için geliştiricilere doğrudan e-posta göndermek için lütfen <https://www.phpmyadmin.net/security> adresindeki talimatlara bakın.
7.2 Mesajları yeni bir dile çevirmek veya varolan bir dile yükseltmek istiyorum, nereden başlıyayım?¶
Çevirilere açığız ve tüm ihtiyacınız olan dil yeteneklerine sahip olmanız. En kolay yolu çevrimiçi çeviri hizmetimizi kullanmaktır. Web sitemizdeki çeviri bölümünde çevirmek için tüm olasılıkları kontrol edebilirsiniz.
7.3 phpMyAdmin’in geliştirilmesine yardım etmek isterim. Nasıl yapmalıyım?¶
phpMyAdmin’in geliştirilmesi için her katkıya açığız. Web sitemizdeki katkı bölümünde katkıda bulunmak için tüm olasılıkları kontrol edebilirsiniz.
Ayrıca bkz.
Güvenlik¶
8.1 phpMyAdmin için verilen güvenlik uyarıları hakkında bilgiyi nereden alabilirim?¶
Lütfen <https://www.phpmyadmin.net/security/> adresine bakın.
8.2 phpMyAdmin’i deneme yanılma yöntemi saldırılarına karşı nasıl koruyabilirim?¶
Eğer Apache web sunucusu kullanıyorsanız, phpMyAdmin kimlik doğrulaması hakkındaki bilgiyi Apache ortamına aktarır ve Apache günlüklerinde kullanılabilir. Şimdilik iki değişken mevcuttur:
userID
- Şu anki aktif kullanıcının kullanıcı adı (oturum açmamış olmalılar).
userStatus
- Şu anki aktif kullanıcının durumu, bir tanesi
ok
(kullanıcı oturum açtı),mysql-denied
(MySQL, kullanıcı oturum açmasını reddetti),allow-denied
(kullanıcı, izin ver/reddet kuralları tarafından reddedildi),root-denied
(root yapılandırma içinde reddedildi),empty-denied
(boş parola reddedildi).
Apache için LogFormat
yönergesi aşağıdaki gibi görünebilir:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %{userID}n %{userStatus}n" pma_combined
Ondan sonra olası zorla girme girişimleri için herhangi bir günlük çözümleme aracı kullanabilirsiniz.
8.3 Neden belirli dosyalar doğrudan yüklenirken yol açıklamaları var?¶
Bu bir sunucu yapılandırma sorunudur. Bir üretim sitesinde display_errors
parametresini asla etkinleştirmeyin.
8.4 phpMyAdmin’den dışa aktarılan CSV dosyaları bir formül ekleme saldırısına izin verebilir.¶
Microsoft Excel gibi bir hesap tablosu programına aktarıldığında, bir CSV dosyası oluşturmak mümkündür, gelişigüzel komutların yürütülmesine olanak dahilinde izin verebilir.
phpMyAdmin tarafından oluşturulan CSV dosyaları olanak dahilinde bir formül gibi hesap tablosu programı tarafından yorumlanacak metin içerebilir, ancak biz bu alanların atlatılmasının uygun davranış olduğuna inanmıyoruz. Düzgün atlatmanın ve istenen bir metin çıktısı ile atlatılması gereken bir formül arasındaki farkı gözetmenin anlamı yoktur, ve CSV, işlev tanımları yine de yorumlanmaması gereken bir metin biçimidir. Biz bunu uzun uzun tartıştık ve bunun yerine girişte böyle bir veriyi düzgün bir şekilde ayrıştırmanın ve temizlemenin hesap tablosu programının sorumluluğu olduğunu hissettik.
Ayrıca Google benzer bir görünüme sahip.
Geliştirici Bilgileri¶
phpMyAdmin açık kaynaklıdır, bu yüzden katkıda bulunmak için davetlisiniz. Birçok büyük özellik diğer insanlar tarafından yazıldı ve siz de phpMyAdmin’i faydalı bir araç yapmak için yardım edebilirsiniz.
Web sitemizdeki katkı bölümünde katkıda bulunmak için tüm olasılıkları kontrol edebilirsiniz.
Güvenlik ilkesi¶
phpMyAdmin geliştirici ekibi mümkün olduğunca phpMyAdmin’i güvenli hale getirmek için çaba harcıyor. Ancak phpMyAdmin gibi bir web uygulaması bile hala bir dizi saldırılara karşı savunmasız olabilir ve kötüye kullanılabilecek yeni yollar hala keşfediliyor.
Her bildirilen güvenlik açığı için bir phpMyAdmin Güvenlik Duyurusu (PMASA) yayınlıyoruz ve bu, atanmış bir CVE kimliği de alıyor. Benzer güvenlik açıklarını tek PMASA’a gruplayabilmekteyiz (örn. birden çok XSS güvenlik açıkları, tek PMASA altında duyurulabilir).
Eğer bir güvenlik açığı bulduğunuzu düşünüyorsanız, lütfen bakınız Güvenlik sorunları bildirme.
Tipik güvenlik açıkları¶
Bu bölümde, kod tabanımızda görünebilir tipik güvenlik açıklarını anlatacağız. Bu liste, tamamı anlamına gelmez, tipik saldırı yüzeyini gösterme amaçlıdır.
Siteler arası betik çalıştırma (XSS)¶
phpMyAdmin kullanıcı verilerinin bir parçasını gösterdiğinde, örn. kullanıcının veritabanı içindeki birşey, tüm html özel karakterleri atlatılmalıdır. Bu atlatma bir yerlerde eksik kaldığında kötü niyetli bir kullanıcı, bu veritabanının başka bir kullanıcısını kandırmak için içinde birşey çalıştırarak özel olarak hazırlanmış içerik ile bir veritabanını doldurabilmekte. Bu, örneğin çok sayıda kötü şeyler yapacak bir parça JavaScript kodu olabilir.
phpMyAdmin tüm kullanıcı verilerini, tarayıcı için html içine işlenmeden önce atlatmaya çalışır.
Ayrıca bkz.
Siteler arası istek sahteciliği (CSRF)¶
Bir saldırgan phpMyAdmin içinde bazı eylemlere neden olmak için bir phpMyAdmin kullanıcısının bir bağlantıya tıklamasını sağlayarak kandırır. Bu bağlantı ya gönderilmiş eposta ya da birkaç rasgele web sitesi olabilir. Eğer başarılı olursa bu saldırgan kullanıcıların izinlerine sahip bazı eylemleri gerçekleştirebilecektir.
Bunu azaltmak için phpMyAdmin, hassas isteklerde gönderilmek üzere bir belirteç gerektirir. Buradaki fikir bir saldırganın, sunulan bağlantıya dahil edilen şu anki geçerli belirteci ortaya çıkaramamasıdır.
Belirteç her oturum açmada yeniden üretilir, böylece genellikle sadece sınırlı bir süre geçerlidir, saldırgan için geçerli bir tane elde etmeyi daha zor hale getirir.
Ayrıca bkz.
SQL ekleme¶
phpMyAdmin’in bütün amacı sql sorgularını uygulamaktır, bu ilk endişemiz değildir. SQL ekleme, mysql denetim bağlantısını ilgilendirdiğinde ise bizim için hassastır. Bu denetim bağlantısı, oturum açmış kullanıcıyı ortaya çıkarmayan ilave izinlere sahip olabilir. Örn. phpMyAdmin yapılandırma depolaması’na erişim.
(Yönetimsel) Sorgulara dahil kullanıcı verileri her zaman DatabaseInterface::quoteString() ile çalıştırılmalıdır.
Ayrıca bkz.
Deneme yanılma saldırısı¶
phpMyAdmin kendi başına hiçbir şekilde kimlik doğrulaması girişimleri sınırını değerlendirmez. Buna, böyle şeylere karşı korumanın hiçbir yolunun olmadığı durum bilgisi bulunmayan ortamda çalışma ihtiyacı neden olur.
Bunu azaltmak için Captcha kullanabilir veya fail2ban gibi harici araçlardan faydalanabilirsiniz, bu, phpMyAdmin kurulumunuzun güvenliğini sağlama konusunda daha ayrıntılı açıklanmıştır.
Ayrıca bkz.
Güvenlik sorunları bildirme¶
phpMyAdmin programlama kodunda bir güvenlik sorunu buldunuz mu, bunu ilk başta yayınlamadan önce lütfen phpMyAdmin güvenlik ekibi ile iletişime geçin. Bu şekilde bir düzeltme hazırlayabilir ve düzeltmeyi sizin duyurunuz ile birlikte yayınlarız. Ayrıca güvenlik duyurularımızda sizden övgüyle bahsedilecektir. Bildiriminize aşağıdaki parmak izini dahil ederek PGP anahtar kimliği DA68AB39218AB947
ile isteğe bağlı olarak şifreleyebilirsiniz:
pub 4096R/DA68AB39218AB947 2016-08-02
Key fingerprint = 5BAD 38CF B980 50B9 4BD7 FB5B DA68 AB39 218A B947
uid phpMyAdmin Security Team <security@phpmyadmin.net>
sub 4096R/5E4176FB497A31F7 2016-08-02
Anahtar, ya anahtar sunucusundan ya da indirme sunucumuzda bulunan mevcut phpMyAdmin keyring dosyasından veya Keybase kullanarak elde edilebilir.
phpMyAdmin’i daha güvenli hale getirmek için iyileştirmeye yönelik öneriniz olmalı, lütfen bunu sorun izleyici’mize bildirin. Varolan iyileştirme önerileri sağlamlaştırılan etiketleme aracılığıyla bulunabilir.
phpMyAdmin dağıtımı ve paketlemesi¶
Bu belge Linux dağıtımı ya da web sunucusu ve MySQL sunucusunu içeren bazı hepsi bir arada paketler gibi phpMyAdmin’i diğer yazılımların içinde yeniden dağıtmak isteyen diğer insanlara tavsiye parçalarını vermeye yöneliktir.
Genel olarak, libraries/vendor_config.php
içinde bazı temel görünüşleri (bazı dosyalara olan yollar ve davranış) özelleştirebilirsiniz.
Örneğin eğer kur betiğinin var dizini içinde bir yapılandırma dosyası oluşturmasını istiyorsanız, SETUP_CONFIG_FILE
yönergesini /var/lib/phpmyadmin/config.inc.php
olarak değiştirin ve muhtemelen ayrıca dizin yazılabilir kontrolünü atlamak isteyeceksiniz, bu yüzden SETUP_DIR_WRITABLE
yönergesini false olarak ayarlayın.
Harici kütüphaneler¶
phpMyAdmin birkaç harici kütüphane içerir, eğer mevcutsa sisteminkilerle onları değiştirmek isteyebilirsiniz ama lütfen unutmayın bizim gönderimiz ile verdiğiniz sürümün uyumlu olup olmadığını denemelisiniz.
Harici kütüphanelerin şu anki bilinen listesi:
- js/vendor
- jQuery js çatısı kütüphaneleri ve çeşitli js kütüphaneleri.
- vendor/
- İndirme kiti, bağımlılıklar olarak çeşitli Composer paketleri içerir.
Belirli dosyalar LİSANSLAR¶
phpMyAdmin dağıtılmış temaları, lisans kapsamında bazı içerikler içerir.
- Original ve pmahomme temalarının simgeleri, Silk Icons’tan alınmıştır.
- Metro temasının bazı simgeleri Silk Icons’tan alınmıştır.
- themes/*/img/b_rename.svg, Android L Simge Paketi Koleksiyonu bir Icons8’dir. Simge rename.
- themes/metro/img/user.svg, bir IcoMoon user’dır
CC BY 4.0 veya GPL
Satıcılar için lisanslar¶
- Silk Icons, CC BY 2.5 veya CC BY 3.0 lisansları altındadır.
- Icons8’in rename simgesi “public domain” (CC0 1.0) lisansı kapsamındadır.
- IcoMoon Free “CC BY 4.0 veya GPL” kapsamındadır.
Telif hakkı¶
Copyright (C) 1998-2000 Tobias Ratschiller <tobias_at_ratschiller.com>
Copyright (C) 2001-2018 Marc Delisle <marc_at_infomarc.info>
Olivier Müller <om_at_omnis.ch>
Robin Johnson <robbat2_at_users.sourceforge.net>
Alexander M. Turek <me_at_derrabus.de>
Michal Čihař <michal_at_cihar.com>
Garvin Hicking <me_at_supergarv.de>
Michael Keck <mkkeck_at_users.sourceforge.net>
Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
[check credits for more details]
Bu program ücretsiz bir yazılımdır; Ücretsiz Yazılım Vakfı (Free Software Foundation) tarafından yayımlandığı gibi, GNU Genel Kamu Lisansı (General Public License) sürüm 2 şartları altında yeniden dağıtabilir ve/veya değiştirebilirsiniz.
Bu program faydalı olacağı umuduyla dağıtılmaktadır ama HERHANGİ BİR GARANTİSİ YOKTUR; BELİRLİ BİR AMACA veya TİCARETE UYGUNLUĞUNUN dolaylı bile garantisi yoktur. Daha fazla ayrıntı için GNU Genel Kamu Lisansı’na bakın.
Bu program ile GNU Genel Kamu Lisansı kopyasını beraberinde almalısınız. Eğer almadıysanız, <https://www.gnu.org/licenses/> adresine bakın.
Üçüncü taraf lisanslar¶
phpMyAdmin ilgili lisanslarının altında gelen birkaç üçüncü taraf kütüphaneleri içerir.
jQuery’nin lisansı, js/vendor/jquery/ altında tuttuğumuz dosyalar (MIT|GPL) lisanslıdır, her lisansın bir kopyası bu depo içinde mevcuttur (GPL, js/vendor/jquery/MIT-LICENSE.txt içinde LICENSE, MIT olarak mevcuttur).
İndirme kiti ilave olarak birkaç composer kütüphanesi içerir. Vendor/ dizini içinde satıcının lisans bilgilerine bakın.
Katkıda Bulunanlar¶
Katkıda Bulunanlar, kronolojik sırada¶
- Tobias Ratschiller <tobias_at_ratschiller.com>
- phpMyAdmin projesinin yaratıcısı
- 1998’den 2000 yazına kadar sürdüren
- Marc Delisle <marc_at_infomarc.info>
- Aralık 1998’de çoklu dil sürümü
- çeşitli onarımlar ve iyileştirilmeler
- SQL analizcisinin ilk sürümü (çoğunun)
- 2001’den 2015’e kadar geliştiren
- Olivier Müller <om_at_omnis.ch>
- SourceForge phpMyAdmin projesine Mart 2001’de başladı
- yeni özellikleri ve hata düzeltmeleri ile farklı varolan CVS ağaçlarının eşitlenmesi
- çoklu dil iyileştirilmeleri, dinamik dil seçimi
- birçok hata düzeltmeleri ve iyileştirmeler
- Loïc Chapeaux <lolo_at_phpheaven.net>
- JavaScript, DHTML ve DOM unsurlarını yeniden yazdı ve en iyi hale getirdi
- betikler yeniden yazdı böylece PEAR kodlama standartlarına uygun oldu ve XHTML1.0 ve CSS2 uyumlu kodlar üretti
- gelişmiş dil algılama sistemi
- birçok hata düzeltmeleri ve iyileştirmeler
- Robin Johnson <robbat2_at_users.sourceforge.net>
- Armel Fauveau <armel.fauveau_at_globalis-ms.com>
- yer imleri özelliği
- çoklu döküm özelliği
- gzip döküm özelliği
- zip döküm özelliği
- Geert Lund <glund_at_silversoft.dk>
- çeşitli onarımlar
- phpwizard.net adresindeki eski phpMyAdmin kullanıcıları forumunun moderatörü
- Korakot Chaovavanich <korakot_at_iname.com>
- “yeni bir satır olarak ekle” özelliği
- Pete Kelly <webmaster_at_trafficg.com>
- döküm kodunu yeniden yazdı ve düzeltti
- hata düzeltmeleri
- Steve Alberty <alberty_at_neptunlabs.de>
- PHP4 için döküm kodunu yeniden yazdı
- mySQL tablo istatistikleri
- hata düzeltmeleri
- Benjamin Gandon <gandon_at_isia.cma.fr>
- 2.1.0.1 sürümünün asıl yazarı
- hata düzeltmeleri
- Alexander M. Turek <me_at_derrabus.de>
- MySQL 4.0 / 4.1 / 5.0 uyumluluğu
- MySQLi desteği ile özet veritabanı arayüzü (PMA_DBI)
- yetkiler yönetimi
- XML dışa aktarımları
- çeşitli özellikler ve onarımlar
- Almanca dil dosyası güncellemeleri
- Mike Beck <mike.beck_at_web.de>
- QBE içindeki otomatik birleştirmeler
- baskı görünümü içinde bağlantılar sütunu
- İlişki görünümü
- Michal Čihař <michal_at_cihar.com>
- geliştirilmiş indeks oluşturma/görüntüsü özelliği
- MySQL’den farklı HTML için karakter grubu kullanma özelliği
- dışa aktarma özelliği iyileştirilmeleri
- çeşitli özellikler ve onarımlar
- Çekçe dil dosyası güncellemeleri
- phpMyAdmin için şu anki web sitesini oluşturan
- “phpMyAdmin için MySQL Form Oluşturucusu” Christophe Gesché (https://sourceforge.net/projects/phpmysqlformgen/)
- çoklu tablo baskı görünümleri için yama önerdi
- Garvin Hicking <me_at_supergarv.de>
- tablo satırlarının dikey görünümü için yama yaptı
- Javascript tabanlı Sorgu penceresi + SQL geçmişini yaptı
- sütun/vt açıklamalarının iyileştirilmesi
- sütunlar için (MIME)-Dönüşümleri
- sol çerçevede Veritabanları için özel kod adı kullanma
- sıra düzenli/iç içe tablo görüntüleme
- PDF ilişkilerinin WYSIWYG-dağıtımı için PDF-karalama panosu
- yeni simge grupları
- sütun özellikleri sayfasının dikey görüntülenmesi
- bazı hata düzeltmeleri, özellikler, destek, Almanca dil ilaveleri
- Yukihiro Kawada <kawada_at_den.fujifilm.co.jp>
- japonca çin harfi kodlama dönüştürmesi özelliği
- Piotr Roszatycki <d3xter_at_users.sourceforge.net> ve Dan Wilson
- Tanımlama bilgisi kimlik doğrulaması kipi
- Axel Sander <n8falke_at_users.sourceforge.net>
- tablo ilişkisi bağlantıları özelliği
- Maxime Delorme <delorme.maxime_at_free.fr>
- PDF şeması çıktısı, aynı zamanda “FPDF” kütüphanesi (<http://www.fpdf.org/> adresine bakın) için Olivier Plathey’e, “UFPDF” kütüphanesi için Steven Wittens’a ve “TCPDF” kütüphanesi (<https://tcpdf.org/> adresine bakın) için Nicola Asuni’ye teşekkür ederiz.
- Olof Edlund <olof.edlund_at_upright.se>
- SQL onaylayıcısı sunucusu
- Ivan R. Lanin <ivanlanin_at_users.sourceforge.net>
- phpMyAdmin logosu (Haziran 2004’e kadar)
- Mike Cochrane <mike_at_graftonhall.co.nz>
- Horde projesinden blowfish kütüphanesi (4.0 yayımında geri alındı)
- Marcel Tschopp <ne0x_at_users.sourceforge.net>
- mysqli desteği
- birçok hata düzeltmeleri ve iyileştirmeler
- Nicola Asuni (Tecnick.com)
- TCPDF kütüphanesi (<https://tcpdf.org>)
- Michael Keck <mkkeck_at_users.sourceforge.net>
- 2.6.0 için yeniden tasarlama
- phpMyAdmin yelkenli logosu (Haziran 2004)
- Mathias Landhäußer
- Konferanslarda temsilcilik
- Sebastian Mendel <cybot_tm_at_users.sourceforge.net>
- arayüz iyileştirilmeleri
- çeşitli hata düzeltmeleri
- Ivan A Kirillov
- yeni ilişkiler Tasarımcısı
- Raj Kissu Rajandran (Google Summer of Code 2008)
- BLOB akışı desteği (4.0 yayımında geri alındı)
- Piotr Przybylski (Google Summer of Code 2008, 2010 ve 2011)
- gelişmiş kur betiği
- kullanıcı tercihleri
- Drizzle desteği
- Derek Schaefer (Google Summer of Code 2009)
- Gelişmiş içe aktarma sistemi
- Alexander Rutkowski (Google Summer of Code 2009)
- İzleme mekanizması
- Zahra Naeem (Google Summer of Code 2009)
- Eşitleme özelliği (4.0 yayımında kaldırıldı)
- Tomáš Srnka (Google Summer of Code 2009)
- Çoğaltma desteği
- Muhammad Adnan (Google Summer of Code 2010)
- İlişki şemasını çoklu biçimlere aktarma
- Lori Lee (Google Summer of Code 2010)
- Kullanıcı arayüzü iyileştirilmeleri
- ENUM/SET düzenleyicisi
- Dışa/İçe aktarma için basitleştirilmiş arayüz
- Ninad Pundalik (Google Summer of Code 2010)
- Arayüzü AJAX ile donatma
- Martynas Mickevičius (Google Summer of Code 2010)
- Çizelgeler
- Barrie Leslie
- PBMS PHP uzantısıyla BLOB akışı desteği (4.0 yayımında geri alındı)
- Ankit Gupta (Google Summer of Code 2010)
- Görsel sorgu yaratıcısı
- Madhura Jayaratne (Google Summer of Code 2011)
- OpenGIS desteği
- Ammar Yasir (Google Summer of Code 2011)
- Odaklı arama
- Aris Feryanto (Google Summer of Code 2011)
- Gözatma kipi iyileştirmeleri
- Thilanka Kaushalya (Google Summer of Code 2011)
- AJAXlı bildirim
- Tyron Madlener (Google Summer of Code 2011)
- Durum sayfası için sorgu istatistikleri ve çizelgeleri
- Zarubin Stas (Google Summer of Code 2011)
- Otomatikleştirilmiş deneme
- Rouslan Placella (Google Summer of Code 2011 ve 2012)
- Saklanan Yordamlar, Tetikleyiciler ve Olaylar için gelişmiş destek
- İtalyanca çeviri güncellemeleri
- Çerçevelerin kaldırılması, yeni gezinti
- Dieter Adriaenssens
- Çeşitli hata düzeltmeleri
- Felemenkçe çeviri güncellemeleri
- Alex Marin (Google Summer of Code 2012)
- Yeni eklentiler ve özellikler sistemi
- Thilina Buddika Abeyrathna (Google Summer of Code 2012)
- Yeniden düzenleme
- Atul Pratap Singh (Google Summer of Code 2012)
- Yeniden düzenleme
- Chanaka Indrajith (Google Summer of Code 2012)
- Yeniden düzenleme
- Yasitha Pandithawatta (Google Summer of Code 2012)
- Otomatikleştirilmiş deneme
- Jim Wigginton (phpseclib.sourceforge.net)
- phpseclib
- Bin Zu (Google Summer of Code 2013)
- Yeniden düzenleme
- Supun Nakandala (Google Summer of Code 2013)
- Yeniden düzenleme
- Mohamed Ashraf (Google Summer of Code 2013)
- AJAX hata bildirimi
- Adam Kang (Google Summer of Code 2013)
- Otomatikleştirilmiş deneme
- Ayush Chaudhary (Google Summer of Code 2013)
- Otomatikleştirilmiş deneme
- Kasun Chathuranga (Google Summer of Code 2013)
- Arayüz iyileştirilmeleri
- Hugues Peccatte
- Örnekle sorgulama yükle/kaydet (veritabanı arama yer imleri)
- Smita Kumari (Google Summer of Code 2014)
- Sütunların merkezi listesi
- Gelişmiş tablo yapısı (normalleştirme)
- Ashutosh Dhundhara (Google Summer of Code 2014)
- Arayüz iyileştirilmeleri
- Dhananjay Nakrani (Google Summer of Code 2014)
- PHP hata bildirimi
- Edward Cheng (Google Summer of Code 2014)
- SQL Sorgu Konsolu
- Kankanamge Bimal Yashodha (Google Summer of Code 2014)
- Yeniden düzenleme: Tasarımcı/şema tümleştirme
- Chirayu Chiripal (Google Summer of Code 2014)
- Özel alan işleyicileri (Girdi tabanlı MIME dönüşümleri)
- Tablo/sütun adı değişiklikleri ile birlikte dışa aktarma
- Dan Ungureanu (Google Summer of Code 2015)
- Yeni ayrıştırıcı ve çözümleyici
- Nisarg Jhaveri (Google Summer of Code 2015)
- Sayfa ile ilgili ayarlar
- Konsola SQL hata ayıklama bütünleştirmesi
- Diğer Kullanıcı Arayüzü iyileştirmeleri
- Deven Bansod (Google Summer of Code 2015)
- CSS kullanarak yazdırma görünümü
- Diğer Kullanıcı Arayüzü iyileştirmeleri ve yeni özellikler
- Deven Bansod (Google Summer of Code 2017)
- Hata Bildirme Sunucusu iyileştirilmeleri
- İyileştirilmiş Selenyum denemesi
- Manish Bisht (Google Summer of Code 2017)
- Mobil kullanıcı arayüzü
- Satır içi JavaScript kodu kaldırma
- Diğer Kullanıcı Arayüzü iyileştirmeleri
- Raghuram Vadapalli (Google Summer of Code 2017)
- Çok tablolu sorgu arayüzü
- Diğer veritabanlardan gelen tablolar ile çalışmak için Tasarımcıya izin ver
- Diğer Kullanıcı Arayüzü iyileştirmeleri
- Maurício Meneghini Fauth
- JavaScript çekirdeği için büyük iyileştirmeler ve yükseltmeler
- JavaScript kütüphanesi işlevini modernleştirme
- Şablon oluşturmayı modernleştirme ve Twig tanıtımı
- William Desportes
- PHPStan tabanlı kodlama stili iyileştirmeleri
- Harici MySQL ve MariaDB belgelerine bağlantıları iyileştirme
- Çok sayıda diğer hata düzeltmeleri
- Emanuel Bronshtein
- Kapsamlı güvenlik değerlendirmesi ve öneriler
- Lakshya Arora (Google Summer of Code 2018)
- Çeşitli şu iyileştirmeler:
- Yerel depolama ile kullanıcı tercihlerini bütünleştirme
- Oturum sona ermesinden sonra kalıcı bir oturum açma kullanımı
- CHECK CONSTRAINTS için destek ekleme
- ve daha fazlası!
- Çeşitli şu iyileştirmeler:
- Saksham Gupta (Google Summer of Code 2018)
- Otomatik tema oluşturucu aracı
- Leonardo Strozzi (Google Summer of Code 2018)
- Twig şablonlarını yeniden düzenleme ve diğer dahili kod iyileştirmeleri
- Piyush Vijay (Google Summer of Code 2018)
- Eslint and Jsdoc yanı sıra WebPack, Babil ve Yarn tanıtımı dahil olmak üzere JavaScript kodu modernleştirme
Ve ayrıca 2.1.0 sürümünden bu yana yeni bir dil için destek, hata düzeltmeleri, küçük değişiklikler veya geliştirmeler ile katkıda bulunan aşağıdaki insanlar:
Bora Alioğlu, 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”.
Çevirmenler¶
Aşağıdaki insanlar phpMyAdmin’in çevirisine katkıda bulunmuştur:
Arnavutça
- Arben Çokaj <acokaj_at_shkoder.net>
Arapça
- Ahmed Saleh Abd El-Raouf Ismae <a.saleh.ismael_at_gmail.com>
- Ahmed Saad <egbrave_at_hotmail.com>
- hassan mokhtari <persiste1_at_gmail.com>
Ermenice
- Andrey Aleksanyants <aaleksanyants_at_yahoo.com>
Azerice
- Mircəlal <01youknowme_at_gmail.com>
- Huseyn <huseyn_esgerov_at_mail.ru>
- Sevdimali İsa <sevdimaliisayev_at_mail.ru>
- Jafar <sharifov_at_programmer.net>
Beyaz Rusça
- Viktar Palstsiuk <vipals_at_gmail.com>
Bulgarca
- Boyan Kehayov <bkehayov_at_gmail.com>
- Valter Georgiev <blagynchy_at_gmail.com>
- Valentin Mladenov <hudsonvsm_at_gmail.com>
- P <plamen_mbx_at_yahoo.com>
- krasimir <vip_at_krasio-valia.com>
Katalanca
- josep constanti <jconstanti_at_yahoo.es>
- Xavier Navarro <xvnavarro_at_gmail.com>
Çince (Çin)
- Vincent Lau <3092849_at_qq.com>
- Zheng Dan <clanboy_at_163.com>
- disorderman <disorderman_at_qq.com>
- Rex Lee <duguying2008_at_gmail.com>
- <fundawang_at_gmail.com>
- popcorner <memoword_at_163.com>
- Yizhou Qiang <qyz.yswy_at_hotmail.com>
- zz <tczzjin_at_gmail.com>
- Terry Weng <wengshiyu_at_gmail.com>
- whh <whhlcj_at_126.com>
Çince (Tayvan)
- Albert Song <albb0920_at_gmail.com>
- Chien Wei Lin <cwlin0416_at_gmail.com>
- Peter Dave Hello <xs910203_at_gmail.com>
Kologniaca
- Purodha <publi_at_web.de>
Çekçe
- Aleš Hakl <ales_at_hakl.net>
- Dalibor Straka <dalibor.straka3_at_gmail.com>
- Martin Vidner <martin_at_vidner.net>
- Ondra Šimeček <ondrasek.simecek_at_gmail.com>
- Jan Palider <palider_at_seznam.cz>
- Petr Kateřiňák <petr.katerinak_at_gmail.com>
Danca
- Aputsiaĸ Niels Janussen <aj_at_isit.gl>
- Dennis Jakobsen <dennis.jakobsen_at_gmail.com>
- Jonas <jonas.den.smarte_at_gmail.com>
- Claus Svalekjaer <just.my.smtp.server_at_gmail.com>
Felemenkçe
- Voogt <a.voogt_at_hccnet.nl>
- dingo thirteen <dingo13_at_gmail.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Dieter Adriaenssens <ruleant_at_users.sourceforge.net>
- Niko Strijbol <strijbol.niko_at_gmail.com>
İngilizce (Birleşik Krallık)
- Dries Verschuere <dries.verschuere_at_outlook.com>
- Francisco Rocha <j.francisco.o.rocha_at_zoho.com>
- Marc Delisle <marc_at_infomarc.info>
- Marek Tomaštík <tomastik.m_at_gmail.com>
Esperanto
- Eliovir <eliovir_at_gmail.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
Estçe
- Kristjan Räts <kristjanrats_at_gmail.com>
Fince
- Juha Remes <jremes_at_outlook.com>
- Lari Oesch <lari_at_oesch.me>
Fransızca
- Marc Delisle <marc_at_infomarc.info>
Farsça
- Robin van der Vliet <info_at_robinvandervliet.nl>
Galiççe
- Xosé Calvo <xosecalvo_at_gmail.com>
Almanca
- Julian Ladisch <github.com-t3if_at_ladisch.de>
- Jan Erik Zassenhaus <jan.zassenhaus_at_jgerman.de>
- Lasse Goericke <lasse_at_mydom.de>
- Matthias Bluthardt <matthias_at_bluthardt.org>
- Michael Koch <michael.koch_at_enough.de>
- Ann + J.M. <phpMyAdmin_at_ZweiSteinSoft.de>
- <pma_at_sebastianmendel.de>
- Phillip Rohmberger <rohmberger_at_hotmail.de>
- Hauke Henningsen <sqrt_at_entless.org>
Yunanca
- Παναγιώτης Παπάζογλου <papaz_p_at_yahoo.com>
İbranice
- Moshe Harush <mmh15_at_windowslive.com>
- Yaron Shahrabani <sh.yaron_at_gmail.com>
- Eyal Visoker <visokereyal_at_gmail.com>
Hintçe
- Atul Pratap Singh <atulpratapsingh05_at_gmail.com>
- Yogeshwar <charanyogeshwar_at_gmail.com>
- Deven Bansod <devenbansod.bits_at_gmail.com>
- Kushagra Pandey <kushagra4296_at_gmail.com>
- Nisarg Jhaveri <nisargjhaveri_at_gmail.com>
- Roohan Kazi <roohan_cena_at_yahoo.co.in>
- Yugal Pantola <yug.scorpio_at_gmail.com>
Macarca
- Akos Eros <erosakos02_at_gmail.com>
- Dániel Tóth <leedermeister_at_gmail.com>
- Szász Attila <undernetangel_at_gmail.com>
- Balázs Úr <urbalazs_at_gmail.com>
Endonezce
- Deky Arifianto <Deky40_at_gmail.com>
- Andika Triwidada <andika_at_gmail.com>
- Dadan Setia <da2n_s_at_yahoo.co.id>
- Dadan Setia <dadan.setia_at_gmail.com>
- Yohanes Edwin <edwin_at_yohanesedwin.com>
- Fadhiil Rachman <fadhiilrachman_at_gmail.com>
- Benny <tarzq28_at_gmail.com>
- Tommy Surbakti <tommy_at_surbakti.net>
- Zufar Fathi Suhardi <zufar.bogor_at_gmail.com>
Interlingua
- Giovanni Sora <g.sora_at_tiscali.it>
İtalyanca
- Francesco Saverio Giacobazzi <francesco.giacobazzi_at_ferrania.it>
- Marco Pozzato <ironpotts_at_gmail.com>
- Stefano Martinelli <stefano.ste.martinelli_at_gmail.com>
Japonca
- k725 <alexalex.kobayashi_at_gmail.com>
- Hiroshi Chiyokawa <hiroshi.chiyokawa_at_gmail.com>
- Masahiko HISAKAWA <orzkun_at_ageage.jp>
- worldwideskier <worldwideskier_at_yahoo.co.jp>
Kannada dili
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Shameem Ahmed A Mulla <shameem.sam_at_gmail.com>
Korece
- Bumsoo Kim <bskim45_at_gmail.com>
- Kyeong Su Shin <cdac1234_at_gmail.com>
- Dongyoung Kim <dckyoung_at_gmail.com>
- Myung-han Yu <greatymh_at_gmail.com>
- JongDeok <human.zion_at_gmail.com>
- Yong Kim <kim_at_nhn.com>
- 이경준 <kyungjun2_at_gmail.com>
- Seongki Shin <skshin_at_gmail.com>
- Yoon Bum-Jong <virusyoon_at_gmail.com>
- Koo Youngmin <youngminz.kr_at_gmail.com>
Sorani Kürtçe
- Alan Hilal <alan.hilal94_at_gmail.com>
- Aso Naderi <aso.naderi_at_gmail.com>
- muhammad <esy_vb_at_yahoo.com>
- Zrng Abdulla <zhyarabdulla94_at_gmail.com>
Litvanyaca
- Latvian TV <dnighttv_at_gmail.com>
- Edgars Neimanis <edgarsneims5092_at_inbox.lv>
- Ukko <perkontevs_at_gmail.com>
Limburgça
- Robin van der Vliet <info_at_robinvandervliet.nl>
Litvanyaca
- Vytautas Motuzas <v.motuzas_at_gmail.com>
Malayca
- Amir Hamzah <amir.overlord666_at_gmail.com>
- diprofinfiniti <anonynuine-999_at_yahoo.com>
Nepalce
- Nabin Ghimire <nnabinn_at_hotmail.com>
Norveçce (Bokmael)
- Børge Holm-Wennberg <borge947_at_gmail.com>
- Tor Stokkan <danorse_at_gmail.com>
- Espen Frøyshov <efroys_at_gmail.com>
- Kurt Eilertsen <kurt_at_kheds.com>
- Christoffer Haugom <ph3n1x.nobody_at_gmail.com>
- Sebastian <sebastian_at_sgundersen.com>
- Tomas <tomas_at_tomasruud.com>
Farsça
- ashkan shirian <ashkan.shirian_at_gmail.com>
- HM <goodlinuxuser_at_chmail.ir>
Lehçe
- Andrzej <andrzej_at_kynu.pl>
- Przemo <info_at_opsbielany.waw.pl>
- Krystian Biesaga <krystian4842_at_gmail.com>
- Maciej Gryniuk <maciejka45_at_gmail.com>
- Michał VonFlynee <vonflynee_at_gmail.com>
Portekizce
- Alexandre Badalo <alexandre.badalo_at_sapo.pt>
- João Rodrigues <geral_at_jonilive.com>
- Pedro Ribeiro <p.m42.ribeiro_at_gmail.com>
- Sandro Amaral <sandro123iv_at_gmail.com>
Portekizce (Brezilya)
- Alex Rohleder <alexrohleder96_at_outlook.com>
- bruno mendax <brunomendax_at_gmail.com>
- Danilo GUia <danilo.eng_at_globomail.com>
- Douglas Rafael Morais Kollar <douglas.kollar_at_pg.df.gov.br>
- Douglas Eccker <douglaseccker_at_hotmail.com>
- Ed Jr <edjacobjunior_at_gmail.com>
- Guilherme Souza Silva <g.szsilva_at_gmail.com>
- Guilherme Seibt <gui_at_webseibt.net>
- Helder Santana <helder.bs.santana_at_gmail.com>
- Junior Zancan <jrzancan_at_hotmail.com>
- Luis <luis.eduardo.braschi_at_outlook.com>
- Marcos Algeri <malgeri_at_gmail.com>
- Marc Delisle <marc_at_infomarc.info>
- Renato Rodrigues de Lima Júnio <renatomdd_at_yahoo.com.br>
- Thiago Casotti <thiago.casotti_at_uol.com.br>
- Victor Laureano <victor.laureano_at_gmail.com>
- Vinícius Araújo <vinipitta_at_gmail.com>
- Washington Bruno Rodrigues Cav <washingtonbruno_at_msn.com>
- Yan Gabriel <yansilvagabriel_at_gmail.com>
Pencapça
- Robin van der Vliet <info_at_robinvandervliet.nl>
Romence
- Alex <amihaita_at_yahoo.com>
- Costel Cocerhan <costa1988sv_at_gmail.com>
- Ion Adrian-Ionut <john_at_panevo.ro>
- Raul Molnar <molnar.raul_at_wservices.eu>
- Silinmiş Kullanıcı <noreply_at_weblate.org>
- Stefan Murariu <stefan.murariu_at_yahoo.com>
Rusça
- Andrey Aleksanyants <aaleksanyants_at_yahoo.com>
- <ddrmoscow_at_gmail.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Хомутов Иван Сергеевич <khomutov.ivan_at_mail.ru>
- Alexey Rubinov <orion1979_at_yandex.ru>
- Олег Карпов <salvadoporjc_at_gmail.com>
- Egorov Artyom <unlucky_at_inbox.ru>
Sırpça
- Smart Kid <kidsmart33_at_gmail.com>
Sinhala dili
- Madhura Jayaratne <madhura.cj_at_gmail.com>
Slovakça
- Martin Lacina <martin_at_whistler.sk>
- Patrik Kollmann <parkourpotex_at_gmail.com>
- Jozef Pistej <pistej2_at_gmail.com>
Slovence
- Domen <mitenem_at_outlook.com>
İspanyolca
- Daniel Hinostroza, MD <phpmyadmin_at_cerebroperiferico.com>
- Luis García Sevillano <floss.dev_at_gmail.com>
- Franco <fulanodetal.github1_at_openaliasbox.org>
- Luis Ruiz <luisan00_at_hotmail.com>
- Macofe <macofe.languagetool_at_gmail.com>
- Matías Bellone <matiasbellone+weblate_at_gmail.com>
- Rodrigo A. <ra4_at_openmailbox.org>
- FAMMA TV NOTICIAS MEDIOS DE CO <revistafammatvmusic.oficial_at_gmail.com>
- Ronnie Simon <ronniesimonf_at_gmail.com>
İsveççe
- Anders Jonsson <anders.jonsson_at_norsjovallen.se>
Tamilce
- கணேஷ் குமார் <GANESHTHEONE_at_gmail.com>
- Achchuthan Yogarajah <achch1990_at_gmail.com>
- Rifthy Ahmed <rifthy456_at_gmail.com>
Tayca
- <nontawat39_at_gmail.com>
- Somthanat W. <somthanat_at_gmail.com>
Türkçe
- Burak Yavuz <hitowerdigit_at_hotmail.com>
Ukraynaca
- Сергій Педько <nitrotoll_at_gmail.com>
- Igor <vmta_at_yahoo.com>
- Vitaliy Perekupka <vperekupka_at_gmail.com>
Vietnamca
- Bao Phan <baophan94_at_icloud.com>
- Xuan Hung <mr.hungdx_at_gmail.com>
- Bao trinh minh <trinhminhbao_at_gmail.com>
Batı Flamanca
- Robin van der Vliet <info_at_robinvandervliet.nl>
Belge çevirmenleri¶
Aşağıdaki insanlar phpMyAdmin belgelerinin çevirisine katkıda bulunmuştur:
Arnavutça
- Arben Çokaj <acokaj_at_shkoder.net>
Arapça
- Ahmed El Azzabi <ahmedtek1993_at_gmail.com>
- Omar Essam <omar_2412_at_live.com>
Ermenice
- Andrey Aleksanyants <aaleksanyants_at_yahoo.com>
Azerice
- Mircəlal <01youknowme_at_gmail.com>
- Sevdimali İsa <sevdimaliisayev_at_mail.ru>
Katalanca
- josep constanti <jconstanti_at_yahoo.es>
- Joan Montané <joan_at_montane.cat>
- Xavier Navarro <xvnavarro_at_gmail.com>
Çince (Çin)
- Vincent Lau <3092849_at_qq.com>
- 罗攀登 <6375lpd_at_gmail.com>
- disorderman <disorderman_at_qq.com>
- ITXiaoPang <djh1017555_at_126.com>
- tunnel213 <tunnel213_at_aliyun.com>
- Terry Weng <wengshiyu_at_gmail.com>
- whh <whhlcj_at_126.com>
Çince (Tayvan)
- Chien Wei Lin <cwlin0416_at_gmail.com>
- Peter Dave Hello <xs910203_at_gmail.com>
Çekçe
- Aleš Hakl <ales_at_hakl.net>
- Michal Čihař <michal_at_cihar.com>
- Jan Palider <palider_at_seznam.cz>
- Petr Kateřiňák <petr.katerinak_at_gmail.com>
Danca
- Aputsiaĸ Niels Janussen <aj_at_isit.gl>
- Claus Svalekjaer <just.my.smtp.server_at_gmail.com>
Felemenkçe
- Voogt <a.voogt_at_hccnet.nl>
- dingo thirteen <dingo13_at_gmail.com>
- Dries Verschuere <dries.verschuere_at_outlook.com>
- Robin van der Vliet <info_at_robinvandervliet.nl>
- Stefan Koolen <nast3zz_at_gmail.com>
- Ray Borggreve <ray_at_datahuis.net>
- Dieter Adriaenssens <ruleant_at_users.sourceforge.net>
- Tom Hofman <tom.hofman_at_gmail.com>
Estçe
- Kristjan Räts <kristjanrats_at_gmail.com>
Fince
- Juha <jremes_at_outlook.com>
Fransızca
- Cédric Corazza <cedric.corazza_at_wanadoo.fr>
- Étienne Gilli <etienne.gilli_at_gmail.com>
- Marc Delisle <marc_at_infomarc.info>
- Donavan_Martin <mart.donavan_at_hotmail.com>
Farsça
- Robin van der Vliet <info_at_robinvandervliet.nl>
Galiççe
- Xosé Calvo <xosecalvo_at_gmail.com>
Almanca
- Daniel <d.gnauk89_at_googlemail.com>
- JH M <janhenrikm_at_yahoo.de>
- Lasse Goericke <lasse_at_mydom.de>
- Michael Koch <michael.koch_at_enough.de>
- Ann + J.M. <phpMyAdmin_at_ZweiSteinSoft.de>
- Niemand Jedermann <predatorix_at_web.de>
- Phillip Rohmberger <rohmberger_at_hotmail.de>
- Hauke Henningsen <sqrt_at_entless.org>
Yunanca
- Παναγιώτης Παπάζογλου <papaz_p_at_yahoo.com>
Macarca
- Balázs Úr <urbalazs_at_gmail.com>
İtalyanca
- Francesco Saverio Giacobazzi <francesco.giacobazzi_at_ferrania.it>
- Marco Pozzato <ironpotts_at_gmail.com>
- Stefano Martinelli <stefano.ste.martinelli_at_gmail.com>
- TWS <tablettws_at_gmail.com>
Japonca
- Eshin Kunishima <ek_at_luna.miko.im>
- Hiroshi Chiyokawa <hiroshi.chiyokawa_at_gmail.com>
Litvanyaca
- Jur Kis <atvejis_at_gmail.com>
- Dovydas <dovy.buz_at_gmail.com>
Norveçce (Bokmael)
- Tor Stokkan <danorse_at_gmail.com>
- Kurt Eilertsen <kurt_at_kheds.com>
Portekizce (Brezilya)
- Alexandre Moretti <alemoretti2010_at_hotmail.com>
- Douglas Rafael Morais Kollar <douglas.kollar_at_pg.df.gov.br>
- Guilherme Seibt <gui_at_webseibt.net>
- Helder Santana <helder.bs.santana_at_gmail.com>
- Michal Čihař <michal_at_cihar.com>
- Michel Souza <michel.ekio_at_gmail.com>
- Danilo Azevedo <mrdaniloazevedo_at_gmail.com>
- Thiago Casotti <thiago.casotti_at_uol.com.br>
- Vinícius Araújo <vinipitta_at_gmail.com>
- Yan Gabriel <yansilvagabriel_at_gmail.com>
Slovakça
- Martin Lacina <martin_at_whistler.sk>
- Michal Čihař <michal_at_cihar.com>
- Jozef Pistej <pistej2_at_gmail.com>
Slovence
- Domen <mitenem_at_outlook.com>
İspanyolca
- Luis García Sevillano <floss.dev_at_gmail.com>
- Franco <fulanodetal.github1_at_openaliasbox.org>
- Matías Bellone <matiasbellone+weblate_at_gmail.com>
- Ronnie Simon <ronniesimonf_at_gmail.com>
Türkçe
- Burak Yavuz <hitowerdigit_at_hotmail.com>
Sürüm 2.1.0’ın Orijinal Katkıda Bulunanları¶
Bu iş Peter Kuppelwieser’ın MySQL-Webadmin’i esas alır. PHP3 kullanarak MySQL için web-tabanlı arayüz oluşturmak onun fikriydi. Onun hiç kaynak kodunu kullanmamış olmama rağmen, ondan ödünç aldığım bazı fikirler var. phpMyAdmin yaratıldı çünkü Peter (muazzam) aracının geliştirilmesinin daha öteye götürmeyeceğini söyledi.
Teşekkürlerin sahipleri
- Tablo ve veritabanı kaldırılırken kontrol için kod ile katkıda bulunan Amalesh Kempf <ak-lsml_at_living-source.com>. Kendisi aynı zamanda tbl_create.php3 dosyasında birincil anahtar belirlenebilmesini önerdi. Sürüm 1.1.1’de hata raporunun yanısıra ldi_*.php3-set (Metin dosyalarını içe aktarma) ile katkıda bulundu. Artı birçok ufak tefek iyileştirmeler.
- Jan Legenhausen <jan_at_nrw.net>: 1.3.0’da tanıtılan pek çok değişikliği yaptı (kimlik doğrulaması gibi oldukça önemli olanlar dahil). 1.4.1 için tablo-döküm özelliğini geliştirdi. Artı hata düzeltmeleri ve yardım.
- Marc Delisle <DelislMa_at_CollegeSherbrooke.qc.ca> phpMyAdmin dilini, dizgileri kaynak dışına ayrı bir dosyaya alarak bağımsız yaptı. Kendisi aynı zamanda Fransızca çevirisiyle katkıda bulundu.
- Bir tablodan sadece bazı sütunların görüntülenmesi özelliği, tbl_select.php3 ile katkıda bulunan Alexandr Bravo <abravo_at_hq.admiral.ru>.
- Chris Jackson <chrisj_at_ctel.net> tbl_change.php3 içine MySQL işlevleri için destek ekledi. Kendisi aynı zamanda 2.0’da “Örnekle Sorgulama” özelliğini ekledi.
- Dave Walton <walton_at_nordicdms.com> çoklu sunucular için destek ekledi ve hata düzeltmeleri için düzenli katkıda bulunan bir kişidir.
- Gabriel Ash <ga244_at_is8.nyu.edu> 2.0.6 için gelişi güzel erişim özelliği ile katkıda bulundu.
Aşağıdaki insanlar yeni bir dil için destek, hata düzeltmeleri, küçük değişiklikler veya geliştirmeler ile katkıda bulundu:
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.
Ve bana önerileri, hata raporları ve/veya sadece bazı geri bildirimler ile eposta gönderen herkese teşekkürler.
Terimler Sözlüğü¶
Vikipedi’den alınmıştır, ücretsiz ansiklopedi
- .htaccess
Apache’nin dizin-seviyesi yapılandırma dosyasının varsayılan adı.
Ayrıca bkz.
- ACL
- Erişim Denetim Listesi
- Blowfish
anahtarlama, simetrik blok şifreleme, 1993’te Bruce Schneier tarafından tasarlandı.
Ayrıca bkz.
- Browser
tarayıcı - kullanıcının Dünya Çapında Web (World Wide Web) üzerinde web sitesindeki web sayfasında tipik olarak bulunan metin, resimler ve diğer bilgiler ile etkileşimini ve görüntülemesini etkinleştiren bir yazılım uygulamasıdır.
- bzip2
Julian Seward tarafından geliştirilmiş ücretsiz yazılım/açık kaynaklı veri sıkıştırma algoritması ve programı.
Ayrıca bkz.
- CGI
Common Gateway Interface (Ortak Ağ Geçidi Arayüzü), web sunucusu üzerinde çalıştırılan bir programdan veri istemesi için istemci web tarayıcısını etkinleştiren önemli bir Dünya Çapında Web (World Wide Web) teknolojisidir.
Ayrıca bkz.
- Changelog
değişiklikler günlüğü - bir proje yapmak için değişikliklerin kaydı veya günlüğü.
Ayrıca bkz.
- Client
istemci - bir çeşit ağ tarafından başka bir bilgisayardaki (uzak) hizmete erişen bir bilgisayar sistemi.
Ayrıca bkz.
- column
sütun - tablonun her satırı için bir tane olmak üzere, özellikle basit bir türün veri değerleri kümesi.
Ayrıca bkz.
tanımlama bilgisi - sunucu tarafından World Wide Web tarayıcısına gönderilen ve ondan sonra her defasında bu sunucuya erişen tarayıcı tarafından geri gönderilen bilgi paketi.
Ayrıca bkz.
- CSV
Virgülle ayrılmış değerler
Ayrıca bkz.
- DB
- bakınız Database
- Database
veritabanı - düzenlenmiş veri topluluğu.
Ayrıca bkz.
- Motor
- bakınız Storage Engines
- PHP uzantısı
uzantı - ilave işlevsellikler ile PHP’yi genişleten bir PHP modülü.
Ayrıca bkz.
- FAQ (SSS)
Frequently Asked Questions (Sıkça Sorulan Sorular) genellikle sorulmuş soru listesi ve yanıtlarıdır.
Ayrıca bkz.
- Field
alan - bölünmüş veri/sütunların bir kısmı.
Ayrıca bkz.
- Foreign key
dış anahtar - bazı (genellikle farklı) tablolardaki başka bir veritabanı satırının anahtarına biçim veren sütunlar grubu veya bir anahtar sütununu işaret eden bir sütun veya veritabanı satırındaki sütunlar grubu.
Ayrıca bkz.
- GD
Thomas Boutell tarafından Grafik Kütüphanesi ve dinamik olarak resimleri el ile işleme için diğerleri.
Ayrıca bkz.
- GD2
- bakınız GD
- GZip
GZip, GNU zip için kısaltmadır, GNU ücretsiz yazılım, dosya sıkıştırma programı.
Ayrıca bkz.
- host
anamakine - bilgisayar ağına bağlı herhangi bir makine, anamakine adına sahip bir düğüm.
Ayrıca bkz.
- hostname
anamakine adı - ağa bağlı bir cihazın bir ağda bilinen benzersiz adı.
Ayrıca bkz.
- HTTP
Hypertext Transfer Protocol (Köprü Metni Aktarım Protokolü), World Wide Web (Dünya Çapında Web) üzerinde taşınan bilgi veya aktarım için kullanılan birincil yöntemdir.
Ayrıca bkz.
- HTTPS
ilave güvenlik önlemleriyle HTTP bağlantısı.
Ayrıca bkz.
- IEC
- International Electrotechnical Commission - Uluslararası Elektroteknik Komisyonu
- IIS
Internet Information Services - Internet Bilgi Hizmetleri - Microsoft Windows kullanan sunucular için bir grup internet tabanlı hizmetler.
- Index
indeks (dizin) - bir tablodaki satırlara hızlı erişime izin veren bir özellik.
Ayrıca bkz.
- IP
“Internet Protocol” - “Internet Protokolü”, paket değiştirmeli ağlar üzerinden veri iletişimi için kaynak ve hedef anamakineler tarafından kullanılan veri odaklı bir protokoldür.
Ayrıca bkz.
- IP Address
IP adresi - aygıtların Internet Protokolü standartını kullanan bir ağ üzerinde tanımlamak ve birbiriyle iletişim kurmak için kullandıkları benzersiz bir numara.
Ayrıca bkz.
- IPv6
IPv6 (Internet Protokolü sürüm 6), Internet Protokolü’nün (IP) en son gözden geçirme bilgisidir, öncül tükenen IPv4 adreslerinin uzun süredir beklenen sorununun üstesinden gelmesi için tasarlandı.
Ayrıca bkz.
- ISAPI
Internet Server Application Programming Interface - Internet Sunucusu Uygulaması Programlama Arayüzü, Internet Bilgi Hizmetleri (IIS) API’sidir.
- ISP
Internet service provider - Bir Internet hizmeti sağlayıcısı kullanıcıların Internet’e ve ilgili hizmetlere erişmesini sağlayan bir iş kurumu ya da kuruluşudur.
- ISO
International Standards Organization - Uluslararası Standartlar Organizasyonu
Ayrıca bkz.
Ayrıca bkz.
- JPEG
fotoğrafla ilgili imajlar için en sık kullanılan standart kayıplı sıkıştırma yöntemi.
Ayrıca bkz.
- JPG
- bakınız JPEG
- Key
- bakınız Index
- LATEX
TeX yazma ayarı programı için bir belge hazırlama sistemi.
Ayrıca bkz.
- Mac
Apple Macintosh, Apple Inc. tarafından tasarlanmış, geliştirilmiş, üretilmiş ve pazarlanmış bir kişisel bilgisayarlar dizisidir.
Ayrıca bkz.
- macOS
tümü şimdilik tüketici ve profesyonel pazarlarda Apple Macintosh bilgisayarlar ile birlikte gelen işletim sistemi.
Ayrıca bkz.
- mbstring
PHP mbstring işlevleri çok baytlı karakter kümeleri, en önemlisi UTF-8 tarafından temsil edilen diller için destek sağlar.
Eğer bu eklentiyi yüklerken sorunlar yaşıyorasanız, lütfen bakınız 1.20 Eksik mysqli ve mysql uzantıları ile ilgili bir hata alıyorum., yararlı ipuçları sağlar.
Ayrıca bkz.
- Ortam türü
Media type - Ortam türü (eski adıyla MIME türü olarak bilinir), Internet’te iletilen dosya biçimleri ve biçim içerikleri için iki parçalı bir tanımlayıcıdır.
Ayrıca bkz.
- MIME
Multipurpose Internet Mail Extensions - Çok Amaçlı Internet Posta Uzantıları e-posta biçimi için bir Internet Standartıdır.
Ayrıca bkz.
- module
modül - Apache HTTP Sunucusu httpd için modüler uzantı.
Ayrıca bkz.
- mod_proxy_fcgi
bir Apache modülü Fast CGI arayüzü uygulaması; PHP bir CGI modülü, FastCGI, ya da doğrudan bir Apache modülü olarak çalışabilir.
Ayrıca bkz.
- MySQL
çoklu işlemli, çoklu kullanıcılı, SQL (Structured Query Language) Veritabanı Yönetim Sistemi (DBMS).
Ayrıca bkz.
- MySQLi
gelişmiş MySQL istemcisi PHP uzantısı.
Ayrıca bkz.
MySQL İyileştirilmiş Uzantı için PHP kılavuzu <https://www.php.net/manual/tr/book.mysqli.php> _
Ayrıca bkz.
- mysql
MySQL istemcisi PHP uzantısı.
Ayrıca bkz.
- OpenDocument
office belgeleri için bir açık standart.
Ayrıca bkz.
- OS X
bakınız macOS.
Ayrıca bkz.
Portable Document Format - Taşınabilir Belge Biçimi aygıt bağımsızlığında ve çözünürlüğü bağımsız biçimde iki boyutlu belgeleri temsil etmek için Adobe Systems tarafından geliştirilmiş dosya biçimidir.
Ayrıca bkz.
- PEAR
PHP Uzantısı ve Uygulama Deposu.
Ayrıca bkz.
Ayrıca bkz.
PEAR için Vikipedi sayfası <https://tr.wikipedia.org/wiki/PEAR> _
- PCRE
Perl-Compatible Regular Expressions - Perl-Uyumlu Düzenli İfadeler, PHP için Perl uyumlu düzenli ifadelerdir
Ayrıca bkz.
Ayrıca bkz.
Perl-Uyumlu Düzenli İfadeler için PHP kılavuzu <https://www.php.net/pcre> _
- PHP
“PHP: Hypertext Preprocessor” kısaltması, açık kaynaklıdır, dinamik web içeriği ve sunucu taraflı uygulamaların geliştirilmesi için başlıca kullanılan yansıtıcı programlama dili.
Ayrıca bkz.
- port
bağlantı noktası - üzerinden veri gönderilen ve alınan bir bağlantı.
Ayrıca bkz.
- primary key
Birincil anahtar bu tablodaki her tek satır için benzersiz değerleri olan bir tablo içinde bir veya daha fazla alan üzerindeki bir indekstir. Her tablo bu tabloda daha kolay veriye erişim/veriyi tanımlama için bir birincil anahtara sahip olmalıdır. Tablo başına sadece bir birincil anahtar olabilir ve her zaman PRIMARY olarak adlandırılır. Aslında bir birincil anahtar adı sadece PRIMARY olan bir unique key’dır. Eğer tanımlı birincil anahtar yoksa, MySQL birincil anahtar olarak ilk benzersiz anahtarı kullanır eğer bir tane varsa.
Tablo oluştururken birincil anahtar oluşturabilirsiniz (phpMyAdmin’de sadece birincil anahtarın parçası olmasını istediğiniz her alan için birincil anahtar radyo düğmelerini kontrol edin).
Varolan bir tabloya ALTER TABLE veya CREATE INDEX ile birincil anahtar ekleyebilirsiniz (phpMyAdmin’de sadece tablo yapısı sayfasında aşağıda listelenen alanlarda ‘indeks ekle’ düğmesine tıklayabilirsiniz).
- RFC
Request for Comments (RFC) belgeleri yeni araştırma, yenilikler ve Internet teknolojileri için geçerli yöntemleri kapsayan bir dizi bildirimlerdir.
- RFC 1952
GZIP dosya biçimi özelliği sürüm 4.3
Ayrıca bkz.
- Row (record, tuple)
bir tablodaki tek, tamamıyla yapılandırılmış öğeyi temsil eder.
Ayrıca bkz.
- Sunucu
server - bir ağ üzerinden diğer sistemlere hizmet sağlayan bir bilgisayar sistemi.
Ayrıca bkz.
- Sodium
Sodium PHP uzantısı.
Ayrıca bkz.
Sodium uzantı için PHP kılavuzu <https://www.php.net/manual/tr/book.sodium.php> _
- Storage Engines
Depolama Motorları - MySQL diskte veri saklamak için birkaç farklı biçim kullanabilir, bunlara depolama motorları veya tablo türleri denir. phpMyAdmin, işlemler sekmesi aracılığıyla belirli bir tablonun kendi depolama motorunu değiştirmesi için bir kullanıcıya izin verir.
Yaygın tablo türleri InnoDB ve MyISAM, olmasına rağmen birçokları vardır ve bazı durumlarda istenebilir.
Ayrıca bkz.
Alternatif Depolama Motorları hakkında MySQL belgesi bölümü <https://dev.mysql.com/doc/refman/8.0/en/storage-engines.html> _
Ayrıca bkz.
- socket
soket - işlemler arası iletişimin biçimi.
Ayrıca bkz.
- SSL
Secure Sockets Layer - Güvenli Soketler Katmanı (artık TLS ile değiştirilmiştir), Internet’te güvenli iletişim sağlayan bir kriptografik protokoldür.
Ayrıca bkz.
- Stored procedure
saklı yordam - ilişkisel veritabanı sistemine uygulamaların erişimi için kullanılabilir bir alt yordam
Ayrıca bkz.
- SQL
Structured Query Language - Yapısal Sorgu Dili
Ayrıca bkz.
- table
tablo - diğer öğelere ilişkin olarak konumuyla ya da anahtar veya bir etiketle benzersiz olarak tanımlanabilen her öğenin olduğu yatay satırlar ve dikey sütunlar olarak düzenlenen, tanımlanan, depolanan veri öğeleri (hücreler) grubu.
Ayrıca bkz.
- tar
bir arşiv dosyası biçimi türü, “Tape Archive”den gelir.
Ayrıca bkz.
- TCP
Transmission Control Protocol (İletim Denetimi Protokolü) Internet protokolü takımının çekirdek protokollerinden biridir.
- TCPDF
PDF dosyaları oluşturmak için PHP kütüphanesi.
Ayrıca bkz.
Ayrıca bkz.
- trigger
tetikleyici - veritabanı görünümünde veya belirli bir tabloda belli olaylara yanıtta otomatik olarak çalıştırılan işlemsel bir kod
Ayrıca bkz.
- unique key
- Bir benzersiz anahtar (unique key) her satır için benzersiz bir değere sahip olan bir tablo içinde bir veya daha fazla alan üzerindeki bir indekstir. Eğer tanımlı birincil anahtar yoksa, ilk benzersiz anahtara primary key olarak davranılacaktır.
- URL
Uniform Resource Locator - Birörnek Kaynak Konumlayıcı Internet’te belge ve resimler gibi, yerlerine göre, kaynaklarına göndermesi için kullanılan, standart hale getirilmiş bir biçime uygun, bir karakter dizisidir.
Ayrıca bkz.
- Web sunucusu
Web server - istemcilerden HTTP isteklerini kabul etmekten sorumlu ve onlara web sayfalarıyla hizmet eden bir bilgisayar (program).
Ayrıca bkz.
- XML
Extensible Markup Language - Genişletilebilir İşaretleme Dili özel amaçlı işaretleme dilleri oluşturmak için W3C tarafından önerilen genel amaçlı işaretleme dilidir, pek çok farklı türde verinin tanımlamasını yapabilir.
Ayrıca bkz.
- ZIP
popüler bir veri sıkıştırma ve arşivleme biçimi.
Ayrıca bkz.
- Zlib
Jean-loup Gailly ve Mark Adler sayesinde açık kaynaklı, platformlar arası veri sıkıştırma kütüphanesi.
Ayrıca bkz.
- İçerik Güvenliği İlkesi
HTTP İçerik Güvenliği İlkesi yanıt başlığı, web sitesi yöneticilerinin belirli bir sayfa için kullanıcı aracısının yüklemesine izin verilen kaynakları denetlemesine izin verir.
Ayrıca bkz.
Ayrıca bkz.