MySQL - Perintah konsol Windows. Instalasi otomatis MySQL pada Windows Perintah konsol windows Mysql

Halo, para pembaca blog yang budiman, saatnya mengganti phpMyAdmin yang biasa, dengan alat yang lebih brutal untuk manajemen database. Hari ini kita akan merasakan konsol MySQL dan mempelajari cara menjalankan perintah standar, serta perintah pemulihan basis data. Konsol MySQL- ini adalah DBMS standar (Sistem Manajemen Basis Data) untuk MySQL, disertakan bersama produk.

Kapan konsol MySQL berguna?

Dari sudut pandang seorang programmer web pemula, phpMyAdmin melakukan semua fungsi yang diperlukan untuk operasi normal. Bayangkan Anda bukan hanya seorang programmer web, tetapi juga, sebagian, seorang administrator sistem yang berkewajiban memulihkan database setelah terjadi kegagalan.

Dalam hal ini, Anda tidak dapat melakukannya tanpa keahlian dalam bekerja dengan konsol MySQL. Nanti kita akan melihat perintah untuk memulihkan database menggunakan konsol, tetapi untuk saat ini mari kita mulai dengan dasar-dasarnya.

Bagaimana memulai konsol MySQL

Anda dapat meluncurkan konsol melalui Windows Explorer dengan mencari utilitas mysql.exe di folder MySQL. Biasanya letaknya di: [jalur ke folder]\mysql\bin\mysql.exe. Jika menggunakan Denver, Konsol MySQL, Anda harus melihat ke arah ini:
C:\WebServer\usr\local\mysql\bin\mysql.exe

Selain Windows Explorer, Anda dapat menggunakan baris perintah:

  • Jalankan cmd.exe
  • Tulis path lengkap ke file mysql.exe
  • Tekan enter

Anda akan melihat sesuatu seperti ini:

Kesalahan menunjukkan bahwa untuk memulai konsol mysql Anda harus memasukkan login dan kata sandi pengguna. Saat bekerja dengan Denver, pengguna database standar adalah root dengan kata sandi kosong.
Jalankan perintah yang sama dengan parameter tambahan yang menunjukkan data otorisasi.

C:\WebServer\usr\local\mysql-5.1\bin\mysql.exe –u root –p

Jika semuanya dilakukan dengan benar, Anda akan menerima pesan " Selamat datang di konsol MySQL..."

Anda dapat memverifikasi bahwa Anda berhasil terhubung ke server database dengan memasukkan perintah show databases; . Sebagai hasil dari eksekusinya, daftar database yang ada di server akan ditampilkan.

Mari kita coba pilih salah satu database dan lihat daftar tabel di dalamnya:

gunakan tes; tampilkan tabel;

Dalam contoh saya, saya mengacu pada database pengujian; jika Anda tidak memilikinya, lihat database lain yang tersedia.

Sebagai percobaan, Anda dapat mencoba membuat database pengujian menggunakan perintah:

membuat tes basis data;

Di mana Anda akan menerima pesan: " QUERY OK, 1 baris terpengaruh", menandakan bahwa database bernama test telah berhasil dibuat.

Sekarang mari kita buat tabel pesanan di database pengujian.

buat tes tabel (`id` int(11),`konten` varchar(255));

Dan jalankan perintah tampilkan tabel lagi; , yang akan menunjukkan bahwa tabel benar-benar telah dibuat dan tersedia untuk digunakan.

Anda juga dapat mencoba menampilkan daftar kolom dalam tabel:

tampilkan kolom dari test.order;

Nah, sebagai penutup perkenalan kita dengan Konsol MySQL, mari jalankan beberapa kueri:

PILIH * DARI tes.pesanan;

Jadi para pembaca yang budiman, saya ucapkan selamat kepada Anda, sekarang Anda dapat bekerja dengan MySQL dalam kondisi sederhana tanpa phpMyAdmin. Berikut daftar perintah sehari-hari:

  • BUAT DATABASE DB_NAME; — membuat basis data baru;
  • TAMPILKAN DATABASE; — melihat database yang tersedia;
  • GUNAKAN DB_NAME; — pilih basis data;
  • TAMPILKAN TABEL; — lihat semua tabel;
  • TAMPILKAN KOLOM DARI TABLE_NAME; — melihat kolom dan propertinya;
  • BUAT TABEL TABLE_NAME (`ID` INT(11),`NAME` VARCHAR(255));— membuat tabel;
  • ALTER TABLE TABLE_NAME TAMBAHKAN KOLOM_NAME INT(11);— menambahkan kolom ke tabel;
  • ALTER TABLE TABLE_NAME DROP COLUMN_NAME;— menghapus kolom dari tabel;
  • MYSQL -UUSERNAME -PPASSWORD -HHOST DB_NAME — mengisi database;
  • MYSQLDUMP -UUSERNAME -PPASSWORD -HHOST DB_NAME > FILE_NAME.SQL— membuat dump database;
  • BERHENTI; — keluar dari konsol MySQL.

Perintah untuk memulihkan tabel melalui konsol MySQL

