ai-mysql
Üçüncü parti script’ler için veritabanı motoru. oxmysql, mysql-async ve ghmattimysql’in yerine geçer.
ai-mysql üçüncü parti script’leri veritabanına bağlar. oxmysql’in export’larını ve @oxmysql/lib/MySQL.lua dosyasını, ayrıca eski mysql-async ve ghmattimysql adlarını cevaplar; böylece bunlardan herhangi biri için yazılmış script’ler değiştirilmeden çalışır.
ai-* script’leri ai-mysql üzerinden geçmez: her biri AI Core’un veritabanı motorunu (@aicore-fivem/mysql) kendi küçük bağlantı havuzuyla kendi içinde çalıştırır. ai-mysql aynı motordur, her üçüncü parti script tarafından ortak kullanılır.
Ne yapar
- Diğer script’ler için oxmysql.
exports.oxmysql:query(...),MySQL.query.await(...)ve diğer tüm oxmysql çağrıları çalışır. - Eski API’ler. mysql-async’in (
mysql_fetch_all,mysql_execute...) ve ghmattimysql’in (execute,scalar...) export adları da cevap verir. - Sürüm kontrolü. oxmysql’in sürümünü okuyan script’ler ai-mysql’in takip ettiği oxmysql sürümü olan 2.14.3’ü görür ve modern kod yollarını kullanır.
- Uyarılar: yavaş sorgular ve çok büyük sonuçlar için server konsolunda, oxmysql gibi.
Kurulum
AI Core txAdmin tarifi kurar. Elle:
Yerine koy
Klasörü resources/[ai]/ içine koy ve server.cfg dosyasına ensure ai-mysql satırını ensure ai-core satırından ve veritabanını kullanan her script’ten önce ekle.
Bağlantıyı ayarla
env.cfg içinde bağlantı dizesini ayarla ve ai-mysql’in (ve veritabanını kullanan her ai-* script’inin) onu okumasına izin ver:
set mysql_connection_string "mysql://user:password@localhost/ai_core?charset=utf8mb4"
add_convar_permission ai-mysql read mysql_connection_string
add_convar_permission ai-core read mysql_connection_stringTarifin env.cfg dosyasında buna ihtiyaç duyan her ai-* script’i için satır zaten var.
oxmysql’i kaldır
Yanına oxmysql, mysql-async ya da ghmattimysql kurma. Manifest’inde dependency 'oxmysql' olan script’ler sorunsuz başlar: ai-mysql oxmysql sayılır.
Panel ayarları
Yok. ai-mysql, oxmysql’in okuduğu convar’larla ayarlanır; böylece mevcut bir server.cfg çalışmaya devam eder:
| Convar | Neyi değiştirir | Varsayılan |
|---|---|---|
mysql_connection_string | Veritabanının nerede olduğu: mysql://user:password@host:port/database?options ya da key=value; biçimi (server=...;database=...;userid=...;password=...). | mysql://root@localhost |
mysql_slow_query_warning | Bu kadar milisaniyeden yavaş sorgular konsolda uyarılır. | 200 |
mysql_resultset_warning | Bundan fazla satırlı sonuçlar konsolda uyarılır. | 1000 |
mysql_transaction_isolation_level | 1 REPEATABLE READ, 2 READ COMMITTED, 3 READ UNCOMMITTED, 4 SERIALIZABLE. | 2 |
ai_mysql_shared_pool_size | ai-mysql’in tüm üçüncü parti script’ler için birlikte tuttuğu bağlantılar. | 10 |
ai_mysql_pool_size | Her ai-* script’inin kendisi için tuttuğu bağlantılar. | 5 |
Komutlar
Yok. AI Core’un admin komutu aicore_db [slow] server konsolunda her resource’un veritabanı istatistiklerini yazdırır (bkz. ai-core).
Tuşlar
Yok.
Diğer script’lerle çalışır
oxmysql,mysql-asyncveghmattimysql’in yerine geçer (provide).@oxmysql/lib/MySQL.luaai-mysql’in kopyasına çözülür.- oxmysql kullanan ox_lib, QBCore, Qbox ve ESX script’leri onun üzerinde çalışır.
Bilinen sınırlar
- Davranış oxmysql 2.14.3’ü takip eder. Daha yeni bir oxmysql’in özelliğine ihtiyaç duyan bir script onu bulamayabilir.