MySQL adalah sistem manajemen basis data yang populer, digunakan sebagai penyedia penyimpanan data untuk ribuan aplikasi web dan server. Panduan ini akan membantu pemula memulai dengan MySQL di Ubuntu 10.10 (Maverick) Linode. Diasumsikan bahwa Anda telah mengikuti langkah-langkah yang diuraikan dalam Menyiapkan dan Mengamankan Instans Komputasi, bahwa sistem Anda mutakhir, dan bahwa Anda telah masuk ke Linode sebagai root melalui SSH.
Konfigurasi Sistem Dasar
Ubah /etc/hosts
Anda file agar menyerupai contoh berikut. Ganti "example.com" dengan nama domain Anda sendiri, dan pilih nama unik untuk menggantikan "nama sistem". Ini akan menjadi FQDN sistem Anda (nama domain yang sepenuhnya memenuhi syarat). Ganti “12.34.56.78” dengan alamat IP Linode Anda.
- File:/ dll/host
1 2
127.0.0.1 localhost.localdomain localhost 12.34.56.78 systemname.example.com systemname
Berikan perintah berikut untuk menyetel nama host sistem Anda, ganti “nama sistem” dengan nama host singkat yang Anda pilih di atas.
echo "systemname" > /etc/hostname
hostname -F /etc/hostname
Instal MySQL
Pastikan repositori paket dan program terinstal Anda mutakhir dengan mengeluarkan perintah berikut:
apt-get update
apt-get upgrade --show-upgraded
Mulailah dengan mengeluarkan perintah berikut di terminal Anda:
apt-get install mysql-server
Anda akan diminta untuk mengatur kata sandi untuk pengguna root MySQL. Pilih kata sandi yang kuat dan simpan di tempat yang aman untuk referensi di masa mendatang.
Paket server MySQL akan diinstal di server Anda, bersama dengan dependensi dan pustaka klien. Setelah menginstal MySQL, Anda disarankan untuk menjalankan mysql_secure_installation
untuk membantu mengamankan MySQL. Anda disarankan untuk menerima jawaban default program. Jika Anda diminta untuk memuat ulang hak istimewa, pilih "ya." Jalankan perintah berikut untuk menjalankan program:
mysql_secure_installation
Setelah menjalankan mysql_secure_installation
, MySQL aman dan siap dikonfigurasi.
Konfigurasi MySQL
Secara default, MySQL membuat beberapa asumsi tentang lingkungan server Anda sehubungan dengan memori. Untuk mengonfigurasi MySQL secara lebih konservatif, Anda perlu mengedit beberapa pengaturan di file konfigurasinya. File Anda akan terlihat seperti berikut:
- File:/ etc/mysql/my.cnf
1 2 3 4 5 6
key_buffer = 16M max_allowed_packet = 1M thread_stack = 64K table_cache = 4 sort_buffer = 64K net_buffer_length = 2K
Pengaturan ini hanya nilai yang disarankan untuk lingkungan memori rendah; jangan ragu untuk menyetelnya ke nilai yang sesuai untuk server Anda. Lihat bagian “Informasi Lebih Lanjut” di akhir tutorial ini untuk sumber daya tambahan tentang topik ini.
Jika Anda membuat perubahan pada konfigurasi MySQL, restart dengan mengeluarkan perintah berikut:
restart mysql
MySQL akan mengikat ke localhost (127.0.0.1) secara default. Silakan merujuk ke panduan akses jarak jauh MySQL kami yang aman untuk informasi tentang menghubungkan ke database Anda dengan klien lokal.
Mengizinkan akses tak terbatas ke MySQL pada IP publik tidak disarankan, tetapi Anda dapat mengubah alamat yang didengarkannya dengan memodifikasi bind-address
parameter. Jika Anda memutuskan untuk mengikat MySQL ke IP publik Anda, Anda harus menerapkan aturan firewall yang hanya mengizinkan koneksi dari alamat IP tertentu.
Menggunakan MySQL
Alat standar untuk berinteraksi dengan MySQL adalah mysql
program klien. Untuk memulai, jalankan perintah berikut pada prompt Anda:
mysql -u root -p
Anda akan diminta untuk memasukkan kata sandi pengguna root MySQL. Masukkan kata sandi yang Anda tetapkan saat Anda menginstal MySQL, dan Anda akan disajikan dengan tampilan monitor MySQL:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 34
Server version: 5.1.49-1ubuntu8 (Ubuntu)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Jika Anda lupa kata sandi root, gunakan alat konfigurasi ulang paket untuk mengubah kata sandi tersebut:
dpkg-reconfigure mysql-server-5.1
Untuk menghasilkan daftar perintah untuk MySQL prompt ketik \h
:
List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
? (\?) Synonym for `help'.
clear (\c) Clear the current input statement.
connect (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
edit (\e) Edit command with $EDITOR.
ego (\G) Send command to mysql server, display result vertically.
exit (\q) Exit mysql. Same as quit.
go (\g) Send command to mysql server.
help (\h) Display this help.
nopager (\n) Disable pager, print to stdout.
notee (\t) Don't write into outfile.
pager (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print (\p) Print current command.
prompt (\R) Change your mysql prompt.
quit (\q) Quit mysql.
rehash (\#) Rebuild completion hash.
source (\.) Execute an SQL script file. Takes a file name as an argument.
status (\s) Get status information from the server.
system (\!) Execute a system shell command.
tee (\T) Set outfile [to_outfile]. Append everything into given outfile.
use (\u) Use another database. Takes database name as argument.
charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.
For server side help, type 'help contents'
mysql>
Mari buat database dan tetapkan pengguna untuk itu. Berikan perintah berikut pada prompt MySQL:
CREATE DATABASE testdb;
CREATE USER 'testuser'@localhost IDENTIFIED BY 'changeme';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@localhost;
exit
Sekarang mari masuk kembali ke klien MySQL sebagai testuser
dan buat tabel sampel yang disebut "pelanggan." Berikan perintah berikut:
mysql -u testuser -p
USE testdb;
CREATE TABLE customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
Ini membuat tabel dengan bidang ID pelanggan bertipe INT untuk bilangan bulat (bertambah otomatis untuk catatan baru dan digunakan sebagai kunci utama), serta dua bidang untuk menyimpan nama pelanggan.
Secara default, akses ke database akan dibatasi untuk koneksi dari localhost. Untuk mengelola database Anda dengan aman dari lokasi yang jauh, ikuti panduan kami untuk mengelola mysql secara aman dengan terowongan SSH. Itu tidak praktik yang baik untuk menjalankan MySQL pada alamat IP publik Anda, kecuali Anda memiliki alasan yang sangat kuat untuk melakukannya.
Informasi Lebih Lanjut
Anda mungkin ingin berkonsultasi dengan sumber daya berikut untuk informasi tambahan tentang topik ini. Meskipun ini disediakan dengan harapan dapat bermanfaat, harap perhatikan bahwa kami tidak dapat menjamin keakuratan atau ketepatan waktu materi yang dihosting secara eksternal.
- Manual Referensi MySQL 5.1
- Manual PHP MySQL
- Contoh Perl DBI untuk DBD::mysql
- Panduan Pengguna MySQLdb