MariaDB trước kia là MySQL, một hệ quản trị CSDL thường dùng trên VPS/Server Linux. Nhớ một số lệnh quan trọng của MySQL là điều cần thiết với người quản trị Server.
Đăng nhập vào MySQL bằng lệnh: mysql -u root -p
Trên CentOS, toàn bộ file raw database được lưu trong thư mục: /var/lib/mysql
Quản lý tài khoản và phân quyền
Hiển thị toàn bộ users:
mysql> SELECT * FROM mysql.user;
Xóa null user:
mysql> DELETE FROM mysql.user WHERE user = ' ';
Xóa tất cả user mà không phải root:
mysql> DELETE FROM mysql.user WHERE NOT (host="localhost" AND user="root");
Đổi tên tài khoản root (giúp bảo mật):
mysql> UPDATE mysql.user SET user="mydbadmin" WHERE user="root";
Gán full quyền cho một user mới:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'mypass' WITH GRANT OPTION;
Phân quyền chi tiết cho một user mới:
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON mydatabase.* TO 'username'@'localhost' IDENTIFIED BY 'mypass';
Gán full quyền cho một user mới trên một database nhất định:
mysql> GRANT ALL PRIVILEGES ON mydatabase.* TO 'username'@'localhost' IDENTIFIED BY 'mypass' WITH GRANT OPTION;
Thay đổi mật khẩu user:
mysql> UPDATE mysql.user SET password=PASSWORD("newpass") WHERE User='username';
Xóa user:
mysql> DELETE FROM mysql.user WHERE user="username";
Cuối cùng reload user
mysql> FLUSH PRIVILEGES;
mysql> exit;
Các thao tác database
Hiển thị toàn bộ databases:
mysql> SHOW DATABASES;
Tạo database:
mysql> CREATE DATABASE mydatabase;
Sử dụng một database:
mysql> USE mydatabase;
Xóa một database:
mysql> DROP DATABASE mydatabase;
Tối ưu database:
All Databases:
$ sudo mysqlcheck -o --all-databases -u root -p
Single Database:
$ sudo mysqlcheck -o db_schema_name -u root -p
Các thao tác table
Tất cả các thao tác bên dưới bạn phải lựa chọn trước database bằng cách dùng lệnh:USE mydatabase;
Hiển thị toàn bộ table:
mysql> SHOW TABLES;
Hiển thị dữ liệu của table:
mysql> SELECT * FROM tablename;
Đổi tên table :
mysql> RENAME TABLE first TO second;
hoặc
mysql> ALTER TABLE mytable rename as mynewtable;
Xóa table:
mysql> DROP TABLE mytable;
Các thao tác sao lưu và phục hồi
Sao lưu toàn bộ database bằng lệnh (chú ý không có khoảng trắng giữa -p và mật khẩu):
mysqldump -u root -pmypass --all-databases > alldatabases.sql
Sao lưu một database bất kỳ:
mysqldump -u username -pmypass databasename > database.sql
Khôi phục toàn bộ database bằng lệnh:
mysql -u username -pmypass < alldatabases.sql (no space in between -p and mypass)
Khôi phục một database bất kỳ:
mysql -u username -pmypass databasename < database.sql
Chỉ sao lưu cấu trúc database:
mysqldump --no-data --databases databasename > structurebackup.sql
Chỉ sao lưu cấu trúc nhiều database:
mysqldump --no-data --databases databasename1 databasename2 databasename3 > structurebackup.sql
Sao lưu một số table nhất định:
mysqldump --add-drop-table -u username -pmypass databasename table_1 table_2 > databasebackup.sql
LiteSpeed Beginer là một kẻ gà mờ công nghệ, nhưng lại cuồng hiệu năng và tốc độ của máy chủ LiteSpeed. Thích tìm hiểu, trải nghiệm, chia sẻ những công nghệ web server tiên tiến nhất
1 thoughts on “Những lệnh MySQL quan trọng cần nhớ”
Dat Tran says:
Bài viết rất hay ? Mong anh ra nhiều bài mới như vậy!
Bài viết rất hay ? Mong anh ra nhiều bài mới như vậy!