Làm cách nào để kết nối với máy chủ mysql?

Đôi khi bạn sẽ muốn lưu trữ cơ sở dữ liệu trên một máy chủ riêng biệt, thay vì chạy máy chủ cơ sở dữ liệu và máy chủ web trên cùng một máy

Magento đã cung cấp một cách để kết nối với máy chủ MySQL trên một máy khác. Kể từ Magento 2. 4. 3, bạn cũng có thể định cấu hình Magento để sử dụng cơ sở dữ liệu Aurora của Amazon Web Services (AWS) mà không cần thay đổi mã

Aurora là máy chủ MySQL hiệu suất cao, tuân thủ đầy đủ được lưu trữ trên AWS

Kết nối với cơ sở dữ liệu AWS Aurora

Sử dụng Aurora làm cơ sở dữ liệu dễ dàng như chỉ định cơ sở dữ liệu trong cấu hình thiết lập Magento thông thường, sử dụng trình kết nối cơ sở dữ liệu mặc định

Khi chạy

bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
4, hãy sử dụng thông tin Aurora trong các trường
bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
5

1
bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...

Giá trị

bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
6 là URL Aurora đã loại bỏ
bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
7 và
bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
8 ở cuối

Thiết lập kết nối cơ sở dữ liệu từ xa

Đây là một chủ đề nâng cao chỉ nên được sử dụng bởi quản trị viên mạng hoặc quản trị viên cơ sở dữ liệu có kinh nghiệm. Bạn phải có quyền truy cập

bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
9 vào hệ thống tệp và bạn phải có thể đăng nhập vào MySQL bằng tên
bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
9

điều kiện tiên quyết

Trước khi bắt đầu, bạn phải

Tính khả dụng cao

Sử dụng các nguyên tắc sau để định cấu hình kết nối cơ sở dữ liệu từ xa nếu máy chủ web hoặc máy chủ cơ sở dữ liệu của bạn được nhóm

  • Bạn phải định cấu hình kết nối cho từng nút máy chủ web
  • Thông thường, bạn định cấu hình kết nối cơ sở dữ liệu với bộ cân bằng tải cơ sở dữ liệu; . Magento không đưa ra khuyến nghị cụ thể nào cho việc phân cụm cơ sở dữ liệu

    Để biết thêm thông tin, hãy xem tài liệu về MySQL

Giải quyết vấn đề kết nối

Nếu bạn gặp sự cố khi kết nối với một trong hai máy chủ, trước tiên hãy ping máy chủ kia để đảm bảo rằng nó có thể truy cập được. Bạn cũng có thể cần cho phép kết nối từ máy chủ này sang máy chủ khác bằng cách sửa đổi tường lửa và quy tắc SELinux (nếu bạn sử dụng SELinux)

Tạo kết nối từ xa

Để tạo kết nối từ xa

  1. Trên máy chủ cơ sở dữ liệu của bạn, với tư cách là người dùng có đặc quyền

    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    9, hãy mở tệp cấu hình MySQL của bạn

    Để xác định vị trí của nó, hãy nhập lệnh sau

    Vị trí hiển thị tương tự như sau

    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    0
    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    1

    Trên Ubuntu 16, đường dẫn thường là

    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    02

  2. Tìm kiếm tệp cấu hình cho

    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    03

    Nếu nó tồn tại, thay đổi giá trị như sau

    Nếu nó không tồn tại, hãy thêm nó vào phần

    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    04

    1
    
    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    6

    Xem tài liệu về MySQL, đặc biệt nếu bạn có một máy chủ web theo cụm

  3. Lưu các thay đổi của bạn vào tệp cấu hình và thoát khỏi trình soạn thảo văn bản
  4. Khởi động lại dịch vụ MySQL

    • CentOS.

      bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
      
      05

    • Ubuntu.

      bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
      
      06

    Nếu MySQL không khởi động được, hãy tìm trong nhật ký hệ thống để biết nguồn gốc của sự cố. Giải quyết vấn đề bằng tài liệu MySQL hoặc nguồn có thẩm quyền khác

Cấp quyền truy cập cho người dùng cơ sở dữ liệu

Để cho phép nút web của bạn kết nối với máy chủ cơ sở dữ liệu, bạn phải cấp cho người dùng cơ sở dữ liệu nút web quyền truy cập vào cơ sở dữ liệu trên máy chủ từ xa

Ví dụ này cấp cho người dùng cơ sở dữ liệu

bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
9 toàn quyền truy cập vào cơ sở dữ liệu trên máy chủ từ xa

Để cấp quyền truy cập cho người dùng cơ sở dữ liệu

  1. Đăng nhập vào máy chủ cơ sở dữ liệu
  2. Kết nối với cơ sở dữ liệu MySQL với tư cách là người dùng
    bin/magento setup:install .. --db-host='database-aurora.us-east-1.rds.amazonaws.com' --db-name='magento2' --db-user='username' --db-password='password' ...
    
    9
  3. Nhập lệnh sau

    1
    
    1
    
    2

    Ví dụ,

    1
    
    1
    
    4

    Nếu máy chủ web của bạn được nhóm, hãy nhập cùng một lệnh trên mọi máy chủ web. Bạn phải sử dụng cùng một tên người dùng cho mọi máy chủ web