MySQL ke Maria DB: Panduan Penghijrahan Pantas untuk Debian

Apabila produk yang berfungsi dan terbayar, dan merupakan sumber terbuka, jatuh ke tangan syarikat yang tujuannya tidak lain adalah untuk menjana lebih banyak wang, dunia gemetar.

Ia sudah berlaku dengan OpenOffice pada masa dan sekarang giliran MySQL. Membawa ke Oracle di belakang tidak ada yang tahu apa yang boleh berlaku dan ada baiknya kita mengetahui bahawa ada alternatif dan khususnya yang terbaik adalah Maria DB.

Memetik Wikipedia:

MariaDB ialah sistem Pengurusan Pengkalan data berasal dari MySQL dengan Lesen GPL. Ia dibangunkan oleh michael widenius (pengasas MySQL) dan komuniti pemaju perisian percuma. Masukkan dua enjin simpanan baru, yang dipanggil Aria -yang diganti dengan kelebihan MyISAM- dan panggilan lain XtraDB -tempat semula InnoDB. Ia mempunyai keserasian yang tinggi dengan MySQL kerana mempunyai perintah, antaramuka, API dan perpustakaan yang sama, dengan objektifnya untuk dapat mengubah satu pelayan untuk yang lain secara langsung.

Jadi tanpa basa-basi mari kita lihat bagaimana untuk pergi MySQL a Maria DB.

Penting untuk mengetahui bahawa agar ini berfungsi 100%, kita mesti mempunyai versi MySQL (5.5) dan Maria DB (5.5) yang sama

Berhijrah dari MySQL ke Maria DB

Proses ini tidak dapat dilakukan dengan panas. Dengan kata lain, kita harus berhenti sejenak perkhidmatan dan proses yang sedang kita laksanakan MySQL.

# hentian perkhidmatan apache2 # hentian perkhidmatan nginx # hentian perkhidmatan mysql

Dalam kes ini, kita menghentikan Apache atau NGinx bergantung pada mana yang kita gunakan, dan tentu saja kita juga menghentikan MySQL.

Kemudian kami membuat sandaran pangkalan data MySQL kami:

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

Dan kami membuang semua pakej yang berkaitan dengan MySQL:

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

Sekarang kita harus memasang Maria DB. Sayangnya, ini belum ada di repositori Debian, tetapi kita boleh memasangnya menggunakan repositori sendiri. Untuk pengedaran lain, anda dapat melihat arahan di sini.

Kami menambahkan perkara berikut ke fail /etc/sources.list kami:

# Daftar repositori MariaDB 5.5 - dibuat 2013-08-02 13:48 UTC # http://mariadb.org/mariadb/repositories/ deb http://ftp.osuosl.org/pub/mariadb/repo/5.5/debian wheezy deb-src utama http://ftp.osuosl.org/pub/mariadb/repo/5.5/debian wheezy main

Kemudian kami mengemas kini dan memasang Maria DB:

sudo aptitude update sudo apt-get install mariadb-server

Kami memulakan Maria DB (jika tidak melakukannya secara automatik) dan memastikan ia berfungsi:

# mysql -u root -p -Be 'show database' Masukkan kata laluan:

Beberapa tetapan telah banyak berubah antara MySQL dan MariaDB, namun sangat mudah untuk digunakan. Hampir semua yang berubah ada kaitannya dengan mekanisme yang telah diganti, misalnya, replikasi. Kita hanya perlu menyalin pilihan pengoptimuman prestasi yang kita ada dalam fail my.cnf de MySQL, dan susun semula selebihnya dengan tangan.

Contohnya, data ini:

bind-address = 127.0.0.1 max_connections = 10 connect_timeout = 30 waiting_timeout = 600 max_allowed_packet = 16M thread_cache_size = 256 OR sort = 16M pukal_insert_buffer_size = 16M tmp_table_size = 64M max_heap_table_size = 64M

Kami membuat perubahan yang diperlukan dan memulakan semula Maria DB.

# perkhidmatan mysql mulakan semula Menghentikan pelayan pangkalan data MariaDB: mysqld. Memulakan pelayan pangkalan data MariaDB: mysqld. . . Memeriksa kerosakan, tidak ditutup dengan bersih dan menaik taraf jadual yang diperlukan .. # mysql -u root -p -Be 'show database' Masukkan kata laluan:

dan Maria DB simpan nama mysql yang sama untuk memulakan semula perkhidmatan, untuk mengekalkan keserasian yang lebih baik. Sekiranya semuanya baik-baik saja, maka kami memulakan perkhidmatan selebihnya:

# perkhidmatan apache2 mula # perkhidmatan nginx bermula

Dan bersedia. Sekiranya kita mahu kembali (yang saya tidak cadangkan), kita hanya perlu menjalankan:

# perkhidmatan berhenti mysql # apt-get remove mariadb-server-5.5 mariadb-common mariadb-client-5.5 libmariadbclient18 # apt-get pasang mysql-server

