MySQL sang Maria DB: Hướng dẫn di chuyển nhanh cho Debian

Khi một sản phẩm hoạt động hiệu quả, và là mã nguồn mở, rơi vào tay một công ty có mục tiêu không gì khác là kiếm ngày càng nhiều tiền hơn, thế giới rung chuyển.

Nó đã xảy ra với OpenOffice vào thời điểm đó và bây giờ đến lượt MySQL. Mang đến Oracle đằng sau không ai biết điều gì có thể xảy ra và thật tốt khi biết rằng có những lựa chọn thay thế và đặc biệt điều tốt nhất là Maria DB.

Trích dẫn Wikipedia:

MariaDB là một hệ thống quản lý cơ sở dữ liệu bắt nguồn từ MySQL với Giấy phép GPL. Nó được phát triển bởi michael widenius (sáng lập của MySQL) và cộng đồng nhà phát triển phần mềm tự do. Nhập hai động cơ lưu trữ mới, một cái được gọi là Điệu nhạc -mà thay thế bằng những ưu điểm MyISAM- và một cuộc gọi khác XtraDB -đặt chỗ InnoDB. Nó có khả năng tương thích cao với MySQL vì nó có các lệnh, giao diện, API và thư viện giống nhau, mục tiêu của nó là có thể thay đổi trực tiếp một máy chủ này cho một máy chủ khác.

Vì vậy, không cần thêm quảng cáo, hãy xem cách đi từ MySQL a Maria DB.

Điều quan trọng cần biết là để điều này hoạt động 100%, chúng ta phải có cùng một phiên bản MySQL (5.5) và Maria DB (5.5)

Di chuyển từ MySQL sang Maria DB

Quá trình này không thể được thực hiện nóng. Nói cách khác, chúng tôi phải dừng lại trong giây lát các dịch vụ và quy trình của chúng tôi đang thực thi MySQL.

# ngừng dịch vụ apache2 # ngừng dịch vụ nginx # ngừng dịch vụ mysql

Trong trường hợp này, chúng tôi dừng Apache hoặc NGinx tùy thuộc vào việc chúng tôi đang sử dụng cái nào và tất nhiên chúng tôi cũng dừng MySQL.

Sau đó, chúng tôi tạo bản sao lưu cơ sở dữ liệu MySQL của mình:

# mysqldump -u root -p --all-databases > mysqlbackup.sql

Và chúng tôi xóa tất cả các gói liên quan đến MySQL:

# aptitude remove mysql-server-core-5.5 mysql-server-5.5 mysql-server mysql-common mysql-client-5.5 libmysqlclient18

Bây giờ chúng ta phải cài đặt Maria DB. Thật không may, nó chưa có trong kho Debian, nhưng chúng ta có thể cài đặt nó bằng cách sử dụng các kho riêng của nó. Đối với các bản phân phối khác, bạn có thể xem hướng dẫn ở đây.

Chúng tôi thêm phần sau vào tệp /etc/sources.list của chúng tôi:

# Danh sách kho lưu trữ MariaDB 5.5 - được tạo 2013-08-02 13:48 UTC # http://mariadb.org/mariadb/repositories/ deb http://ftp.osuosl.org/pub/mariadb/repo/5.5/debian wheezy main deb-src http://ftp.osuosl.org/pub/mariadb/repo/5.5/debian wheezy main

Sau đó, chúng tôi cập nhật và cài đặt Maria DB:

sudo aptitude update sudo apt-get install mariadb-server

Chúng tôi khởi động Maria DB (nếu nó không tự động làm điều đó) và kiểm tra xem nó có đang hoạt động hay không:

# mysql -u root -p -Be 'hiển thị cơ sở dữ liệu' Nhập mật khẩu:

Một số cài đặt đã thay đổi đáng kể giữa MySQL và MariaDB, tuy nhiên nó rất dễ làm việc. Hầu hết mọi thứ đã thay đổi đều liên quan đến các cơ chế đã được thay thế, ví dụ như sao chép. Chúng tôi chỉ phải sao chép các tùy chọn tối ưu hóa hiệu suất mà chúng tôi đã có trong tệp my.cnf de MySQLvà cấu hình lại phần còn lại bằng tay.