Seperti yang saya janjikan di awal artikel, saya memposting perintah untuk memulihkan tabel. Perintah-perintah ini dapat berguna setelah kegagalan server.

Sistem manajemen basis data populer MySQL banyak digunakan untuk berbagai kebutuhan, terutama sebagai standar de facto di bidang Internet hosting. Yang tidak kalah luasnya adalah paket untuk mengelola DBMS ini - phpMyAdmin. Tidak diragukan lagi, ini adalah produk yang bagus dan nyaman, tetapi sering kali keterampilan untuk bekerja dengan produk ini sepenuhnya menggantikan keterampilan untuk bekerja dengan DBMS itu sendiri. Oleh karena itu, dalam materi ini kami memutuskan untuk memperkenalkan kepada pembaca kami cara melakukan tugas dasar administrasi MySQL dari baris perintah.

Seperti yang mungkin telah diketahui oleh pembaca reguler kami, kami secara konsisten menentang penggunaan berbagai jenis panel kontrol oleh pemula, tidak peduli seberapa nyaman dan luasnya panel kontrol tersebut. Pada saat yang sama, kami tidak menyangkal keberadaannya dan kami sendiri dengan senang hati menggunakannya dalam aktivitas sehari-hari.

Namun ada satu perbedaan besar: seorang spesialis yang mengetahui cara bekerja dengan baris perintah menggunakan panel tidak menggantikan kemampuan untuk bekerja dengan produk, tetapi hanya membuatnya lebih mudah untuk melakukan tugas sehari-hari. Dan seorang pemula, yang terbiasa melakukan semua tindakan di panel, jika tidak dapat diakses, menjadi panik, karena sekarang dia perlu memasukkan beberapa "mantra" ke dalam konsol hitam yang tidak dapat dipahami ini...

Faktanya, bekerja dengan DBMS pada tingkat baris perintah sama sekali tidak sulit, dan beberapa tugas administrasi lebih mudah dan nyaman untuk dilakukan di dalamnya. Mari kita segera melakukan reservasi: yang kami maksud dengan administrasi adalah administrasi server DBMS, dan bukan database itu sendiri. Tentu saja, Anda juga dapat mengerjakannya dari baris perintah, tetapi lebih baik menggunakan alat yang lebih sesuai untuk ini.

Mengelola Database dan Pengguna di MySQL

Jika Anda harus mulai menari dari kompor, maka bekerja dengan DBMS harus dimulai dengan pembuatan database dan pengguna database tersebut. Tugas-tugasnya pada dasarnya sederhana dan dapat diselesaikan dengan sempurna, dan yang paling penting, sederhana, dari konsol. Utilitas dengan nama yang sama dirancang untuk bekerja dengan server MySQL mysql, yang digunakan dalam mode interaktif, jadi pertama-tama kita akan terhubung ke server:

Mysql -u akar -p

Jika saklar -u menentukan nama pengguna, dan -p menentukan otentikasi kata sandi, sintaks perintah memungkinkan Anda menentukan kata sandi dengan memasukkannya tanpa spasi segera setelah kunci, tetapi dalam kasus ini kata sandi akan disimpan dalam riwayat perintah, yaitu tidak sepenuhnya bagus, jadi lebih baik memasukkan kata sandi secara interaktif. Setelah menjalankan perintah ini, kita akan menemukan diri kita di lingkungan MySQL, seperti yang ditunjukkan oleh prompt baris perintah yang diubah.

Bekerja di lingkungan ini memiliki ciri khasnya masing-masing: setiap perintah harus diakhiri dengan simbol ; atau \G, yang, omong-omong, tertulis di baris pertama salam. Mode ini keluar dengan perintah:

Mari kita bicara tentang satu kesalahan yang sangat umum: lupa memberi tanda titik koma di akhir perintah. Apa yang harus dilakukan? Bukan masalah besar, cukup isi karakter yang hilang di baris berikutnya.

Pertama, mari kita lihat daftar databasenya:

Tampilkan database;

Seperti yang mereka katakan, tanpa detail yang tidak perlu, tetapi untuk sebagian besar tugas administratif, ini sudah cukup:

Sedikit lebih sulit untuk mengetahui daftar pengguna, itu disimpan dalam bentuk tabel database layanan mysql, jadi kami menulis permintaan kecil:

Pilih pengguna,host dari mysql.user;

Tim Pilih memilih kolom yang ditentukan pengguna, tuan rumah, opsi dari menunjukkan dari mana kita memilihnya, yaitu dari tabel pengguna database mysql.

Kolom pertama menunjukkan pengguna, kolom kedua menunjukkan host tempat pengguna tersebut diizinkan untuk terhubung, % - menunjukkan nilai apa pun. Harap dicatat bahwa jika Ivanov ada di pengaturan host lokal, lalu saat terhubung ke mysql berdasarkan alamatnya 127.0.0.1 dia tidak akan bisa mendapatkan akses, ini harus diperhitungkan ketika Anda menentukan data koneksi ke server DBMS di aplikasi Anda.

Anda dapat melihat pemilik database menggunakan kueri berikut:

Pilih host,db,pengguna dari mysql.db;

