MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Mẹo nâng cấp máy chủ Percona cho MongoDB

Máy chủ Percona cho MongoDB là bản phân phối mã nguồn mở MongoDB do Percona cung cấp. Nó là một phiên bản miễn phí, hoàn toàn tương thích và thay thế cho phiên bản MongoDB Community. Nó cũng cung cấp các tính năng “cấp doanh nghiệp” mà nếu không sẽ chỉ có trong Phiên bản Doanh nghiệp của MongoDB, ví dụ:Xác thực và ủy quyền LDAP, Ghi nhật ký kiểm tra, Xác thực Kerberos.

Nâng cấp Máy chủ Percona cho MongoDB thực sự đơn giản. Trong blog này, chúng tôi sẽ thảo luận về một số mẹo nâng cấp và đưa ra ví dụ về cách nâng cấp từ phiên bản 3.6 lên phiên bản 4.0.

Chuẩn bị Nâng cấp

Trước khi chạy nâng cấp, bạn có thể cần chuẩn bị một số. Luôn kiểm tra các thay đổi về khả năng tương thích trong tài liệu và phía ứng dụng của bạn; kiểm tra các tài liệu liên quan đến các thay đổi và cải tiến các tính năng, chức năng lỗi thời (nếu có).

Kiểm tra ma trận tương thích trình điều khiển cho MongoDB để biết bạn có cần nâng cấp trình điều khiển hay không.

Chuẩn bị danh sách kiểm tra từng bước về cách thực hiện nâng cấp. Viết ra kế hoạch hành động, các bên cần tham gia vào tài liệu, kế hoạch khôi phục cho các tình huống xấu nhất.

Nâng cấp Máy chủ Percona cho MongoDB

Kiểm tra nâng cấp của bạn trong môi trường phát triển hoặc môi trường tổ chức trước khi chuyển sang môi trường sản xuất luôn tốt. Bạn có thể xây dựng chính xác cùng một kiến ​​trúc MongoDB như sản xuất, kiểm tra và khôi phục dữ liệu từ lần sao lưu cuối cùng. Sau đó, bạn có thể kiểm tra nâng cấp và xác nhận kế hoạch nâng cấp của mình, không chỉ vậy bạn có thể ước tính thời gian nâng cấp và còn xác minh xem ứng dụng có tương thích với phiên bản mới của cơ sở dữ liệu hay không.

Quá trình nâng cấp chỉ cần cài đặt gói mới từ kho lưu trữ percona, đây là cách nâng cấp trên CentOS dựa trên phiên bản 3.6 lên phiên bản 4.0.

Bước Một

Nếu bạn chưa cài đặt Percona Repository, bạn có thể cài đặt percona-release-mới nhất.

[[email protected] ~]# yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm

Loaded plugins: fastestmirror

percona-release-latest.noarch.rpm                                                                                   |  19 kB  00:00:00

Examining /var/tmp/yum-root-evWD4w/percona-release-latest.noarch.rpm: percona-release-1.0-25.noarch

Marking /var/tmp/yum-root-evWD4w/percona-release-latest.noarch.rpm to be installed

Resolving Dependencies

--> Running transaction check

---> Package percona-release.noarch 0:1.0-25 will be installed

--> Finished Dependency Resolution



Dependencies Resolved



===========================================================================================================================================

 Package                          Arch                    Version                    Repository                                       Size

===========================================================================================================================================

Installing:

 percona-release                  noarch                  1.0-25                     /percona-release-latest.noarch                   31 k



Transaction Summary

===========================================================================================================================================

Install  1 Package



Total size: 31 k

Installed size: 31 k

Is this ok [y/d/N]: y

Bước Hai

Sau khi cài đặt kho lưu trữ Percona, hãy bật Máy chủ Percona cho MongoDB 4.0

[[email protected] ~]# percona-release enable psmdb-40

* Enabling the Percona Server for MongoDB 4.0 repository

<*> All done!

Bước Ba

Cài đặt gói mới percona-server-mongodb, nó sẽ tự động xóa gói cũ và cài đặt gói mới:

[[email protected] ~]# yum install percona-server-mongodb

Loaded plugins: fastestmirror

Repository percona-release-noarch is listed more than once in the configuration

base                                                                                                                | 3.6 kB  00:00:00

extras                                                                                                              | 2.9 kB  00:00:00

percona-release                                                                                                     | 2.9 kB  00:00:00

percona-release-noarch                                                                                              | 2.9 kB  00:00:00

percona-release-x86_64                                                                                              | 2.9 kB  00:00:00

prel-release-noarch                                                                                                 | 2.9 kB  00:00:00

psmdb-40-release-x86_64                                                                                             | 2.9 kB  00:00:00

updates                                                                                                             | 2.9 kB  00:00:00

(1/3): prel-release-noarch/7/primary_db                                                                             | 2.5 kB  00:00:00

(2/3): psmdb-40-release-x86_64/7/primary_db                                                                         |  47 kB  00:00:01

