Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Máy chủ MySQL độc lập

Trong một số loại triển khai, đặc biệt khi các ứng dụng động phong phú dựa vào cơ sở dữ liệu lớn, việc tách máy chủ cơ sở dữ liệu khỏi máy chủ ứng dụng có thể cho phép ứng dụng của bạn mở rộng và chứa được cơ sở người dùng lớn hơn nhiều. Việc chỉ định một máy chủ riêng biệt chỉ được sử dụng bởi MySQL sẽ cho phép máy chủ web của ứng dụng phân phối nội dung hiệu quả hơn, trong khi máy chủ cơ sở dữ liệu sẽ có thể phản hồi nhanh hơn.

Do đó, các máy chủ cơ sở dữ liệu này có thể hỗ trợ triển khai hiệu quả hơn với tải lưu lượng truy cập cao. Điều này có thể giúp bạn đạt được hiệu suất cao hơn cho nhiều ứng dụng, từ các gói phổ biến nhưWordPress andDrupal đến các ứng dụng tùy chỉnh được viết trongRuby trên Rails vàDjango.

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

Trong hướng dẫn này, chúng tôi sẽ sử dụng hai Linodes. Lưu ý rằng điều này khác với việc chỉ đơn giản là triển khai hồ sơ cấu hình thứ hai trên tài khoản Linode hiện có của bạn, vì cả hai máy chủ sẽ cần phải chạy cùng một lúc. Chúng tôi cho rằng bạn đã làm theo hướng dẫn Thiết lập và Bảo mật Phiên bản Máy tính cho cả Linodes.

  • Đối với Linode đang chạy máy chủ web, kể từ sau máy chủ ứng dụng, bạn phải cài đặt Apache (hoặc máy chủ web ưa thích của bạn). Để có bản cài đặt mới, hãy làm theo hướng dẫn LAMP cho bản phân phối của bạn. Hướng dẫn LAMP bao gồm MySQL mà bạn không cần cài đặt.
  • MySQL Linode chuyên dụng phải được cài đặt MySQL. Làm theo hướng dẫn cài đặt máy chủ cơ sở dữ liệu MySQL cho bản phân phối của bạn. Hãy nhớ rằng bạn không phải cài đặt Apache trên máy chủ MySQL chuyên dụng.

Ngoài ra, bạn sẽ muốn định cấu hình bí danh cho địa chỉ IP riêng của mỗi Linode. Bạn có thể làm theo hướng dẫn Cấu hình IP tĩnh củaLinux để được hỗ trợ về việc này. Điều quan trọng cần lưu ý là cả hai Linodes phải ở trong cùng một trung tâm dữ liệu để mạng riêng hoạt động. Điều này cho phép các máy chủ giao tiếp mà không bị tính lưu lượng truy cập vào hạn ngạch băng thông hàng tháng của bạn. Cần phải khởi động lại cả hai Linodes sau khi định cấu hình địa chỉ IP riêng.

Edit / etc / hosts

Bạn sẽ muốn tạo tên máy chủ cho từng máy để có thể theo dõi chúng sau này. Điều này cũng giúp tiết kiệm công việc, nếu bạn thấy mình trong tình huống cần thay đổi địa chỉ IP của máy chủ. Chỉnh sửa /etc/hosts tệp để bao gồm riêng tư Địa chỉ IP của mỗi Linode. Sử dụng đoạn trích sau từ một ví dụ /etc/hosts tệp làm ví dụ:

Tệp:/ etc / hosts
1
> 127.0.0.1 localhost 192.168.192.168 mysql.example.com mysql 192.168.192.169 app.example.com app

Nhớ thay thế 192.168.192.168192.168.192.169 với các địa chỉ IP riêng thực tế.

Mặc dù bước này là tùy chọn, nhưng việc định cấu hình hosts các mục nhập sẽ cho phép bạn tránh các cấu hình ứng dụng mã hóa khó thành các địa chỉ IP cụ thể. Bạn sẽ có thể nhanh chóng di chuyển ứng dụng và máy chủ cơ sở dữ liệu của mình sang máy chủ thay thế nếu bạn phải thay đổi địa chỉ IP của mình.

Định cấu hình Máy chủ MySQL

Bước tiếp theo là sửa đổi /etc/mysql/my.cnf tệp trên máy chủ MySQL của bạn để lắng nghe trên địa chỉ IP riêng của bạn. Sử dụng trình chỉnh sửa yêu thích của bạn, mở /etc/mysql/my.cnf và chèn tên máy chủ của cơ sở dữ liệu MySQL. Đối với ví dụ này, tên máy chủ cơ sở dữ liệu MySQL là mysql . Tìm bind-address dòng:

Tệp:/ etc / mysql / my.cnf
1
bind-address = mysql

Ngoài ra, bạn có thể sử dụng địa chỉ IP riêng. Lưu tệp và chạy lệnh sau để khởi động lại daemon MySQL:

/etc/init.d/mysql restart

Cấp quyền truy cập cơ sở dữ liệu

Trên máy chủ cơ sở dữ liệu chuyên dụng, bạn sẽ cần tạo tên người dùng và mật khẩu cơ sở dữ liệu có quyền truy cập. Điều này có thể thực hiện được thông qua lời nhắc MySQL. Đưa ra lệnh sau:

mysql -u root -p

Điều này sẽ cung cấp một dòng lệnh MySQL. Đưa ra các lệnh sau, thay thế ứng dụng app với tên máy chủ của Linode đang chạy máy chủ ứng dụng và mật khẩu mạnh thay cho “PASSWORD”:

CREATE DATABASE webapplications;

GRANT ALL ON webapplications.* TO [email protected]'app' IDENTIFIED BY 'PASSWORD';

Ở giai đoạn này, ứng dụng của bạn có thể truy cập thành công cơ sở dữ liệu từ xa và bạn đã sẵn sàng để bắt đầu sử dụng máy chủ cơ sở dữ liệu.

Sử dụng Máy chủ Cơ sở dữ liệu

Từ thời điểm này, mọi thứ đã được định cấu hình và máy chủ cơ sở dữ liệu của bạn đã sẵn sàng chấp nhận kết nối từ máy chủ web của bạn. Bây giờ bạn có thể trỏ ứng dụng của mình đến máy chủ MySQL mà không gặp sự cố. Điều quan trọng cần nhớ là khi thiết lập các ứng dụng web để hoạt động với máy chủ MySQL từ xa, bạn phải tạo một người dùng có quyền đối với hệ thống từ xa (như được hiển thị ở trên).

Sử dụng MySQL trên một máy chủ cơ sở dữ liệu riêng biệt rất giống với việc chạy một máy chủ cơ sở dữ liệu cục bộ. Thông thường, các ứng dụng yêu cầu bạn chỉ định “tên máy chủ cơ sở dữ liệu” và các máy chủ cơ sở dữ liệu thông thường chạy trên máy cục bộ có tên máy chủ là localhost . Khi bạn tách biệt cơ sở dữ liệu và máy chủ ứng dụng, bạn sẽ cần chỉ định tên máy chủ, như đã đặt ở trên, trong ứng dụng.

Ví dụ:cài đặt cơ sở dữ liệu inWordPress được chứa trong wp-config.php và tên máy chủ được chỉ định ở định dạng sau:

Tệp:wp -config.php
1
2
/** MySQL hostname */
define('DB_HOST', 'mysql');

Lưu ý rằng phương pháp đặt tên máy chủ khác nhau giữa các ứng dụng. Hơn nữa, bạn có thể thay thế địa chỉ IP cụ thể của máy chủ cơ sở dữ liệu, thay vì sử dụng tên máy chủ như được định cấu hình trong /etc/hosts ở trên.

Ngoài ra, hãy cân nhắc tham khảo trang web externalMySQL để biết các truy vấn cụ thể của MySQL và trợ giúp liên quan.

Thông tin thêm

Bạn có thể muốn tham khảo các nguồn sau đây để biết thêm thông tin về chủ đề này. Mặc dù những điều này được cung cấp với hy vọng rằng chúng sẽ hữu ích, xin lưu ý rằng chúng tôi không thể đảm bảo tính chính xác hoặc kịp thời của các tài liệu được lưu trữ bên ngoài.

  • Hướng dẫn Ứng dụng Web
  • Khung ứng dụng Web
  • Hệ thống quản lý cơ sở dữ liệu

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chọn phần trăm TOP X (hoặc dưới cùng) cho các giá trị số trong MySQL

  2. Ví dụ về CURDATE () - MySQL

  3. Truy vấn Mysql để chuyển đổi động các hàng thành cột

  4. ScaleGrid DBaaS mở rộng dịch vụ lưu trữ MySQL thông qua đám mây AWS

  5. MySQL - Toán hạng phải chứa 1 (các) cột