Cái nào sau đây là một tính năng của mysql?
PostgreSQL phiên bản 10 đã giới thiệu một số tính năng và cải tiến thú vị cho bối cảnh hiện có của PostgreSQL. Một tính năng như vậy là sao chép logic bằng cách sử dụng khung xuất bản và đăng ký. AWS cung cấp hai tùy chọn PostgreSQL được quản lý. Amazon RDS cho PostgreSQL và Amazon Aurora PostgreSQL. Bài đăng này thảo luận về cách sử dụng khung hiện có để tạo bản sao chỉ có quyền đọc tự quản lý từ Amazon RDS cho PostgreSQL hoặc Aurora. Bạn có thể áp dụng quy trình tương tự để tạo bản sao chỉ có quyền đọc trên PostgreSQL dựa trên Amazon Elastic Compute Cloud (Amazon EC2), Amazon RDS for PostgreSQL và Aurora PostgreSQL Show
Amazon RDS cho PostgreSQL hỗ trợ khung đăng ký và xuất bản từ phiên bản công cụ 10. 4 trở lên. Aurora PostgreSQL hỗ trợ khung đăng ký và xuất bản từ phiên bản công cụ 2. 2 (tương thích với 10. 6) trở lên Tổng quan về giải phápMột triển khai điển hình của Amazon RDS cho cơ sở dữ liệu PostgreSQL và Aurora PostgreSQL liên quan đến việc ghi ứng dụng được cung cấp bởi một phiên bản chính và các lần đọc được giảm tải cho các bản sao được quản lý của AWS. Tuy nhiên, một số trường hợp sử dụng kinh doanh nhất định cũng yêu cầu bạn thiết lập một phiên bản bản sao tự quản lý bổ sung để phục vụ các ứng dụng xuôi dòng độc lập khác chỉ cần hoạt động trên một tập hợp con dữ liệu (chỉ một số cơ sở dữ liệu hoặc một số bảng). Việc sao chép một phần như vậy cho phép các bản sao riêng lẻ xử lý song song các phần độc lập của khối lượng công việc, do đó làm tăng khả năng mở rộng tổng thể của hệ thống Với việc giới thiệu bản sao logic bằng cách sử dụng khung đăng ký và xuất bản, vai trò 9 hiện có thể thiết lập bản sao tự quản lý tùy chỉnh cho PostgreSQL phiên bản 10 trở lên. Vì sao chép logic là một giải pháp cấp cơ sở dữ liệu và có khả năng sao chép một số hoặc tất cả các bảng của cơ sở dữ liệu, bạn vẫn nên xem xét các bản sao chỉ có quyền đọc do AWS tạo cho Amazon RDS for PostgreSQL và Aurora PostgreSQL để phục vụ lưu lượng đọc của ứng dụng sản xuất chính . Để biết thêm thông tin, hãy xem Làm việc với Bản sao chỉ có quyền đọc của PostgreSQL trong Amazon RDS và Sao chép với Amazon Aurora PostgreSQL. Chúng tôi đề cập đến những cân nhắc thêm xung quanh các tính năng của sao chép logic sau trong bài đăng nàySao chép logic sử dụng mô hình xuất bản và đăng ký trong đó người đăng ký lấy dữ liệu từ các ấn phẩm mà họ đăng ký. Sao chép logic bắt đầu bằng cách sao chép ảnh chụp nhanh dữ liệu hiện có ban đầu trên cơ sở dữ liệu của nhà xuất bản. Khi hoàn tất, các thay đổi trên nhà xuất bản (CHÈN, CẬP NHẬT và XÓA) sẽ được chuyển tiếp tới người đăng ký trong thời gian gần như thực. Người đăng ký áp dụng dữ liệu theo cùng thứ tự mà các cam kết đã được thực hiện đối với nhà xuất bản để đảm bảo tính nhất quán của giao dịch Điều này trái ngược với sao chép vật lý, trong đó các địa chỉ khối chính xác được sử dụng để sao chép từng byte một Sơ đồ sau đây biểu thị luồng dữ liệu để sao chép và đồng bộ hóa dữ liệu ban đầu Quy trình bao gồm các bước sau
Sơ đồ sau đây minh họa luồng dữ liệu giao dịch (sau khi ảnh chụp nhanh ban đầu được sao chép) Quy trình bao gồm các bước sau
điều kiện tiên quyếtTrước khi triển khai giải pháp này, bạn phải thiết lập bản sao hợp lý. Để biết hướng dẫn về Amazon RDS cho PostgreSQL, hãy xem Bản sao logic cho PostgreSQL trên Amazon RDS. Để biết hướng dẫn về Aurora PostgreSQL, hãy xem Định cấu hình sao chép logic Cân nhắc với sao chép hợp lýMột số cân nhắc phổ biến khi sử dụng sao chép logic bao gồm những điều sau đây
Đang cài đặtĐối với bài đăng này, chúng tôi sử dụng Amazon RDS cho PostgreSQL (phiên bản 10. 4) làm phiên bản nhà xuất bản và phiên bản PostgreSQL tự quản lý (phiên bản 10. 6) với tư cách là người đăng ký. Nhà xuất bản dự định sao chép tất cả các bảng của cơ sở dữ liệu 13 cho người đăng ký tự quản lýBạn có thể sử dụng cơ sở dữ liệu người đăng ký làm nhà xuất bản cho các cơ sở dữ liệu xuôi dòng khác bằng cách xác định các ấn phẩm của chính nó (cấu hình sao chép theo tầng). Tuy nhiên, để đơn giản, bài đăng này giả định rằng ứng dụng coi người đăng ký (cơ sở dữ liệu PostgreSQL tự quản lý) là chỉ đọc Để rõ ràng về hình ảnh, các câu lệnh SQL bao gồm các lời nhắc psql sau (được tùy chỉnh qua tệp psqlrc) cho nhà xuất bản và người đăng ký
Đoạn mã sau liệt kê siêu dữ liệu kết nối và quyền 7Tạo các đối tượng tại nhà xuất bản trước khi thiết lập sao chépĐể tạo các đối tượng của bạn tại nhà xuất bản trước khi thiết lập bản sao, hãy hoàn thành các bước sau
Tạo các đối tượng tại nhà xuất bản sau khi thiết lập bản saoĐể tạo các đối tượng của bạn tại nhà xuất bản sau khi thiết lập bản sao, hãy xem đoạn mã sau 6Lược đồ phải tồn tại ở thuê bao tự quản lý để sao chép hoạt động. Sau khi tạo, hãy làm mới siêu dữ liệu bằng cách sử dụng 36. Xem đoạn mã sau 0Vấn đề chuyển đổi kiểu dữ liệu giữa các lược đồ đối tượngChúng tôi đã sao chép thành công đối tượng của nhà xuất bản (với cột 9) sang đối tượng của người đăng ký (với cột 10). Để minh họa thêm về hành vi với các chuyển đổi không tương thích, hãy tạo một bảng có tên 39 với loại dữ liệu 9 trong phiên bản nhà xuất bản. Xem đoạn mã sau 1Tạo một bảng có tên là 39 với kiểu dữ liệu 12 trong thể hiện thuê bao. Xem đoạn mã sau 2Làm mới đăng ký và xác thực dữ liệu. Xem đoạn mã sau 3Trong đoạn mã trước, trạng thái đăng ký ( 93) vẫn là 94 (dữ liệu đang được sao chép); . Đánh giá nhanh các bản ghi lỗi do người đăng ký tạo ra phác thảo trạng thái sao chép thực tế. Nhân viên sao chép hợp lý cố gắng đồng bộ hóa ban đầu qua COPY nhưng không chuyển đổi kiểu dữ liệu. Khi nhân viên tiếp tục thử lại, đoạn trích sau đây liên tục được sao chép trong nhật ký lỗi tương ứng 4Cập nhật và xóa trên nhà xuất bảnSiêu dữ liệu của ấn phẩm đề xuất các hoạt động CẬP NHẬT và XÓA được sao chép. Xem đoạn mã sau 5Tuy nhiên, thao tác CẬP NHẬT không thành công nếu sơ đồ bảng không liên quan đến danh tính bản sao. Xem đoạn mã sau 6Một bảng đã xuất bản phải có một danh tính bản sao để sao chép các hoạt động CẬP NHẬT và XÓA. Cấu hình này sửa đổi thông tin được ghi vào nhật ký giao dịch (WAL) và giúp xác định các hàng liên quan. Các tùy chọn có thể là như sau
Nếu bất kỳ tùy chọn nào khác FULL được đặt ở phía nhà xuất bản, thì danh tính bản sao bao gồm các cột giống hoặc ít hơn cũng phải được đặt ở phía người đăng ký Để đơn giản, danh tính bản sao được đặt thành ĐẦY ĐỦ trong bài đăng này. Cấu hình ĐẦY ĐỦ ngụ ý rằng toàn bộ hàng của bảng trở thành khóa và toàn bộ hàng giá trị cũ được lưu trữ. Cách tiếp cận này có thể trở nên không hiệu quả từ quan điểm lưu trữ (so với các tùy chọn khác) và chỉ nên được sử dụng như là phương sách cuối cùng cho các đối tượng không thể có khóa chính hoặc chỉ mục. Ví dụ: bạn có thể sử dụng danh tính bản sao là ĐẦY ĐỦ với các bảng kiểm tra và lịch sử, thường không có khóa chính hoặc chỉ mục được liên kết. Xem đoạn mã sau 7Dọn dẹpSau khi hoàn thành hướng dẫn này, bạn nên dọn sạch tài nguyên của mình. Xem đoạn mã sau 8Bản tóm tắtBài đăng này minh họa nhu cầu song song hóa các phần độc lập của khối lượng công việc và các cách để đạt được điều đó bằng cách sao chép dữ liệu một phần. Bạn có thể sử dụng phương pháp này để đạt được các bản nâng cấp có thời gian ngừng hoạt động thấp, chia cơ sở dữ liệu thành các phân đoạn, thực hiện các thay đổi lược đồ trực tuyến, v.v. Chúng tôi khuyến khích bạn sử dụng khung sao chép logic của PostgreSQL cộng đồng trong môi trường Amazon RDS for PostgreSQL và Aurora PostgreSQL của bạn để thiết lập sao chép một phần dữ liệu mà không cần quản lý tài nguyên trung gian. Như mọi khi, AWS hoan nghênh phản hồi, vì vậy vui lòng để lại suy nghĩ hoặc câu hỏi của bạn trong phần bình luận Thông tin về các Tác giảNikhil Khokhar là Kiến trúc sư giải pháp tại AWS. Anh gia nhập AWS vào năm 2016, chuyên xây dựng và hỗ trợ các giải pháp truyền dữ liệu giúp khách hàng phân tích và khai thác giá trị từ dữ liệu của họ. Khi rảnh rỗi, anh tận dụng kỹ năng in 3D của mình để giải quyết các vấn đề hàng ngày Bản sao có phải là một tính năng của MySQL không?Tính năng sao chép trong MySQL hỗ trợ sao chép một chiều, không đồng bộ, trong đó một máy chủ đóng vai trò là nguồn, trong khi một hoặc nhiều máy chủ khác đóng vai trò là bản sao.
Có trình kích hoạt nào trong MySQL không?Trình kích hoạt MySQL là đối tượng cơ sở dữ liệu được liên kết với bảng . Nó sẽ được kích hoạt khi một hành động xác định được thực thi cho bảng. Trình kích hoạt có thể được thực thi khi bạn chạy một trong các câu lệnh MySQL sau trên bảng. CHÈN, CẬP NHẬT và XÓA và nó có thể được gọi trước hoặc sau sự kiện.
Trình kích hoạt MySQL là gì?Trình kích hoạt là đối tượng cơ sở dữ liệu có tên được liên kết với bảng và kích hoạt khi một sự kiện cụ thể xảy ra đối với bảng . Một số cách sử dụng trình kích hoạt là để thực hiện kiểm tra các giá trị được chèn vào bảng hoặc để thực hiện các phép tính trên các giá trị liên quan đến một bản cập nhật.
Bản sao MySQL là gì?Trong MySQL, sao chép liên quan đến cơ sở dữ liệu nguồn ghi lại mọi thay đổi được thực hiện đối với dữ liệu được giữ trong một hoặc nhiều cơ sở dữ liệu trong một tệp đặc biệt được gọi là nhật ký nhị phân. Once the replica instance has been initialized, it creates two threaded processes. |