(3/3): percona-release-x86_64/7/primary_db                                                                          | 1.1 MB  00:00:03

Loading mirror speeds from cached hostfile

 * base: mirror.buana.web.id

 * extras: mirror.buana.web.id

 * updates: mirror.buana.web.id

Resolving Dependencies

--> Running transaction check

---> Package Percona-Server-MongoDB-36.x86_64 0:3.6.19-8.0.el7 will be obsoleted

---> Package percona-server-mongodb.x86_64 0:4.0.20-14.el7 will be obsoleting

--> Processing Dependency: percona-server-mongodb-tools = 4.0.20-14.el7 for package: percona-server-mongodb-4.0.20-14.el7.x86_64

--> Processing Dependency: percona-server-mongodb-mongos = 4.0.20-14.el7 for package: percona-server-mongodb-4.0.20-14.el7.x86_64

--> Processing Dependency: percona-server-mongodb-shell = 4.0.20-14.el7 for package: percona-server-mongodb-4.0.20-14.el7.x86_64

--> Processing Dependency: percona-server-mongodb-server = 4.0.20-14.el7 for package: percona-server-mongodb-4.0.20-14.el7.x86_64

--> Running transaction check

---> Package Percona-Server-MongoDB-36-mongos.x86_64 0:3.6.19-8.0.el7 will be obsoleted

---> Package Percona-Server-MongoDB-36-server.x86_64 0:3.6.19-8.0.el7 will be obsoleted

---> Package Percona-Server-MongoDB-36-shell.x86_64 0:3.6.19-8.0.el7 will be obsoleted

---> Package Percona-Server-MongoDB-36-tools.x86_64 0:3.6.19-8.0.el7 will be obsoleted

---> Package percona-server-mongodb-mongos.x86_64 0:4.0.20-14.el7 will be obsoleting

---> Package percona-server-mongodb-server.x86_64 0:4.0.20-14.el7 will be obsoleting

---> Package percona-server-mongodb-shell.x86_64 0:4.0.20-14.el7 will be obsoleting

---> Package percona-server-mongodb-tools.x86_64 0:4.0.20-14.el7 will be obsoleting

--> Finished Dependency Resolution



Dependencies Resolved



===========================================================================================================================================

 Package                                     Arch                 Version                      Repository                             Size

===========================================================================================================================================

Installing:

 percona-server-mongodb                      x86_64               4.0.20-14.el7                psmdb-40-release-x86_64               4.9 k

     replacing  Percona-Server-MongoDB-36.x86_64 3.6.19-8.0.el7

 percona-server-mongodb-mongos               x86_64               4.0.20-14.el7                psmdb-40-release-x86_64               8.9 M

     replacing  Percona-Server-MongoDB-36-mongos.x86_64 3.6.19-8.0.el7

 percona-server-mongodb-server               x86_64               4.0.20-14.el7                psmdb-40-release-x86_64                19 M

     replacing  Percona-Server-MongoDB-36-server.x86_64 3.6.19-8.0.el7

 percona-server-mongodb-shell                x86_64               4.0.20-14.el7                psmdb-40-release-x86_64               9.8 M

     replacing  Percona-Server-MongoDB-36-shell.x86_64 3.6.19-8.0.el7

 percona-server-mongodb-tools                x86_64               4.0.20-14.el7                psmdb-40-release-x86_64                28 M

     replacing  Percona-Server-MongoDB-36-tools.x86_64 3.6.19-8.0.el7



Transaction Summary

===========================================================================================================================================

Install  5 Packages



Total download size: 66 M

Is this ok [y/d/N]: y

Downloading packages:

(1/5): percona-server-mongodb-4.0.20-14.el7.x86_64.rpm                                                              | 4.9 kB  00:00:05

(2/5): percona-server-mongodb-mongos-4.0.20-14.el7.x86_64.rpm                                                       | 8.9 MB  00:00:39

(3/5): percona-server-mongodb-shell-4.0.20-14.el7.x86_64.rpm                                                        | 9.8 MB  00:00:42

(4/5): percona-server-mongodb-server-4.0.20-14.el7.x86_64.rpm                                                       |  19 MB  00:01:23

(5/5): percona-server-mongodb-tools-4.0.20-14.el7.x86_64.rpm                                                        |  28 MB  00:02:00

-------------------------------------------------------------------------------------------------------------------------------------------

Total                                                                                                      332 kB/s |  66 MB  00:03:22

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

  Installing : percona-server-mongodb-shell-4.0.20-14.el7.x86_64                                                                      1/10

  Installing : percona-server-mongodb-server-4.0.20-14.el7.x86_64                                                                     2/10