Ví dụ, những dữ liệu này:

bind-address = 127.0.0.1 max_connections = 10 connect_timeout = 30 wait_timeout = 600 max_allowed_packet = 16M thread_cache_size = 256 HOẶC sắp xếp = 16 triệu khối lượng lớn_insert_buffer_size = 16 triệu tmp_table_size = 64 triệu max_heap_table_size = 64 triệu

Chúng tôi thực hiện các thay đổi cần thiết và khởi động lại Maria DB.

# service mysql restart Dừng máy chủ cơ sở dữ liệu MariaDB: mysqld. Khởi động máy chủ cơ sở dữ liệu MariaDB: mysqld. . . Kiểm tra bảng bị hỏng, không được đóng sạch và cần nâng cấp .. # mysql -u root -p -Be 'hiển thị cơ sở dữ liệu' Nhập mật khẩu:

Vâng, Maria DB giữ cùng tên mysql để khởi động lại dịch vụ, nhằm duy trì khả năng tương thích tốt hơn. Nếu mọi thứ đều ổn, thì chúng tôi bắt đầu phần còn lại của các dịch vụ:

# service apache2 start # service nginx start

Và sẵn sàng. Nếu chúng ta muốn quay lại (điều mà tôi không khuyên dùng), chúng ta chỉ cần chạy:

# service mysql stop # apt-get remove mariadb-server-5.5 mariadb-common mariadb-client-5.5 libmariadbclient18 # apt-get install mysql-server

