PDO_MYSQL, PHP'den MySQL veritabanlarına erişim sağlamak için PHP Data Objects (PDO) arayüzünü uygulayan bir sürücüdür. 7.1.16'dan önceki bir PHP sürümünü veya 7.2.4'ten önceki PHP 7.2'yi çalıştırırken, MySQL 8 Sunucusunun varsayılan parola eklentisini mysql_native_password olarak ayarlayın; Kullanılmıyor. Bunun nedeni, MySQL 8'in varsayılan olarak eski PHP (mysqlnd) sürümleri tarafından tanınmayan bir eklenti olan caching_sha2_password olmasıdır. Bunun yerine, içinde ayarlayarak değiştirin. caching_sha2_password eklentisi, gelecekteki bir PHP sürümünde desteklenecektir. Bu arada, mysql_xdevapi uzantısı bunu destekliyor. Uyarı Dikkat: Bazı MySQL tablo türleri (depolama motorları) işlemleri desteklemez. İşlemleri desteklemeyen bir tablo türü kullanarak işlemsel veritabanı kodu yazarken, MySQL bir işlemin başarıyla başlatıldığını varsayar. Ek olarak, verilen herhangi bir DDL sorgusu, dolaylı olarak bekleyen tüm işlemleri de içerecektir. MySQL sürücüsü, PDOStatement::bindParam yoluyla düzgün şekilde desteklenmez, ancak bu tür parametreler kullanılabilir, güncellenmezler (yani, gerçek çıktı göz ardı edilir) Yaygın Unix dağıtımları PHP'nin kurulabilen ikili sürümlerini içerir. Bu ikili sürümler tipik olarak MySQL uzantıları desteğiyle oluşturulmuş olsa da, uzantı kitaplıklarının ek bir paket kullanılarak yüklenmesi gerekebilir. Kullanılabilirlik için seçtiğiniz dağıtımla birlikte gelen paket yöneticisini kontrol edin. Örneğin, Ubuntu'da paket ext/mysql, ext/mysqli ve PDO_MYSQL PHP uzantılarını kurar. CentOS'ta paket ayrıca bu üç PHP uzantısını da yükler. Alternatif olarak, bu uzantıyı kendiniz derleyebilirsiniz. PHP'yi kaynaktan oluşturmak, kullanmak istediğiniz MySQL uzantılarının yanı sıra her uzantı için istemci kitaplığı seçiminizi belirtmenize olanak tanır. Derlerken --with-pdo-mysql[=DIR] kullanarak PDO MySQL uzantısını kurun, burada isteğe bağlı olarak MySQL temel kitaplığı verilir. Mysqlnd varsayılan kitaplıktır. Kitaplık seçmeyle ilgili ayrıntılar için bkz. MySQL kitaplığı seçme. İsteğe bağlı olarak --with-mysql-sock[=DIR], PDO_MYSQL dahil olmak üzere tüm MySQL uzantıları için MySQL unix soket işaretçisinin konumunu ayarlar. Belirtilmemişse, varsayılan konumlar aranır. İsteğe bağlı olarak --with-zlib-dir[=DIR], libz yükleme önekine giden yolu ayarlamak için kullanılır. SSL desteği, ÃÂû MySQL C API işlevini mysql_ssl_set çağırmaya eşdeğer olan uygun PDO_MySQL sabitleri kullanılarak etkinleştirilir. Ayrıca, bağlantı zaten mevcut olduğundan SSL, PDO::setAttribute ile etkinleştirilemez. MySQL'e SSL ile bağlanma hakkında MySQL belgelerine de bakın. Aşağıdaki sabitler bu sürücü tarafından tanımlanır ve yalnızca uzantı PHP'de derlendiğinde veya çalışma zamanında dinamik olarak yüklendiğinde kullanılabilir. Ayrıca, bu sürücüye özgü sabitler yalnızca bu sürücüyü kullanıyorsanız kullanılmalıdır. Sürücüye özgü özniteliklerin başka bir sürücüyle kullanılması beklenmedik davranışlara neden olabilir. Kodunuz birden fazla sürücüye karşı çalışabiliyorsa, sürücüyü kontrol etme özniteliğini elde etmek için PDO::getAttribute() kullanılabilir. üzerinde, MySQL sürücüsü MySQL API'sinin ara belleğe alınmış sürümlerini kullanacaktır. Taşınabilir kod yazıyorsanız, bunun yerine kullanmalısınız. Bu öznitelik a'ya ayarlanırsa, MySQL sürücüsü MySQL API'sinin ara belleğe alınmış sürümlerini kullanır. Taşınabilir kod yazıyorsanız, bunun yerine kullanmalısınız. Örnek 1 Sorguları mysql'de arabelleğe alınmaya zorlama "uygulamam yalnızca mysql ile çalışır; bunun yerine \$stmt->fetchAll() kullanmalıyım"Not, bu sabit yalnızca yeni bir veritabanı tanıtıcısı oluşturulurken dizide kullanılabilir. YEREL VERİ yüklemesinin bu belirlenmiş dizinde bulunan dosyalara kısıtlanmasına izin verir. PHP 8.1.0'dan itibaren mevcuttur. Bu sabitin yalnızca dizide yeni bir veritabanı tanıtıcısı oluşturulurken kullanılabileceğini unutmayın. MySQL sunucusuna bağlanırken yürütülecek komut. Yeniden bağlanırken otomatik olarak yeniden yürütülür. Bu sabitin yalnızca dizide yeni bir veritabanı tanıtıcısı oluşturulurken kullanılabileceğini unutmayın. Seçenekleri from yerine adlandırılmış seçenek dosyasından okuyun. mysqlnd kullanılıyorsa, mysqlnd mysql yapılandırma dosyalarını okumadığından bu seçenek kullanılamaz. adlı gruptan veya ile belirtilen dosyadan okuma seçenekleri. mysqlnd kullanılıyorsa, mysqlnd mysql yapılandırma dosyalarını okumadığından bu seçenek kullanılamaz. Maksimum arabellek boyutu. Varsayılanlar 1 MiB'dir. Bu sabit, mysqlnd'e karşı derlendiğinde desteklenmez. Değiştirilen satırların sayısını değil, bulunan (eşleşen) satırların sayısını döndürün. SSL sertifika yetkilisine giden dosya yolu. PEM biçiminde depolanan güvenilir SSL CA sertifikalarını içeren dizinin dosya yolu. SSL sertifikasına giden dosya yolu. OpenSSL tarafından anlaşılan bir biçimde, SSL şifrelemesi için kullanılmasına izin verilen bir veya daha fazla şifrenin listesi. Örneğin: SSL anahtarının dosya yolu. Sunucu SSL sertifikasının doğrulanmasını devre dışı bırakmanın bir yolunu sağlar. Bu, PHP 7.0.18 ve PHP 7.1.4'ten itibaren mevcuttur. olarak ayarlandığında hem PDO::prepare() hem de PDO::query() içinde çoklu sorgu yürütmeyi devre dışı bırakır. Bu sabitin yalnızca dizide yeni bir veritabanı tanıtıcısı oluşturulurken kullanılabileceğini unutmayın. Bu işlevlerin davranışı içindeki ayarlardan etkilenir. PHP_INI_* kiplerinin daha fazla ayrıntısı ve tanımları için, bkz. PHP_INI_* kiplerinin daha ayrıntılı ayrıntıları ve tanımları için, bkz. Bu değer, yapılandırma sırasında bir etki alanı soketi bulunursa derleme zamanında ayarlanabilir. Bu ini ayarı yalnızca Unix'tir. PDO_MYSQL için hata ayıklamayı etkinleştirir. Bu ayar yalnızca PDO_MYSQL, mysqlnd'e karşı derlendiğinde ve PDO hata ayıklama modunda kullanılabilir.