Bagaimana menginstal dan mengkonfigurasi server mysql di ubuntu?

MySQL adalah server database SQL yang cepat, multi-utas, multi-pengguna, dan kuat. Ini ditujukan untuk sistem produksi yang sangat penting, beban berat, dan perangkat lunak yang diterapkan secara massal

Instalasi

Untuk menginstal MySQL, jalankan perintah berikut dari prompt terminal

sudo apt install mysql-server

Setelah instalasi selesai, server MySQL harus dimulai secara otomatis. Anda dapat dengan cepat memeriksa statusnya saat ini melalui systemd

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_

Status jaringan layanan MySQL juga dapat diperiksa dengan menjalankan perintah

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
7 di terminal prompt

sudo ss -tap | grep mysql

Ketika Anda menjalankan perintah ini, Anda akan melihat sesuatu yang mirip dengan yang berikut ini

LISTEN    0         151              127.0.0.1:mysql             0.0.0.0:*       users:(("mysqld",pid=149190,fd=29))
LISTEN    0         70                       *:33060                   *:*       users:(("mysqld",pid=149190,fd=32))
_

Jika server tidak berjalan dengan benar, Anda dapat mengetikkan perintah berikut untuk memulainya

sudo service mysql restart

Titik awal yang baik untuk pemecahan masalah adalah jurnal systemd, yang dapat diakses di terminal prompt dengan perintah ini

sudo journalctl -u mysql
_

Konfigurasi

Anda dapat mengedit file di

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_8 untuk mengonfigurasi pengaturan dasar – file log, nomor port, dll. Misalnya, untuk mengonfigurasi MySQL untuk mendengarkan koneksi dari host jaringan, dalam file
sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
9, ubah direktif alamat-bind ke alamat IP server

bind-address            = 192.168.0.5
_

Catatan

Ganti 192. 168. 0. 5 dengan alamat yang sesuai, yang dapat ditentukan melalui

sudo ss -tap | grep mysql
0

Setelah melakukan perubahan konfigurasi, daemon MySQL perlu di-restart

sudo systemctl restart mysql.service

Mesin Basis Data

Sementara konfigurasi default MySQL yang disediakan oleh paket Ubuntu berfungsi dengan sempurna dan bekerja dengan baik, ada beberapa hal yang mungkin ingin Anda pertimbangkan sebelum melanjutkan.

MySQL dirancang untuk memungkinkan data disimpan dengan cara yang berbeda. Metode-metode ini disebut sebagai database atau mesin penyimpanan. Ada dua mesin utama yang akan membuat Anda tertarik. InnoDB dan MyISAM. Mesin penyimpanan bersifat transparan bagi pengguna akhir. MySQL akan menangani berbagai hal secara berbeda di bawah permukaan, tetapi terlepas dari mesin penyimpanan mana yang digunakan, Anda akan berinteraksi dengan database dengan cara yang sama

Setiap mesin memiliki kelebihan dan kekurangannya masing-masing

Meskipun mungkin, dan mungkin menguntungkan untuk mencampur dan mencocokkan mesin basis data pada tingkat tabel, hal itu mengurangi keefektifan penyetelan kinerja yang dapat Anda lakukan karena Anda akan membagi sumber daya di antara dua mesin alih-alih mendedikasikannya ke satu mesin.

  • MyISAM lebih tua dari keduanya. Itu bisa lebih cepat daripada InnoDB dalam keadaan tertentu dan mendukung beban kerja hanya baca. Beberapa aplikasi web telah disetel di sekitar MyISAM (meskipun itu tidak berarti bahwa mereka akan melambat di bawah InnoDB). MyISAM juga mendukung tipe data FULLTEXT, yang memungkinkan pencarian data teks dalam jumlah besar dengan sangat cepat. Namun MyISAM hanya mampu mengunci seluruh tabel untuk menulis. Ini berarti hanya satu proses yang dapat memperbarui tabel pada satu waktu. Karena aplikasi apa pun yang menggunakan skala tabel, ini mungkin menjadi penghalang. Itu juga tidak memiliki penjurnalan, yang mempersulit pemulihan data setelah crash. Tautan berikut memberikan beberapa poin untuk dipertimbangkan tentang penggunaan MyISAM pada database produksi

  • InnoDB adalah mesin basis data yang lebih modern, dirancang agar sesuai dengan ACID yang menjamin transaksi basis data diproses dengan andal. Penguncian tulis dapat terjadi pada tingkat baris dalam tabel. Itu berarti banyak pembaruan dapat terjadi pada satu tabel secara bersamaan. Caching data juga ditangani dalam memori di dalam mesin basis data, memungkinkan caching pada basis tingkat baris yang lebih efisien daripada blok file. Untuk memenuhi kepatuhan ACID, semua transaksi dijurnal secara terpisah dari tabel utama. Ini memungkinkan pemulihan data yang jauh lebih andal karena konsistensi data dapat diperiksa

Pada MySQL 5. 5 InnoDB adalah mesin default, dan sangat direkomendasikan daripada MyISAM kecuali Anda memiliki kebutuhan khusus untuk fitur unik pada mesin

Konfigurasi lanjutan

Membuat konfigurasi yang disetel

Ada sejumlah parameter yang dapat disesuaikan dalam file konfigurasi MySQL yang memungkinkan Anda meningkatkan kinerja server dari waktu ke waktu

Banyak parameter yang dapat disesuaikan dengan database yang ada, namun beberapa dapat mempengaruhi tata letak data sehingga perlu lebih hati-hati untuk menerapkannya

Pertama, jika Anda memiliki data yang sudah ada, Anda perlu melakukan mysqldump dan memuat ulang

mysqldump --all-databases --routines -u root -p > ~/fulldump.sql