Sumber: Artikel diambil dan diubah suai dari BeginLinux


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   Mauritius kata

    Kerana beban sandaran pangkalan data hilang.

    1.    meriah kata

      Saya rasa tidak semestinya, tapi terima kasih atas penjelasannya. Kami membuat sandaran sekiranya Pangkalan Data semasa gagal, kerana menurut saya kedua-duanya menggunakan DB yang sama. Saya mesti membaca lebih lanjut mengenai perkara ini.

  2.   ozkar kata

    Fedora 19 sudah hadir dengan Maria secara lalai, tetapi tidak pendek dan malas saya memindahkan aplikasi web saya ke PostgreSQL, kerana MySQL memukul kami, saya harap PostgreSQL tetap setia sekurang-kurangnya 2-3 tahun.

    1.    meriah kata

      ArchLinux juga merangkumi Maria DB 😀

      1.    ozkar kata

        Anda mempunyai wakil Arch ... walaupun saya mempunyai gigi yang longgar dan mahu menggunakannya lagi ... tetapi saya malas. 😀

  3.   3ndriago kata

    Saya melihat aliran sistem termasuk sokongan untuk MariaDB dan mengikut apa yang telah saya baca sepertinya berada pada tahap MySQL dan bahkan melampauinya dalam beberapa aspek, tetapi persoalan saya ialah: hakikat bahawa sekarang Oracle berada di belakang MySQL untuk berhijrah dan jadi dengan cara meninggalkan pengurus bd yang diuji masa dan berjuta-juta?

    1.    meriah kata

      Anda betul. Hanya mengatakan bahawa Oracle adalah alasan yang cukup untuk kehabisan MySQL. Juga, Maria DB adalah garpu MySQL yang dikendalikan oleh pencipta MySQL dan Komuniti. Saya tidak tahu tentang anda, tapi sekurang-kurangnya itu memberi saya banyak keselamatan. Dan jika kita menambah bahawa keserasiannya sangat baik, kerana saya rasa tidak ada alasan untuk beralih ke Maria DB.

      😉

      1.    eliotime3000 kata

        Itulah sebabnya saya enggan memasang Java pada Debian saya. Saya hampir tidak menggunakan OpenJDK dengan IcedTea dan ia berfungsi dengan lebih hebat, dan lebih baik daripada Java.

      2.    3ndriago kata

        Baiklah, lelaki, saya pasti anda mesti mempunyai alasan untuk membenci Oracle (baunya seperti yang membuat anda membenci Microsoft, Apple dan juga Google) tetapi kerana Oracle tidak melakukan apa-apa kepada saya ... dan saya rasa Saya akan memberi anda SPARC untuk ulang tahun XD anda

        1.    eliotime3000 kata

          Ia merujuk kepada tahap perisian, bukan tahap perkakasan.

          1.    3ndriago kata

            Tidak, jika kita akan membenci, kita membenci segala-galanya, setengah langkah itu tidak keren ... hehehehehehe

          2.    meriah kata

            xDD

  4.   st0rmt4il kata

    Terima kasih elav, bolehkah anda mempunyai kedua-dua pelayan web dan bermula pada masa yang sama?

    Salam!

    1.    meriah kata

      Sebilangan orang menggunakan Apache sebagai pelayan web dan NGnix sebagai proksi untuk permintaan web. Cukup berantakan. Contohnya semasa menggunakan Node.js, yang menggunakan port dari belakang yang tidak digunakan oleh sesiapa pun dan mungkin ISP anda telah menyekatnya 😀

  5.   eliotime3000 kata

    Tutor penghijrahan yang baik. Slackware juga telah lama berpindah ke MariaDB untuk mengelakkan kekacauan dengan MySQL.

    Sebaik sahaja di repo keselamatan backport Debian, saya akan mengumumkannya secepat mungkin. Buat masa ini saya mengumpulkan tutorial saya mengenai pemasangan / konfigurasi / penyesuaian Slackware.

  6.   jlbaena kata

    Tetapi adakah kde masih bergantung pada mysql (pada debian) atau dengan penghijrahan ini tidak diperlukan lagi?

  7.   brunocascio kata

    Oleh itu, dari apa yang saya fahami, setiap aplikasi yang dikonfigurasi dengan mysql tidak perlu mengkonfigurasi semula sesuatu daripadanya? Pasang saja MariaDB (dan nyahpasang mysql) dan simpan nama-nama kerana mysql sepatutnya berfungsi?

    Mengenai prestasi, perubahan enjin disebutkan.
    Adakah mereka berprestasi cemerlang dengan MylSam dan InnoDB yang lama?

    Seseorang melakukan sebarang metrik?

      1.    brunocascio kata

        Saya faham haha, Terima kasih!

  8.   helena_ryuu kata

    Terima kasih banyak-banyak! jika sudah jelas bagi saya; D

  9.   Xavier kata

    Tidak dapat menetapkan kata laluan untuk pengguna "root" MariaDB

    Error Ralat berlaku semasa menetapkan kata laluan untuk MariaDB │
    │ pengguna pentadbiran. Ini mungkin berlaku kerana akaun sudah │
    │ mempunyai kata laluan, atau kerana masalah komunikasi dengan MariaDB │
    │ pelayan. │
    │ │
    Should Anda harus memeriksa kata laluan akaun setelah pemasangan pakej. │
    │ │
    │ Sila baca fail /usr/share/doc/mariadb-server-10.1/README.Debian │
    │ untuk maklumat lebih lanjut.

    1.    Xavier kata

      Saya menyahpasang pakej pelayan mariadb maridb
      Saya membuang direktori / var / lib / mysql.
      3 Pasang semula pakej pelayan Mariadb, Mariadb.
      systemct mula mariadb; systemctl membolehkan mariadb (masalah diselesaikan).