Artikoli

Otu esi ahazi Laravel ka o jiri ọtụtụ ọdụ data dị na Project gị

Dị ka ọ na-adịkarị, ọrụ mmepe ngwanrọ gụnyere iji ebe nchekwa data maka ịchekwa data n'ụzọ ahaziri ahazi.

Maka ọrụ ụfọdụ ọ nwere ike ịdị mkpa iji ọtụtụ ọdụ data.

Na Laravel, iji ọtụtụ ọdụ data, anyị kwesịrị ịhazi usoro na karịsịa faịlụ nhazi njikọ.

Ka anyị hụ otu esi ahazi Laravel iji ọtụtụ ọdụ data.

Oge agụpụtara echere: 4 minuti

File database.php in config directory

Faịlụ a dị na ndekọ aha config nke ngwa Laravel gị.

Na faịlụ database.php enwere ike definish multiple database njikọ. Njikọ ọ bụla ga-abụrịrị definited dị ka ihe n'usoro. Nhazi ahụ kwesịrị ịnwe ozi ndị a:

  • driver: onye ọkwọ ụgbọ ala nchekwa data iji;
  • host: aha host ma ọ bụ adreesị IP nke ihe nkesa nchekwa data;
  • port: nọmba ọdụ ụgbọ mmiri nkesa nchekwa data;
  • database: aha nchekwa data;
  • username: aha njirimara maka ijikọ na nchekwa data;
  • password: paswọọdụ maka ijikọ na nchekwa data;

Dịka ọmụmaatụ, koodu na-esonụ defiEnwere njikọ nchekwa data abụọ, otu maka MySQL na otu maka PostgreSQL:

'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',
        ],

Otu esi ejikọta na DB

Mgbe defiOzugbo ị nwere njikọ nchekwa data, ị nwere ike iji ha na koodu gị Laravel. Iji mee nke a, ị nwere ike iji facade nke nchekwa data. Ebe ahụ facade nchekwa data na-enye interface dị n'otu maka imekọrịta na ọdụ data.

Ka ịgbanwee n'etiti njikọ nchekwa data, ịnwere ike iji usoro a Connection() della facade Ebe nchekwa data. Usoro Connection() na-ewere aha njikọ nchekwa data dị ka arụmụka.

Dịka ọmụmaatụ, koodu a na-esi na mysql DB gaa na pgsql DB:

Akwụkwọ akụkọ ọhụrụ
Agbagharala akụkọ kacha mkpa maka ime ọhụrụ. Debanye aha iji nweta ha site na email.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Ozugbo ịgbanwere na njikọ nchekwa data, ị nwere ike iji ya jụọ ajụjụ wee soro nchekwa data meekọrịta ihe.

Uru nke iji ọtụtụ ọdụ data na Laravel

Enwere ọtụtụ uru na iji ọtụtụ ọdụ data na Laravel, gụnyere:

  • Ịrụ ọrụ ka mma: Iji ọtụtụ ọdụ data nwere ike melite arụmọrụ ngwa site na ikewa data nke ụdị dị iche iche. Dịka ọmụmaatụ, ịnwere ike ịchekwa data onye ọrụ n'otu nchekwa data yana data ngwaahịa na nchekwa data ọzọ.
  • Nchekwa abawanyela: Iji ọtụtụ ọdụ data nwere ike melite nchekwa ngwa site na ikewa data nke ụdị dị iche iche. Dịka ọmụmaatụ, ịnwere ike ịchekwa data nwere mmetụta n'otu nchekwa data yana data na-enweghị mmetụta na nchekwa data ọzọ.
  • Nnukwu scalability: Iji ọtụtụ ọdụ data nwere ike ime ka ngwa gị dịkwuo elu site n'ikwe ka ị kesaa data gị n'ofe ọtụtụ sava.

Omume kachasị mma maka iji ọtụtụ ọdụ data na Laravel

Nke a bụ ụfọdụ omume kacha mma maka iji ọtụtụ ọdụ data na Laravel:

  • Jiri aha enyi na enyi maka njikọ nchekwa data: Nke a ga-eme ka ọ dịrị mfe ịchọpụta na jikwaa njikọ nchekwa data.
  • Jiri usoro a Connection() ka esi na otu DB onye ọzọ - nke a ga - enyere gị aka izere ịgba ọsọ na mberede ajụjụ Sul database ezighi ezi.
  • Jiri usoro mbugharị nchekwa data iji jikwaa atụmatụ nchekwa data gị - nke a ga - enyere gị aka idobe atụmatụ nchekwa data gị na mmekọrịta n'ofe gị niile. database.

ọgwụgwụ

Iji ọtụtụ ọdụ data dị na Laravel nwere ike ịbụ ụzọ dị mma isi melite arụmọrụ, nchekwa na scalability nke ngwa gị. Site n'ịgbaso omume kachasị mma akọwara n'isiokwu a, ị nwere ike iji ọtụtụ ọdụ data dị na Laravel nke ọma.

Ọgụgụ ndị emetụtara

Ercole Palmeri

Akwụkwọ akụkọ ọhụrụ
Agbagharala akụkọ kacha mkpa maka ime ọhụrụ. Debanye aha iji nweta ha site na email.

Ihe odide ndị a

Ịkwụ ụgwọ n'ịntanetị: Nke a bụ ka ọrụ gụgharia na-eme ka ị kwụọ ụgwọ ruo mgbe ebighị ebi

Ọtụtụ nde mmadụ na-akwụ ụgwọ maka ọrụ nkwanye, na-akwụ ụgwọ ndenye aha kwa ọnwa. Ọ bụ echiche nkịtị na ị…

29 April 2024

Veeam nwere nkwado zuru oke maka ransomware, site na nchedo ruo nzaghachi na mgbake

Coveware nke Veeam ga-aga n'ihu na-enye ọrụ nzaghachi ihe omume cyber. Coveware ga-enye forensics na ike mmezi…

23 April 2024

Mgbanwe Green na Dijitalụ: Otu amụma amụma si agbanwe ụlọ ọrụ mmanụ & gas

Ndozi amụma na-agbanwe mpaghara mmanụ & gas, na-enwe usoro ọhụrụ na ngwa ngwa maka njikwa ihe ọkụkụ.…

22 April 2024

Onye na-ahụ maka mgbochi ntụkwasị obi UK na-ewelite mkpu BigTech na GenAI

UK CMA enyela ịdọ aka ná ntị gbasara omume Big Tech na ahịa ọgụgụ isi. Ebe ahụ…

18 April 2024