Taxminiy o'qish vaqti: 4 daqiqada
database.php
in config
katalogUshbu fayl katalogda joylashgan config
Laravel ilovangizdan.
Fayl ichida database.php
mumkin defibir nechta ma'lumotlar bazasi ulanishlari. Har bir ulanish bo'lishi kerak defimassiv sifatida nited. Massiv quyidagi ma'lumotlarni o'z ichiga olishi kerak:
driver
: foydalanish uchun ma'lumotlar bazasi drayveri;host
: ism host
yoki manzil IP
ma'lumotlar bazasi serveri;port
: ma'lumotlar bazasi serveri port raqami;database
: ma'lumotlar bazasi nomi;username
: ma'lumotlar bazasiga ulanish uchun foydalanuvchi nomi;password
: ma'lumotlar bazasiga ulanish uchun parol;Masalan, quyidagi kod defiIkkita ma'lumotlar bazasi ulanishi mavjud, biri MySQL uchun, ikkinchisi PostgreSQL uchun:
'connections' => [
'sqlite' => [
'driver' => 'sqlite',
'url' => env('DATABASE_URL'),
'database' => env('DB_DATABASE', database_path('database.sqlite')),
'prefix' => '',
'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
],
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
'pgsql' => [
'driver' => 'pgsql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '5432'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
'prefix_indexes' => true,
'schema' => 'public',
'sslmode' => 'prefer',
],
Keyin defiMa'lumotlar bazasi ulanishlariga ega bo'lganingizdan so'ng, ularni kodingizda ishlatishingiz mumkin Laravel
. Buning uchun siz foydalanishingiz mumkin facade
ma'lumotlar bazasidan. U yerda facade
ma'lumotlar bazasi ma'lumotlar bazalari bilan o'zaro ishlash uchun yagona interfeysni ta'minlaydi.
Ma'lumotlar bazasi ulanishlari o'rtasida almashish uchun siz usuldan foydalanishingiz mumkin Connection()
della facade
Ma'lumotlar bazalari. Usul Connection()
argument sifatida ma'lumotlar bazasi ulanishi nomini oladi.
Masalan, quyidagi kod MySQL DB dan pgsql DB ga o'tadi:
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
Ma'lumotlar bazasi ulanishiga o'tganingizdan so'ng, ma'lumotlar bazasi bilan so'rov qilish va o'zaro aloqada bo'lish uchun undan foydalanishingiz mumkin.
Laravelda bir nechta ma'lumotlar bazalaridan foydalanishning ko'plab afzalliklari bor, jumladan:
Laravelda bir nechta ma'lumotlar bazalaridan foydalanish bo'yicha ba'zi eng yaxshi amaliyotlar:
Connection()
biridan ketish DB boshqasiga - bu tasodifan yugurishdan qochishingizga yordam beradi So'rovlar sul ma'lumotlar bazasi noto'g'ri.Laravel-da bir nechta ma'lumotlar bazalaridan foydalanish ilovangizning ishlashi, xavfsizligi va kengaytirilishini yaxshilashning ajoyib usuli bo'lishi mumkin. Ushbu maqolada tasvirlangan eng yaxshi amaliyotlarga rioya qilish orqali siz Laravel-da bir nechta ma'lumotlar bazalaridan samarali foydalanishingiz mumkin.
Ercole Palmeri
Veeam tomonidan ishlab chiqarilgan Coveware kiber tovlamachilik hodisalariga javob berish xizmatlarini taqdim etishda davom etadi. Coveware sud tibbiyoti va remediatsiya imkoniyatlarini taklif qiladi ...
Bashoratli texnik xizmat ko'rsatish zavodlarni boshqarishga innovatsion va proaktiv yondashuv bilan neft va gaz sektorini inqilob qilmoqda.…
Buyuk Britaniya CMA Big Tech kompaniyasining sun'iy intellekt bozoridagi xatti-harakatlari haqida ogohlantirish e'lon qildi. U yerda…
Evropa Ittifoqi tomonidan binolarning energiya samaradorligini oshirish uchun ishlab chiqilgan "Yashil uylar" qarori qonunchilik jarayonini yakunladi ...