Tidak diperlukan komentar khusus di sini. Misalnya, Ivanov memiliki hak atas database dengan awalan ivanov_ ketika terhubung melalui host lokal, dan andrey ke pangkalan dengan awalan andrey_ pada host mana pun. Anda dapat melihat hak istimewa pengguna dengan perintah:

Tampilkan hibah untuk "ivanov"@"localhost";

Kami membungkus nama pengguna dan host dalam tanda kutip tunggal.

Baris pertama melaporkan bahwa pengguna tertentu tidak memiliki hak istimewa ( PENGGUNAAN) ke tabel mana pun di database mana pun ( *.* ), baris kedua berbicara tentang semua hak istimewa utama untuk semua tabel dari semua database dengan awalan ivanov_.

Analisis mendetail tentang sistem hak MySQL jauh melampaui cakupan artikel ini SEMUA HAK ISTIMEWA memberi pengguna semua hak atas basis datanya, tetapi tidak mengizinkannya mengelola hak akses untuk pengguna lain. Untuk melakukan ini, seperangkat hak digunakan SEMUA HAK ISTIMEWADENGAN OPSI HIBAH, yang secara default memiliki akar. Untuk pengguna biasa, rangkaian hak ini mubazir.

Mari kita coba membuat pengguna baru:

Buat pengguna "petrov"@"localhost" yang diidentifikasi dengan "kata sandi";

Sintaks perintahnya sederhana, kita tentukan username dan host, serta data identifikasi berupa password. Semua nilai yang diteruskan dibungkus dalam tanda kutip tunggal. Setelah membuat pengguna, Anda perlu memberinya hak, ini dilakukan dengan perintah MENGANUGERAHKAN. Pertama, kami akan secara eksplisit mencabut hak istimewanya atas database orang lain:

Berikan penggunaan pada *.* ke "petrov"@"localhost";

Kemudian kita dapat mengatur hak sesuai kebijaksanaan kita, misalnya memberikan hak penuh atas database dengan templat nama petrov_:

Berikan semua hak istimewa di `petrov\_%`.* kepada "petrov"@"localhost";