Nguồn: Bài viết được lấy và sửa đổi từ BeginLinux


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Mauritius dijo

    Khi tải bản sao lưu của cơ sở dữ liệu bị thiếu.

    1.    sống động dijo

      Tôi nghĩ không nhất thiết, nhưng cảm ơn vì đã làm rõ. Chúng tôi đã thực hiện sao lưu trong trường hợp Cơ sở dữ liệu hiện tại bị lỗi, vì đối với tôi dường như cả hai đều sử dụng cùng một DB. Tôi sẽ phải đọc thêm về chủ đề này.

  2.   ozkar dijo

    Fedora 19 đã đi kèm với Maria theo mặc định, nhưng không ngắn cũng không lười, tôi đã di chuyển các ứng dụng web của mình sang PostgreSQL, vì MySQL đã đánh trúng chúng tôi, tôi hy vọng PostgreSQL sẽ trung thành trong ít nhất 2-3 năm.

    1.    sống động dijo

      ArchLinux cũng bao gồm Maria DB 😀

      1.    ozkar dijo

        Bạn có một khẩu Arch ... Thậm chí tôi còn yếu răng và muốn sử dụng lại nó ... nhưng tôi lười. 😀

  3.   thứ 3 dijo

    Tôi thấy xu hướng của các hệ thống bao gồm hỗ trợ cho MariaDB và theo những gì tôi đã đọc, nó dường như ở cấp độ của MySQL và thậm chí vượt qua nó ở một số khía cạnh, nhưng câu hỏi của tôi là: thực tế là bây giờ Oracle đang đứng sau MySQL để di chuyển và vậy bằng cách từ bỏ trình quản lý bd đã được kiểm tra thời gian và hàng triệu lần sử dụng?

    1.    sống động dijo

      Bạn đúng rồi. Chỉ cần nói Oracle là đủ lý do để sử dụng MySQL. Ngoài ra, Maria DB là một nhánh của MySQL được duy trì bởi người tạo ra MySQL và Cộng đồng. Tôi không biết về bạn, nhưng ít nhất điều đó mang lại cho tôi rất nhiều sự an toàn. Và nếu chúng tôi nói thêm rằng khả năng tương thích là rất tốt, bởi vì tôi nghĩ rằng không có lý do gì để chuyển sang Maria DB.

      ????

      1.    eliotime3000 dijo

        Và đó là lý do tại sao tôi từ chối cài đặt Java trên Debian của mình. Tôi hầu như không sử dụng OpenJDK với IcedTea và nó hoạt động tuyệt vời và tốt hơn Java.

      2.    thứ 3 dijo

        Chà, anh bạn, tôi chắc rằng bạn phải có lý do để ghét Oracle (nó có mùi giống như những thứ khiến bạn ghét Microsoft, Apple và thậm chí cả Google) nhưng vì Oracle đã không làm gì tôi ... và tôi nghĩ tôi đã sẽ tặng bạn một SPARC cho sinh nhật của bạn XD

        1.    eliotime3000 dijo

          Nó đề cập đến cấp độ phần mềm, không phải cấp độ phần cứng.

          1.    thứ 3 dijo

            Không, nếu chúng ta sẽ ghét, chúng ta ghét tất cả mọi thứ, biện pháp phân nửa đó không hay ho ... hehehehehehe

          2.    sống động dijo

            xDDD

  4.   st0rmt4il dijo

    Cảm ơn elav, nhân tiện, có nên có cả hai máy chủ web và khởi động cùng một lúc không?

    Chúc mừng!

    1.    sống động dijo

      Một số người sử dụng Apache làm máy chủ web và NGnix làm proxy cho các yêu cầu web. Khá là lộn xộn. Ví dụ: khi sử dụng Node.js, sử dụng một cổng từ phía sau mà không ai sử dụng và có thể ISP của bạn đã chặn nó 😀

  5.   eliotime3000 dijo

    Gia sư di cư tốt. Ngoài ra, Slackware từ lâu đã chuyển sang MariaDB để tránh gây thêm rắc rối với MySQL.

    Ngay sau khi nó có trên kho bảo mật backport Debian, tôi sẽ thông báo nó càng sớm càng tốt. Hiện tại, tôi đang tổng hợp hướng dẫn của mình về cài đặt / cấu hình / tùy chỉnh Slackware.

  6.   jlbaena dijo

    Nhưng kde vẫn phụ thuộc vào mysql (trên debian) hay với việc di chuyển này, nó không còn cần thiết nữa?

  7.   brunocascio dijo

    Vì vậy, từ những gì tôi hiểu, mọi ứng dụng được cấu hình với mysql sẽ không phải cấu hình lại bất kỳ thứ gì của nó? Chỉ cần cài đặt MariaDB (và gỡ cài đặt mysql) và giữ tên là mysql sẽ hoạt động?

    Về hiệu suất, thay đổi động cơ được đề cập.
    Họ có hoạt động xuất sắc với MylSam và InnoDB cũ không?

    Ai đó đã thực hiện bất kỳ số liệu nào?

      1.    brunocascio dijo

        Tôi đã hiểu haha, Cảm ơn bạn!

  8.   helena_ryuu dijo

    Cảm ơn rất nhiều! bây giờ nếu nó là rõ ràng cho tôi; D

  9.   Xavier dijo

    Không thể đặt mật khẩu cho người dùng MariaDB "root"

    │ Đã xảy ra lỗi khi đặt mật khẩu cho MariaDB │
    │ người dùng quản trị. Điều này có thể đã xảy ra vì tài khoản đã có │
    │ có mật khẩu hoặc do sự cố liên lạc với MariaDB │
    │ máy chủ. │
    │ │
    │ Bạn nên kiểm tra mật khẩu của tài khoản sau khi cài đặt gói. │
    │ │
    │ Vui lòng đọc tệp /usr/share/doc/mariadb-server-10.1/README.Debian │
    │ để biết thêm thông tin.

    1.    Xavier dijo

      Tôi đã gỡ cài đặt gói máy chủ maridb mariadb
      Tôi đã xóa thư mục / var / lib / mysql.
      3 Đã cài đặt lại các gói Mariadb, Mariadb-server.
      systemct start mariadb; systemctl cho phép mariadb (vấn đề đã được giải quyết).