warning: /etc/mongod.conf created as /etc/mongod.conf.rpmnew

 * To start the service, configure your engine and start mongod

 ** WARNING: Access control is not enabled for the database.

 ** Read and write access to data and configuration is unrestricted.

 ** To fix this please use /usr/bin/percona-server-mongodb-enable-auth.sh

  Installing : percona-server-mongodb-mongos-4.0.20-14.el7.x86_64                                                                     3/10

  Installing : percona-server-mongodb-tools-4.0.20-14.el7.x86_64                                                                      4/10

  Installing : percona-server-mongodb-4.0.20-14.el7.x86_64                                                                            5/10

  Erasing    : Percona-Server-MongoDB-36-3.6.19-8.0.el7.x86_64                                                                        6/10

  Erasing    : Percona-Server-MongoDB-36-server-3.6.19-8.0.el7.x86_64                                                                 7/10

  Erasing    : Percona-Server-MongoDB-36-shell-3.6.19-8.0.el7.x86_64                                                                  8/10

  Erasing    : Percona-Server-MongoDB-36-mongos-3.6.19-8.0.el7.x86_64                                                                 9/10

  Erasing    : Percona-Server-MongoDB-36-tools-3.6.19-8.0.el7.x86_64                                                                 10/10

  Verifying  : percona-server-mongodb-server-4.0.20-14.el7.x86_64                                                                     1/10

  Verifying  : percona-server-mongodb-tools-4.0.20-14.el7.x86_64                                                                      2/10

  Verifying  : percona-server-mongodb-mongos-4.0.20-14.el7.x86_64                                                                     3/10

  Verifying  : percona-server-mongodb-shell-4.0.20-14.el7.x86_64                                                                      4/10

  Verifying  : percona-server-mongodb-4.0.20-14.el7.x86_64                                                                            5/10

  Verifying  : Percona-Server-MongoDB-36-server-3.6.19-8.0.el7.x86_64                                                                 6/10

  Verifying  : Percona-Server-MongoDB-36-tools-3.6.19-8.0.el7.x86_64                                                                  7/10

  Verifying  : Percona-Server-MongoDB-36-mongos-3.6.19-8.0.el7.x86_64                                                                 8/10

  Verifying  : Percona-Server-MongoDB-36-shell-3.6.19-8.0.el7.x86_64                                                                  9/10

  Verifying  : Percona-Server-MongoDB-36-3.6.19-8.0.el7.x86_64                                                                       10/10



Installed:

  percona-server-mongodb.x86_64 0:4.0.20-14.el7                        percona-server-mongodb-mongos.x86_64 0:4.0.20-14.el7

  percona-server-mongodb-server.x86_64 0:4.0.20-14.el7                 percona-server-mongodb-shell.x86_64 0:4.0.20-14.el7

  percona-server-mongodb-tools.x86_64 0:4.0.20-14.el7



Replaced:

  Percona-Server-MongoDB-36.x86_64 0:3.6.19-8.0.el7                    Percona-Server-MongoDB-36-mongos.x86_64 0:3.6.19-8.0.el7

  Percona-Server-MongoDB-36-server.x86_64 0:3.6.19-8.0.el7             Percona-Server-MongoDB-36-shell.x86_64 0:3.6.19-8.0.el7

  Percona-Server-MongoDB-36-tools.x86_64 0:3.6.19-8.0.el7



Complete!

Bước Bốn

Cuối cùng, hãy bắt đầu các dịch vụ mongod.

$ systemctl start mongod.service

Quá trình cài đặt trên Ubuntu / Debian cũng tương tự, bạn chỉ cần lệnh từ trình quản lý gói APT.

Trong kiến ​​trúc MongoDB rất sẵn có, bạn có thể thực hiện nâng cấp luân phiên để giảm thiểu thời gian ngừng hoạt động.

Nếu ứng dụng của bạn đã hỗ trợ phiên bản MongoDB mới nhất, bạn có thể đặt tham số

setFeatureCompatibilityVersion after the upgrade was completed.

> db.adminCommand( { setFeatureCompatibilityVersion: "4.0" } )

Xác minh Nâng cấp

Bạn có thể xác minh xem nâng cấp có thành công hay không bằng cách kết nối trực tiếp với phiên bản MongoDB. Kiểm tra xem cơ sở dữ liệu có đang chạy với phiên bản chính xác hay không:

> db.version()

Hoặc bạn có thể kiểm tra từ dòng lệnh:

[[email protected] lib]# mongod --version

db version v4.0.20-14

git version: b96ae5b9e6c70670b6880d4c5412167a7017713a

OpenSSL version: OpenSSL 1.0.2k-fips  26 Jan 2017

allocator: tcmalloc

modules: none

build environment:

    distarch: x86_64

    target_arch: x86_64

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cách mới để quản lý cơ sở dữ liệu nguồn mở

  2. MongoDB và CodeIgniter

  3. Làm cách nào để thoát @ trong mật khẩu trong kết nối pymongo?

  4. NodeJS + MongoDB:Lấy dữ liệu từ bộ sưu tập với findOne ()

  5. Kết nối từ xa với giao diện MongoDB http trên máy chủ EC2