Harap dicatat bahwa polanya harus dibungkus dengan karakter gravis (` ), yang terletak di kunci dengan huruf Rusia E.

Anda dapat memberikan hak ke database terpisah seperti ini:

Berikan semua hak istimewa di andrey_drupal8.* kepada "petrov"@"localhost";

Untuk memilih hak, gunakan perintah REVOKE, yang memiliki sintaks serupa saja ke (kepada siapa), ganti dengan dari (WHO). Misalnya:

Cabut semua hak istimewa di andrey_drupal8.* dari "petrov"@"localhost";

Agar server MySQL dapat menerapkan hak, Anda harus memaksanya memuat ulang cache hak istimewa dengan perintah:

Hak istimewa siram;

Anda mungkin juga perlu mengubah kata sandi pengguna:

Tetapkan kata sandi untuk "petrov"@"localhost" = kata sandi("kata sandi baru");

Ganti nama, dan mengganti nama tidak selalu berarti mengubah nama pengguna; Anda dapat mengubah nama dan host, dengan kombinasi apa pun:

Ganti nama pengguna "petrov"@"localhost" menjadi "petr"@"127.0.0.1";

Dan terakhir, hapus akun:

Hapus pengguna "petr"@"127.0.0.1";

Mari beralih dari pengguna ke database; dalam kasus paling sederhana, untuk membuat database baru, perintahnya cukup:

Buat basis data petrov_newdb;

Ini akan membuat database dengan halaman kode default dan pengkodean perbandingan. Jika server DBMS tidak dikonfigurasi secara terpisah, kemungkinan besar pengkodean ini akan dikonfigurasi latin1_swedia_ci, yang dalam beberapa kasus dapat menyebabkan masalah, jika tidak sekarang, maka di masa depan, jadi sebaiknya secara eksplisit menunjukkan pengkodean saat membuat database. Untuk UTF-8 akan menjadi seperti ini:

Buat database petrov_newdb kumpulan karakter default utf8 susun utf8_general_ci;

Untuk Windows-1251:

Buat database petrov_newdb kumpulan karakter default cp1251 susun cp1251_general_ci;

Untuk menghapus penggunaan database:

Jatuhkan basis data petrov_newdb;

Memeriksa, mengoptimalkan, memperbaiki kesalahan pada database MySQL

Saat MySQL aktif bekerja, database mungkin menjadi terfragmentasi dan mungkin mengandung kesalahan dalam data tabel. Sekarang kita tidak berbicara tentang kegagalan serius; situasi seperti itu harus dipertimbangkan secara individual, tetapi tentang kesalahan paling sederhana yang dapat berhasil dihilangkan dengan menggunakan DBMS itu sendiri. Untuk memeriksa, memperbaiki, dan mengoptimalkan, akan lebih mudah menggunakan utilitas mysqlcheck.

Untuk memeriksa database lakukan di mana andrey_drupal8- nama basis data:

Periksa mysql -u root -p --periksa andrey_drupal8

Semua database dapat dicek sekaligus dengan perintah:

Mysqlcheck -u root -p --check --semua-database

Dan karena seluruh keluaran kemungkinan besar tidak muat di layar, masuk akal untuk mengarahkannya ke perintah lebih sedikit:

Mysqlcheck -u root -p --check --semua-database | lebih sedikit

perhatikan itu lebih sedikit memungkinkan Anda menggulir keluaran ke bawah dan ke atas menggunakan panah, tekan untuk keluar Q.

Jika kesalahan ditemukan di salah satu database, Anda harus mencoba memperbaikinya, untuk melakukan ini, tunjukkan:

Mysqlcheck -u root -p --perbaikan otomatis andrey_drupal8

Untuk mengoptimalkan, gunakan kunci - -optimalkan, Anda dapat mengoptimalkan satu atau beberapa database, untuk melakukan ini, cantumkan database tersebut setelah kunci --database:

Mysqlcheck -u root -p --optimasi --database andrey_drupal8 petrov_newdb

dan juga sekaligus:

Mysqlcheck -u root -p --optimasi --semua-database

Mengunggah dan memuat dump database MySQL

Tugas umum lainnya ketika mengelola DBMS apa pun, dump database digunakan untuk pencadangan dan untuk mentransfer atau membuat salinan. Jika pencadangan adalah proses otomatis, maka pembuatan salinan untuk ditransfer ke server lain atau sebelum intervensi signifikan apa pun pada struktur database harus dilakukan secara manual.

Dan jika menyangkut database besar, maka ini dia phpMyAdmin penolong yang buruk, ini memengaruhi waktu eksekusi skrip, ukuran file yang diunduh, memori yang tersedia, dll. Dan meskipun Anda masih dapat mengunggah dump berukuran besar dengan menggunakannya, Anda mungkin tidak dapat mengunggahnya kembali.

Mari kita mulai dengan membuat dump; utilitas digunakan untuk tujuan ini mysqldump, sintaksnya mengikuti sintaksis pemeriksaan mysql. Untuk mengunduh dump, gunakan perintah:

Mysqldump -u root -p andrey_drupal8 > ~/drupal8.sql

Untuk membongkar beberapa database sekaligus, gunakan kuncinya --database atau --semua-database untuk membuat dump semua database sekaligus. Output dari perintah harus dikirim ke file dan menunjukkan lokasinya, dalam kasus kami ini adalah file drupal8.sql di direktori home Anda. Anda juga dapat menyalurkan keluaran ke pengarsip dan segera menerima arsip:

Mysqldump -u root -p andrey_drupal8 | gzip > ~/drupal8.sql.gz

Secara umum, kami tidak menyarankan penggunaan satu dump untuk beberapa database sekaligus; opsi terbaik adalah dumpnya sendiri untuk setiap database, sekaligus menggunakan kunci --semua-database dibenarkan jika Anda perlu segera membuat salinan cadangan seluruh server, misalnya, saat memperbarui atau menginstal ulang DBMS, sehingga Anda dapat dengan cepat memulihkan informasi jika terjadi kesalahan.

Untuk memulihkan database, Anda perlu mengirim dump ke input utilitas mysql; untuk dump tunggal, Anda harus selalu menentukan database tujuan, misalnya:

Mysql -u root -p andrey_drupal8< ~/drupal8.sql

Tujuan tidak harus berupa database sumber, namun perhatikan bahwa jika database sudah ada, semua kontennya akan digantikan oleh konten dump.

Untuk dump yang berisi lebih dari satu database, cukup tentukan:

Mysql -u akar -p< ~/all.sql

Dalam hal ini, setiap database akan dimuat ke sumbernya sendiri; jika database sumber tidak ada, maka database akan dibuat.

Seperti yang Anda lihat, membuat dan memulihkan dump menggunakan baris perintah terjadi secara harfiah dalam satu baris dan jauh lebih mudah dan cepat dibandingkan menggunakan phpMyAdmin atau alat serupa.

Memulihkan kata sandi root MySQL yang terlupa

Tugas lain yang sangat populer. Katakanlah segera bahwa tidak mungkin memulihkan kata sandi pengguna super MySQL, seperti pengguna lainnya, tetapi Anda dapat mengubahnya. Untuk melakukan ini, Anda harus memiliki hak pengguna super atas sistem operasi. Pertama, mari kita hentikan layanan DBMS:

Layanan mysql berhenti

Lalu kami menjalankannya dalam mode aman, melewatkan tabel hak istimewa:

Mysqld_safe --lewati-hibah-tabel &

Harap dicatat bahwa setelah menjalankan perintah ini, prompt baris perintah akan hilang, hanya menyisakan kursor yang berkedip. Kami menulis langsung di sana:

Mysql -u akar

dan kami menemukan diri kami di lingkungan mysql dengan hak root tanpa memasukkan kata sandi.

Tampaknya bagi kami banyak yang sudah menebak apa yang harus dilakukan selanjutnya, tapi mengatur kata sandi itu tidak akan berfungsi dalam mode ini, jadi Anda harus mengambil cara lain. Ingatlah bahwa informasi tentang pengguna disimpan dalam sebuah tabel pengguna basis data layanan mysql. Kemudian kami menjalankan kueri berikut:

Perbarui mysql.user set password = password ("newpassword") di mana user="root";

Penting! Di versi baru MySQL, bukan kolom kata sandi tabel pengguna kolom digunakan otentikasi_string, jadi sebagai gantinya mengatur kata sandi harus ditunjukkan atur otentikasi_string.

Permintaan ini akan menetapkan kata sandi baru kata sandi baru untuk semua baris dalam satu kolom pengguna yang terdaftar akar.

Mari perbarui cache hak istimewa:

Hak istimewa siram;

Mari keluar dari mode:

Mari hentikan layanan dan mulai dalam mode normal:

Layanan mysql berhenti
layanan mysql dimulai

Kami berharap setelah membaca artikel ini Anda akan memperoleh keterampilan awal dalam bekerja dengan MySQL dari baris perintah dan akan dapat merasa percaya diri bahkan ketika phpMyAdmin tidak tersedia, dan bahkan mungkin menghargai kenyamanan perintah konsol dan kecil kemungkinannya untuk masuk. panel, lebih memilih untuk mengelola server secara langsung.

  • Tag:

Harap aktifkan JavaScript untuk melihat

Anggaplah semuanya sudah terinstal dan sekarang kita akan mulai bekerja.
Mari terhubung:
ceval@srv:~$ mysql -pPASSWORD
-p, --kata sandi=— Kata sandi pengguna untuk menghubungkan ke server MySQL. Tidak boleh ada spasi antara -p dan kata sandi.
-kamu, --pengguna=- Nama pengguna untuk terhubung ke server MySQL. Opsional, defaultnya sama dengan login Anda, digunakan jika login berbeda dengan nama pengguna untuk menghubungkan ke server MySQL.
$ mysql -u ceval_ -pPASSWORD
Jika kita memasukkan kata sandi dengan benar, kita akan melihat baris dan petunjuk berikut:

Selamat datang di monitor MySQL. Perintah diakhiri dengan ; atau\g.
Versi server: 5.0.45-Debian
Ketik 'bantuan;' atau '\h' untuk bantuan. Ketik '\c' untuk menghapus buffer.
mysql>

Kami membuat database yang kami butuhkan, dengan pengkodean cp1251; pengkodean yang ditentukan dapat diganti dengan yang diperlukan:
BUAT DATABASE db_name SET KARAKTER DEFAULT cp1251 DEFAULT COLLATE cp1251_general_ci;
Menghapus basis data:
JATUHKAN DATABASE db_name;
Perubahan basis
GUNAKAN `database saya`;
Menghapus tabel dari database
DROP TABLE `db_table`;
Sedikit lagi:
->\g tampilkan database; // lihat database apa saja yang ada di sana
->\g membuat basis data satelit; // membuat basis data baru
->\g tampilkan database; // periksa apakah sudah dibuat
->\q // Keluar

Versi MySQL yang berbeda mungkin memiliki perintah yang berbeda (4 dan 5) dalam hal ini \g - memerintahkan server untuk menjalankan skrip SQL
Memuat, menyimpan database MySQL (cadangan, pemulihan) bekerja dengan mysql ubuntu
Muat database dengan data yang disimpan (jika data disimpan). Mereka disimpan, misalnya, dalam file baza.sql
mysql
->\g tampilkan database;
->\u pasar;
->\. /home/backup/baza.sql
->\q
/home/backup/baza.sql — jalur ke file cadangan
[b]Simpan database dengan data ke file baza.sql
mysqldump baza > /home/backup/baza.sql;
Basis data disimpan: /var/lib/mysql/baza- Untuk menghapus seluruh database, hapus saja direktori ini.
Dapat dilakukan dengan berbagai cara:
— terhubung melalui ssh dan bekerja melalui baris perintah;
- gunakan phpmyadmin;
- gunakan paket mysql-admin - ini adalah utilitas administrasi MySQL grafis (alat GUI untuk administrasi MySQL yang intuitif
MySQL)
Sekarang mari kita instal paketnya mysql-admin per mobil
sudo bakat instal mysql-admin
Selanjutnya kita pergi ke mesin jarak jauh dan mengedit konfigurasi [b]my.cnf
$ sudo nano /etc/mysql/my.cnf
Untuk memulai, Anda dapat memeriksa:
$netstat -an | grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* DENGARKAN
Seperti yang Anda lihat dari output, MySQL saat ini mendengarkan di localhoste, tetapi kita memerlukan MySQL untuk mendengarkan di semua antarmuka, dan tidak hanya di localhost, jadi kita mencari dan mengedit entri berikut:

[...]
# Daripada melewatkan jaringan, defaultnya sekarang hanya mendengarkan
#localhost yang lebih kompatibel dan tidak kalah amannya.
alamat ikat = 127.0.0.1
#
[...]

dan agar MySQL mendengarkan di semua antarmuka, mari beri komentar pada baris ini:
[...]

#bind-address = 127.0.0.1:

[...]
Mari kita hentikan MySQL:
$ sudo /etc/init.d/mysql restart
Dan mari kita lihat kembali keluaran perintah:
$netstat -an | grep 3306
Outputnya akan terlihat seperti ini:

tcp 0 0 0.0.0.0:3306 0.0.0.0:* DENGARKAN

dan sekarang Anda dapat menjalankan mysql-admin untuk bekerja jarak jauh dengan MySQL - Alt+F2 - mysql-admin
atau
$mysql-admin
bekerja dengan mysql ubuntu

Untuk Win 32, pilih distribusi: Windows (x86, 32-bit), Arsip Zip.

Untuk Win 64: Windows (x86, 64-bit), Arsip Zip.

Setelah mengklik tombol Download, Anda akan melihat formulir pendaftaran, Anda dapat melewatinya dengan mengklik link di bawah - Tidak, terima kasih, bawa saja saya ke tempat download.

2. Buat folder instalasi. Misalnya . Dan ekstrak isi arsip ke dalamnya sehingga menjadi folder bin, data, dokumen, dan lainnya berada di root folder instalasi.

3. Mari beralih ke pembuatan file konfigurasi (my.ini). Kami mengambil salah satu file standar sebagai dasar:

  • my-small.ini - cocok untuk mereka yang menggunakan MySQL dari waktu ke waktu dan tidak ingin server memakan banyak sumber daya.
  • my-medium.ini juga merupakan konfigurasi sumber daya rendah, tetapi cocok untuk mereka yang menggunakan MySQL secara teratur (pilihan yang baik untuk server web rumahan).
  • my-large.ini dan my-huge.ini - untuk sistem yang digunakan sebagai server MySQL khusus. Namun, my-large.ini dapat digunakan untuk server rumah jika Anda memerlukan kinerja MySQL tambahan (RAM 512 MB tidak terlalu banyak saat ini).
  • my-innodb-heavy-4G - untuk server khusus dengan RAM minimal 4 GB dan hanya menggunakan tabel InnoDB.

Dalam contoh ini, saya memilih my-medium.ini sebagai dasarnya. Ubah namanya menjadi my.ini dan letakkan di root folder instalasi ( C:\Program Files\MySQL\MySQL Server 5.5).

Buka untuk diedit (di Notepad biasa) dan segera setelah baris tambahkan dua parameter:

Basedir=C:/Program Files/MySQL/MySQL Server 5.5 datadir=C:/Program Files/MySQL/MySQL Server 5.5/data

Perhatikan bahwa jalur menggunakan garis miring ke depan (/) dan bukan garis miring terbalik (\).

basedir adalah jalur ke folder instalasi.

datadir - jalur ke folder data (tempat semua database disimpan). Terkadang masuk akal untuk meletakkan data pada disk terpisah untuk meningkatkan kinerja atau memastikan keandalan.

Untuk berjaga-jaga, berikut adalah bagian dari file konfigurasi setelah melakukan perubahan:

# Server MySQL berbasiskan=C:/Program Files/MySQL/MySQL Server 5.5 datadir=C:/Program Files/MySQL/MySQL Server 5.5/port data = 3306 socket = /tmp/mysql.sock skip-external-locking key_buffer_size = 16M max_allowed_packet = 1M table_open_cache = 64 sort_buffer_size = 512K net_buffer_length = 8K read_buffer_size = 256K read_rnd_buffer_size = 512K myisam_sort_buffer_size = 8M

4. Langkah selanjutnya adalah menambahkan jalur C:\Program Files\MySQL\MySQL Server 5.5\bin ke variabel lingkungan PATH untuk memudahkan peluncuran MySQL dari baris perintah. Untuk melakukan ini, buka System Properties -> Pengaturan sistem tambahan -> pada tab Advanced, di bagian paling bawah, tombol “Variabel Lingkungan…”. Di jendela yang terbuka, gulir ke seluruh variabel sistem hingga kami menemukan Path. Pilih baris ini dan klik "Ubah...". Di akhir baris kami menambahkan jalur kami, mempertahankan parameter yang ada:

Perhatikan bahwa jalur dipisahkan dengan titik koma. Pastikan ada titik koma di awal dan akhir jalur Anda.

5. Sebelum melakukan uji coba, buka port TCP 3306 yang masuk di Windows Firewall:

Jika Anda memiliki firewall tambahan yang terinstal di sistem Anda, Anda juga harus membuka port TCP 3306 untuk koneksi masuk.

6. Sekarang kami melakukan uji coba. Di baris perintah yang diluncurkan sebagai administrator (ini diperlukan jika UAC diaktifkan di Seven atau Vista), jalankan:

Mysqld --konsol

Beberapa baris akan ditampilkan di layar. Jika peluncurannya berhasil, baris terakhir akan terlihat seperti ini:

Versi: soket "5.5.9-log": "" port: 3306 MySQL Community Server (GPL)

Biarkan jendela ini terbuka, dan buka jendela baris perintah lainnya, di mana kita masuk:

Mysql -u akar

Jika koneksi berhasil, Anda akan melihat prompt perintah: mysql>

Mari kita lihat database apa yang kita miliki:

Tampilkan database;

Titik koma di akhir query SQL adalah WAJIB!

Tanggapan tim:

Sekarang kami akhirnya yakin bahwa server berfungsi.

7. Mari kita lanjutkan ke langkah berikutnya - Anda perlu mengatur kata sandi administrator MySQL (pengguna root). Tidak ada kata sandi yang ditetapkan secara default, dan ini perlu diperbaiki. Di jendela MySQL yang sama, masukkan perintah berikut:

Gunakan mysql UPDATE pengguna SET kata sandi = PASSWORD("kata sandi_Anda") WHERE pengguna = "root";

Mari kita periksa hasilnya:

PILIH pengguna, host, kata sandi DARI pengguna;

Seperti terlihat pada screenshot, kolom password sudah terisi, artinya password sudah disetel.

Sebelum keluar, jalankan perintah:

HAK ISTIMEWA PENYIMPANAN;

Sekarang, saat menghubungkan, Anda harus memasukkan kata sandi. Untuk melakukan ini, gunakan tombol -p:

Mysql -u akar -p

Untuk mematikan MySQL, jalankan:

Mysqladmin -u root -p mematikan

8. Langkah terakhir adalah meluncurkan MySQL sebagai layanan sistem Windows.

Pastikan tidak ada proses MySQL yang aktif di sistem.

Di baris perintah yang dijalankan sebagai administrator, jalankan:

"C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld" --install

Jalur ke mysqld harus ditentukan secara lengkap (meskipun terdaftar di PATH)!

Untuk memulai layanan, buka “Manajemen Komputer” dan mulai layanan MySQL secara manual:

Atau lebih mudah melalui baris perintah:

Mulai bersih mysql

Untuk menghapus layanan, hentikan terlebih dahulu:

Berhenti bersih mysql

dan jalankan:

"C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld" --hapus

Di bawah ini adalah daftar perintah yang paling berguna dan sering digunakan MySQL dengan contoh.

mysql di awal baris berarti perintah dijalankan setelah login MySQL.

Simbol # atau $ di awal baris berarti perintah dijalankan dari baris perintah.

Untuk memeriksa status server MYSQL Mengerjakan:

Untuk FreeBSD:

# melayani status server mysql

V CentOS/RHEL:

# layanan status mysqld

MySQL dari konsol jika server MySQL berada di host yang sama:

Untuk terhubung ke server MySQL dari konsol jika server MySQL terletak di host jarak jauh db1.example.com:

$ mysql -u nama pengguna -p -h db1.example.com

Bekerja dengan database dan tabel - melihat, menghapus, mengedit catatan. Menghibur

Buat database di MySQL pelayan:

Mysql membuat basis data

Tampilkan daftar semua database di server MySQL:

penggunaan mysql;

Menampilkan semua tabel dalam database:

Tabel pertunjukan Mysql;

Lihat format tabel di database:

deskripsi mysql;

Hapus basis data:

Basis data penurunan Mysql;

Hapus tabel dari database:

Tabel drop Mysql;

Tampilkan semua isi tabel:

Mysql PILIH * DARI ;

Menampilkan kolom dan isi kolom pada tabel yang dipilih:

Mysql menampilkan kolom dari;

Menampilkan baris dalam tabel tertentu yang berisi " terserah ":

Mysql PILIH * DARI MANA = "terserah";

Tampilkan semua catatan dalam tabel tertentu yang berisi "Bob" dan nomor telepon "3444444:

Mysql PILIH * DARI MANA nama = "Bob" DAN nomor_telepon = "3444444";

Tampilkan semua entri, BUKAN berisi nama "Bob" dan nomor telepon "3444444", diurutkan berdasarkan kolom nomor_telepon:

Mysql SELECT * DARI MANA nama != " Bob " DAN nomor_telepon = " 3444444 " diurutkan berdasarkan nomor_telepon;

Tampilkan semua entri yang dimulai dengan huruf "bob" dan nomor telepon "3444444" di tabel tertentu:

Mysql SELECT * DARI MANA nama seperti "Bob %" DAN nomor_telepon = "3444444";

Tampilkan semua entri yang dimulai dengan huruf "bob" dan nomor telepon "3444444", batasi entri 1 hingga 5:

Mysql SELECT * DARI MANA nama seperti "Bob%" DAN nomor_telepon = "3444444" batas 1,5;

Menggunakan ekspresi reguler ("REGEXP BINARY") untuk mencari catatan. Misalnya, untuk pencarian peka huruf besar-kecil, temukan semua catatan yang dimulai dengan huruf A:

Mysql PILIH * DARI MANA rec RLIKE "^a";

Tampilkan semua entri unik:

Mysql PILIH BERBEDA DARI ; mysql PILIH, DARI PESANAN OLEH DESC;

Tunjukkan jumlah baris dalam tabel:

Mysql PILIH JUMLAH(*) DARI ;

Mysql PILIH JUMLAH(*) DARI ;

Menghapus kolom:

Mysql mengubah kolom drop tabel;

Menambahkan kolom ke database:

Tabel ubah Mysql tambahkan kolom varchar(20);

Mengubah nama kolom:

Perubahan tabel Mysql ubah varchar(50);

Buat kolom dengan nama unik untuk menghindari duplikat nama:

Tabel ubah Mysql tambahkan unik();

Mengubah ukuran kolom:

Tabel ubah Mysql memodifikasi VARCHAR(3);

Menghapus kolom dari tabel:

Mysql mengubah indeks penurunan tabel;

Mysql LOAD DATA INFILE " /tmp/filename.csv " ganti INTO TABLE FIELDS DIHENTIKAN OLEH "," LINES DIHENTIKAN OLEH "n" (field1,field2,field3);

Pengguna server MySQL, kata sandi - menambah, mengubah pengguna dan kata sandi. Menghibur

Membuat pengguna baru - menghubungkan ke server MySQL sebagai root, beralih ke database, menambahkan pengguna, memperbarui hak istimewa:

# mysql -u root -p mysql gunakan mysql; mysql INSERT INTO pengguna (Host,Pengguna,Kata Sandi) VALUES("%","nama pengguna", PASSWORD("kata sandi")); hak istimewa mysql flush;

Mengubah kata sandi pengguna dari konsol pada host jarak jauh db1.example.org:

# mysqladmin -u nama pengguna -h db1.example.org -p kata sandi " kata sandi baru "

Mengubah kata sandi pengguna dari konsol MySQL- terhubung sebagai root, perbarui kata sandi, perbarui hak istimewa:

# mysql -u root -p mysql SET PASSWORD UNTUK " pengguna "@" nama host " = PASSWORD(" passwordhere "); hak istimewa mysql flush;

Memulihkan/mengubah kata sandi server root MySQL- berhenti MySQL, mulai tanpa tabel hak istimewa, sambungkan sebagai root, tetapkan kata sandi baru, keluar dan mulai ulang MySQL.

# /etc/init.d/mysql stop # mysqld_safe -skip-grant-tables & # mysql -u root mysql gunakan mysql; pembaruan mysql kata sandi yang ditetapkan pengguna = PASSWORD ("newrootpassword") di mana Pengguna = "root"; mysql; hak istimewa siram; mysql berhenti # /etc/init.d/mysql stop # /etc/init.d/mysql mulai

Tetapkan kata sandi root jika ada kata sandi root.

# mysqladmin -u kata sandi root kata sandi baru

Perbarui kata sandi root:

# mysqladmin -u root -p kata sandi lama kata sandi baru

Mengatur hak untuk terhubung ke server dari host localhost dengan kata sandi "passwd" - menghubungkan ke subroot, beralih ke database, mengatur hak istimewa, memperbarui hak istimewa:

# mysql -u root -p mysql gunakan mysql; mysql memberikan penggunaan pada *.* ke bob @localhost yang diidentifikasi dengan " passwd "; hak istimewa mysql flush;

Menetapkan hak istimewa pengguna untuk menggunakan database - menghubungkan sebagai root, beralih ke database, mengatur hak istimewa, memperbarui hak istimewa:

# mysql -u root -p mysql gunakan mysql; mysql INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv) VALUES ("%","nama database","nama pengguna","Y","Y","Y"," Y","Y","T"); hak istimewa mysql flush;

Mysql memberikan semua hak istimewa pada nama database .* ke nama pengguna @localhost; hak istimewa mysql flush;

Memperbarui informasi dalam database:

SET PEMBARUAN Mysql Select_priv = "Y",Insert_priv = "Y",Update_priv = "Y" di mana = pengguna";

Menghapus baris dalam tabel:

Mysql HAPUS dari mana = "terserah";

Memperbarui hak istimewa dalam database:

Hak istimewa siram Mysql;

Cadangan - membuat, memulihkan database. Menghibur

Buat salinan cadangan (dump) semua database ke dalam file alldatabases.sql:

# mysqldump -u root -p kata sandi -opt; /tmp/alldatabases.sql

Cadangkan satu database ke file databasename.sql:

# mysql dump -u nama pengguna -p kata sandi -nama basis data database; /tmp/namadatabase.sql

Cadangkan satu tabel ke file databasename.tablename.sql:

# mysql dump -c -u nama pengguna -p kata sandi nama database nama tabel; /tmp/namadatabase.namatabel.sql

Memulihkan database (atau tabel) dari cadangan:

# mysql -u nama pengguna -p kata sandi nama basis data< /tmp/databasename.sql

Pembuatan tabel database. Menghibur

nama kolom ditunjukkan dengan huruf kecil;
Huruf MODAL - jenis dan atribut kolom;
in (tanda kurung) - nilai tipe kolom.

Buat tabel, contoh 1:

mysql CREATE TABLE (nama depan VARCHAR(20), inisial tengah VARCHAR(3), nama belakang VARCHAR(35), akhiran VARCHAR(3), officeid VARCHAR(10), userid VARCHAR(15), nama pengguna VARCHAR(8), email VARCHAR(35 ), telepon VARCHAR(25), grup VARCHAR(15), stempel tanggal TANGGAL, stempel waktu WAKTU, pgpemail VARCHAR(255));

Buat tabel, contoh 2:

Mysql membuat tabel (personid INT(50) NOT NULL AUTO_INTCREMENT PRIMARY KEY, nama depan VARCHAR(35), nama tengah VARCHAR(50), nama belakang VARCHAR(50) default "bato");