Ini kemudian akan meminta Anda untuk kata sandi root sebelum membuat salinan data. Dianjurkan untuk memastikan tidak ada pengguna atau proses lain yang menggunakan database saat ini berlangsung. Bergantung pada berapa banyak data yang Anda miliki di basis data, ini mungkin memakan waktu cukup lama. Anda tidak akan melihat apa pun di layar selama proses ini

Setelah dump selesai, matikan MySQL

sudo service mysql stop

Ini juga merupakan ide bagus untuk mencadangkan konfigurasi asli

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_0

Selanjutnya, buat perubahan konfigurasi yang diinginkan

Kemudian hapus dan inisialisasi ulang ruang basis data dan pastikan kepemilikan sudah benar sebelum memulai ulang MySQL

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_1

Langkah terakhir adalah mengimpor ulang data Anda dengan menyalurkan perintah SQL Anda ke database

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_2

Untuk impor data yang besar, utilitas 'Pipe Viewer' dapat berguna untuk melacak kemajuan impor. Abaikan waktu ETA yang dihasilkan oleh pv, mereka didasarkan pada waktu rata-rata yang dibutuhkan untuk menangani setiap baris file, tetapi kecepatan penyisipan dapat sangat bervariasi dari baris ke baris dengan mysqldumps

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_3

Setelah itu selesai semuanya baik untuk pergi

Catatan

Ini tidak perlu untuk semua milikku. perubahan cnf. Sebagian besar variabel yang ingin Anda ubah untuk meningkatkan kinerja dapat disesuaikan bahkan saat server sedang berjalan. Seperti apa pun, pastikan untuk memiliki salinan cadangan file konfigurasi dan data yang baik sebelum melakukan perubahan

Penyetel MySQL

MySQL Tuner terhubung ke instans MySQL yang sedang berjalan dan menawarkan saran konfigurasi untuk mengoptimalkan database untuk beban kerja Anda. Semakin lama server berjalan, semakin baik saran yang dapat diberikan oleh mysqltuner. Di lingkungan produksi, pertimbangkan untuk menunggu setidaknya 24 jam sebelum menjalankan alat. Anda dapat menginstal mysqltuner dari repositori Ubuntu

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_4

Kemudian setelah diinstal, jalankan

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_5

dan tunggu laporan akhirnya. Bagian atas memberikan informasi umum tentang server database, dan bagian bawah memberikan saran penyetelan untuk mengubah my. cnf. Sebagian besar dapat diubah langsung di server tanpa memulai ulang; . Contoh berikut adalah bagian dari laporan dari database produksi yang menunjukkan manfaat potensial dari peningkatan cache kueri

sudo service mysql status

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-10-08 14:37:38 PDT; 2 weeks 5 days ago
 Main PID: 2028 (mysqld)
    Tasks: 28 (limit: 4915)
   CGroup: /system.slice/mysql.service
           └─2028 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid

Oct 08 14:37:36 db.example.org systemd[1]: Starting MySQL Community Server...
Oct 08 14:37:38 db.example.org systemd[1]: Started MySQL Community Server.
_6

Tak perlu dikatakan bahwa strategi pengoptimalan kinerja bervariasi dari satu aplikasi ke aplikasi lainnya. Jadi misalnya, apa yang terbaik untuk Wordpress mungkin bukan yang terbaik untuk Drupal atau Joomla. Performa dapat bergantung pada jenis kueri, penggunaan indeks, seberapa efisien desain basis data, dan sebagainya. Anda mungkin merasa perlu meluangkan waktu untuk mencari tip penyetelan basis data berdasarkan aplikasi apa yang Anda gunakan. Setelah Anda mencapai titik pengembalian yang semakin berkurang dari penyesuaian konfigurasi basis data, lihat aplikasi itu sendiri untuk peningkatan, atau investasikan perangkat keras yang lebih kuat dan/atau tingkatkan lingkungan basis data

Bagaimana menginstal dan mengkonfigurasi server MySQL?

Mengekstrak Arsip Instal
Membuat File Opsi
Memilih Jenis Server MySQL
Inisialisasi Direktori Data
Memulai Server untuk Pertama Kalinya
Memulai MySQL dari Baris Perintah Windows
Menyesuaikan PATH untuk Alat MySQL
Memulai MySQL sebagai Layanan Windows

Bagaimana cara mengkonfigurasi ulang server MySQL di Ubuntu?

Setel Ulang Kata Sandi Root MySQL .
Hentikan instance server MySQL saat ini. layanan sudo mysql berhenti
Gunakan dpkg untuk menjalankan kembali proses konfigurasi yang dilalui MySQL pada instalasi pertama. Anda akan kembali diminta untuk mengatur kata sandi root. sudo dpkg-konfigurasi ulang mysql-server-5. 5
Kemudian mulai MySQL. layanan sudo mysql mulai

Bagaimana cara menjalankan server MySQL di Ubuntu?

d perintah untuk memulai/menghentikan server MySQL Anda. .
Untuk memulai server MySQL. sudo /etc/init. d/mysqld mulai
Untuk menghentikan server MySQL. sudo /etc/init. d/mysqld berhenti
Untuk me-restart server MySQL. sudo /etc/init. d/mysqld restart

Bagaimana cara menginstal dan mengkonfigurasi MySQL di Linux?

Menginstal MySQL Shell dengan Repositori MySQL APT .
Perbarui informasi paket untuk repositori MySQL APT. sudo apt-get pembaruan
Perbarui paket konfigurasi repositori MySQL APT dengan perintah berikut. sudo apt-get install mysql-apt-config. .
Instal MySQL Shell dengan perintah ini. sudo apt-get install mysql-shell