TianDev

Một số lệnh Command Line của MySQL nên biết!

Posted: October 27, 2019 by anhkevin

Một số lệnh Command Line thao tác với MySQL

Đăng nhập MySQL bạn dùng lệnh: mysql -u root -p
1. Truy cập Mysql

  • Đăng nhập MySQL với tài khoản root bỏ qua nhập pass
mysql -u root
  • Đăng nhập MySQL với tài khoản root và nhập pass
mysql -u root -p

2. Thao tác database

  • Hiển thị danh sách database
mysql> SHOW DATABASES;
  • Tạo database
mysql> CREATE DATABASE database_name;
  • Xóa database
mysql> DROP DATABASE database_name;
  • Truy cập vào database
mysql> USE database_name;
  • Hiển thị toàn bộ table
mysql> USE database_name;// Phải truy cập vào database trước nếu chưa truy cập
mysql> SHOW TABLES;

3. Thao tác sao lưu và phục hồi

  • Sao lưu toàn bộ database
mysql> mysqldump -u root -ppassword --all-databases >  bk_all_databases.sql
  • Sao lưu một database
mysql> mysqldump -u root -ppassword database_name >  bk_database_name.sql
  • Sao lưu cấu trúc database (không có data)
mysql> mysqldump --no-data --databases database_name1 database_name2 >  backup_structure.sql
  • Sao lưu cấu trúc một số table của database
mysql> mysqldump --add-drop-table -u root -ppassword database_name table_1 table_2 >  backup_table.sql
  • Khôi phục toàn bộ database từ file backup
mysql> mysql -u root -ppassword >  bk_all_databases.sql
  • Khôi phục một database bất kỳ từ file backup
mysql> mysql -u root -ppassword database_name >  bk_database.sql

4. Quản lý tài khoản và phân quyền

  • Hiển thị toàn bộ users
mysql> SELECT * FROM mysql.user;
  • Gán full quyền cho một user trên tất cả database
mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' 
IDENTIFIED BY 'password' WITH GRANT OPTION;
  • Gán full quyền cho một user trên một database
mysql> GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost' 
IDENTIFIED BY 'password' WITH GRANT OPTION;
  • Phân quyền chi tiết cho một user
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES 
ON database_name.* TO 'username'@'localhost' IDENTIFIED BY 'password';
  • Thay đổi mật khẩu user
mysql> UPDATE mysql.user SET password=PASSWORD("new_pass") WHERE User='username';

=> Để các thay đổi trên được thực hiện ngay lập tức hãy thực hiện lệnh dưới

mysql> FLUSH PRIVILEGES;