Sau một thời gian vắng bóng, mình đã quay trở lại rồi đây, haha....
Gần đây, mình cũng setup mysql trên server nên tiện viết blog về nó này luôn. Ok, vào việc luôn nhỉ.
1. Cài mysql trên server CentOS 7
- Update hệ thống: sudo yum update
- Cài MySQL repositories:
wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
- Cài đặt MySQL:
sudo rpm -Uvh mysql57-community-release-el7-9.noarch.rpm
- Ok, yum thôi:
sudo yum install mysql-server
Khởi động mysql:
sudo systemctl start mysqld
Check mysql:
sudo systemctl status mysqld
2. Cài mysql trên server Ubuntu
- Update hệ thống và cài mysql
sudo apt update
sudo apt install mysql-server -y
- Kiểm tra trạng thái mysql
sudo systemctl status mysql
Phía trên là 2 cách cài mysql. Sau khi cài xong thì mình còn phải setup bảo mật cho mysql (tức đặt mật khẩu cho root).
Với Centos thì bạn có thể dùng lệnh này để đặt mật khẩu cho root theo từng bước của nó: sudo mysql_secure_installation
3. Tạo một user mới và cấp quyền
- Chúng ta thường thao tác với database với đầy đủ các quyền, nhưng nhiều trường hợp chúng ta không muốn ai đó truy cập với quá nhiều quyền trong tay ( quá nguy hiểm quá ).
- Truy cập mysql: mysql -u root -p
- Tạo user mới:
- localhost: user chỉ được phép kết nối đến MySQL từ local host. Dùng ký tự % để cho phép user được phép truy cập từ bất kỳ máy nào. ( có thể dùng địa chỉ ip cụ thể ).
- password: mật khẩu đăng nhập user đó.
- Khi bạn tạo xong user thì user mới này chưa có quyền gì cả. Giờ mình phải cấp quyền cho nó.
- Vì vậy câu lệnh sau sẽ giúp thiết lập quyền cụ thể cho user:
+ DROP: Cho phép xóa tables hoặc databases.
+ DELETE: Cho phép xóa bản ghi dữ liệu trong bảng tables.
+ INSERT: Cho phép thêm bản ghi mới vào bảng cơ sở dữ liệu
+ SELECT: Cho phép sử dụng lệnh Select để tìm kiếm dữ liệu.
+ UPDATE: Cho phép cập nhật cơ sở dữ liệu.
+ GRANT OPTION: Cho phép gán hoặc xóa quyền của người dùng khác.
- Để thu hồi quyền:
SHOW GRANTS FOR 'newuser'@'localhost';
- Đảm bảo rằng user mysql có thể truy cập được ( tức xem nó cho phép host nào được truy cập )
- Hoặc có thể thay đổi nội dung bind-address của file my.cnf từ localhost thành 0.0.0.0
Sau khi chuyển xong bạn cần chạy lệnh reset mysql: sudo /etc/init.d/mysql restart
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; Update cần tắt safe, update xong bật lại; SET SQL_SAFE_UPDATES = 0; UPDATE SET SQL_SAFE_UPDATES = 1;
0 Comment: