Cấu hình cho phép bên ngoài kết nói vào mysql
1. SSH vào Server
2. thêm các dòng sau vào file: /etc/my.cnf
#vi /etc/my.conf
Mã:
|
[mysqld]
bind-address = 255.112.324.12
port = 3306
# skip-networking
# skip-external-locking |
bind-address là ip mà bạn muốn server của bạn lắng nghe kết nói từ bên ngoài vào
3. Restart lại dịch vụ mysql
Mã:
|
#
service mysql restart |
Nếu nhận thông báo lỗi mysql start --> Failed bạn xem
log /var/log/mysql.log thì thấy lỗi sau
Trích dẫn:
|
100129 1:15:31 InnoDB: Started; log sequence number 0 662751
100129 1:15:31 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
100129 1:15:31 [ERROR] Do you already have another mysqld server running on port: 7306 ?
100129 1:15:31 [ERROR] Aborting
|
Restart lại Server, mysql sẽ start lên bình thường
4. Gán quyền truy cập cho User
Mã:
|
#mysql -uroot -pMyPass
CREATE DATABASE mydb;
hoặc sử dụng database hiện có
use test;
#gán quyền truy cập cho user root(truy cập từ bất kỳ ip nào,
nếu bạn chỉ muốn cho phép user: root truy cập từ 1 ip cụ thể
thì bạn thay thế ip trong "%")
GRANT ALL ON mydb.* TO root@'%' IDENTIFIED BY 'MyPASSWORD';
#hoặc tạo User khác và gán quyền truy cập
grant all privileges on test.* to quantrinet@"125.58.55.18" identified by 'quantrinet@123'; |
5. Mở port cho IPtables
Mã:
|
/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT |
hoặc tạm thời stop dịch vụ iptables để kiểm tra kết nói
Mã:
|
service iptables stop |
6. Kiểm tra
Từ một máy tính bất kỳ bạn gõ lệnh sau để kiểm tra kết nói vào server
Mã:
|
#mysql -u root -h 255.112.324.12 -p |
hoặc
Mã:
|
Telnet 255.112.324.12 3306 |
IP là ip của máy cần kết nói vào mysql (cấu hình trên bước 1)
Nhập password của tài khoản root của mysql
Chúc các bạn thành công!