Hướng dẫn kết nối vào database accetsstrong html năm 2024

Nếu bạn đang sử dụng HocVPS Script và muốn kích hoạt Remote Access để kết nối với MySQL từ máy tính cá nhân hoặc từ server khác, hãy thực hiện theo các bước dưới đây.

Hướng dẫn kích hoạt Remote Access MySQL

1. Thay đổi cấu hình MySQL

***Lưu ý: bước này không cần làm nếu đang dùng HocVPS Script, mời bạn chuyển qua bước 2.

Mặc định MySQL sẽ disable remote access, bạn cần enable lên bằng cách mở file cấu hình MySQL, ví dụ với đường dẫn /etc/mysql/my.cnf

nano /etc/mysql/my.cnf

Comment những dòng sau:

bind-address = 127.0.0.1

skip-networking

Khởi động lại MySQL Server

service mysql restart

2. Gán quyền remote

Mặc định các account MySQL chỉ được gán quyền access locally mà thôi, để kết nối được từ bên ngoài, bạn cần thêm một bước là cập nhật privilege.

Trong ví dụ này, mình sẽ cho phép tài khoản root được phép login remote.

– Login vào phpMyAdmin sử dụng tài khoản admin và password tự động generate khi bạn cài đặt HocVPS Script (hoặc tài khoản MySQL root).

– Nhấn tab Users, bạn sẽ thấy danh sách account MySQL hiện tại tương tự như sau

Hướng dẫn kết nối vào database accetsstrong html năm 2024

– Tiếp theo bạn nhấn tab SQL, nhập lệnh sau trong ô text rồi nhấn nút Go

GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION

Lưu ý thay PASSWORD bằng mật khẩu tài khoản root, thay % bằng IP cụ thể nếu bạn chỉ cho phép login từ IP này. Ví dụ của mình sử dụng mật khẩu c0ef6f242253b0028

Hướng dẫn kết nối vào database accetsstrong html năm 2024

– Nếu không có vấn đề gì xảy ra thì bạn đã update quyền thành công. Tiếp theo quay trở lại tab Users bạn sẽ thấy thêm một hàng mới với Host là %

Hướng dẫn kết nối vào database accetsstrong html năm 2024

Bây giờ, bạn có thể kết nối trực tiếp đến MySQL Server từ máy tính cá nhân hoặc VPS khác rồi đấy.

– Nếu muốn tắt Remote Access, trong tab Users bạn chọn User name có Host là % rồi nhấn nút Remove selected users là xong.

3. Mở port 3306

Đôi khi, bạn cần mở port 3306 thủ công để MySQL có thể lắng nghe kết nối. Sau bước 2 mà vẫn không connect được, bạn hãy sử dụng lệnh sau:

iptables -I INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

Nếu muốn chỉ chấp nhận kết nối từ IP 10.5.1.3, hãy sử dụng lệnh sau:

iptables -I INPUT -i eth0 -s 10.5.1.3 -p tcp --destination-port 3306 -j ACCEPT

Hướng dẫn này cũng có thể áp dụng với server không dùng HocVPS Script. Chúc các bạn thành công!

Bài viết liên quan:

  1. Hướng dẫn tạo và kích hoạt Swap
  2. Hướng dẫn kích hoạt WordPress Multisite trên Server
  3. Kích hoạt thư viện hỗ trợ hình ảnh GD trên CentOS
  4. Hướng dẫn kích hoạt Apache mod_rewrite trên CentOS
  5. Kích hoạt Private Network ở Vultr
  6. Hướng dẫn cài đặt LAMP (Linux, Apache, MySQL, PHP) trên Ubuntu 12.04

Comment của bạn

70 Comments

  1. Mạc Văn Năng 18 comment Mừng rơi nước mắt làm thành công rồi ạ Nhưng có vấn đề chưa hiểu là tại sao khi sử dụng hosting chung thì băng thông có 100G/ngày Nhưng mua hosting SQL thì băng thông của SQL lại sử dụng tận 300G/ngày thế này thì tiền đâu mà mua để dùng ạ. hay phải cấu hình những gì VPS SQL mới chỉ cài hocvps sau đó tạo database thôi
  2. Mạc Văn Năng 18 comment Làm theo hướng dẫn của bác xong cũng không thấy hiện tượng gì. Trên Cenos7 Đã mở port 3306 Đã tạo thêm user SQL ( Cái này có phải là tạo thêm ở trên VPS chứa MYSQL? và pass= Pass VPS có trên Vultr không?) Vào config sửa IP $config[‘db’][‘host’] = ‘45.32.251.191’; cùng không thấy chạy kết nối được ạ
  3. Thành 15 comment

    Mình Kết nối được mà chậm quá bạn ạ, có cách nào khắc phục không ạ

    1. Việt Phương Moderator Nó phụ thuộc vào kết nối của 2 VPS rồi. Bạn nên dùng 2 VPS cùng location. Và nếu cùng 1 nhà cung cấp có hỗ trợ private network thì càng tốt
    2. Thành 15 comment

      Mình dùng cùng nhà cung cấp vultr , nhưng trong Private Networks phải làm ntn ạ?

      1. Việt Phương Moderator
             Đây bạn nhé https://hocvps.com/kich-hoat-private-network-o-vultr/
  4. ![](https://https://i0.wp.com/secure.gravatar.com/avatar/c3a52655c691fef7db596344a12c066a?s=44&d=mm&r=g)Phong Thủy Đỗ Huệ 6 comment tks ad. bài viết rất hay & hưu ích. tks ad đã chia sẻ
  5. Kien Nguyen 1 comment

    Mình làm đến bước mở cổng 3306 rồi nhưng ko chạy đc lệnh mở cổng 3306. # iptables -I INPUT -m state –state NEW -m tcp -p tcp –3306 xxx -j ACCEPT iptables v1.4.21: unknown option “–3306” Try `iptables -h’ or ‘iptables –help’ for more information. Mình thuê server bên Vulrt, và cần connect đến data từ 01 Hosting khác đến database để trên VPS Vulrt.

    1. Việt Phương Moderator iptables -I INPUT -m state --state NEW -m tcp -p tcp --3306 -j ACCEPT nhé bạn

      Check cổng mở qua http://ping.eu/port-chk/

      1. Kien Nguyen 3 comment
             Mình kiểm tra VPS vẫn ko đc bạn:  
             iptables -I INPUT -m state –state NEW -m tcp -p tcp –3306 -j ACCEPT  
             iptables v1.4.21: unknown option “–3306”  
             Try \`iptables -h’ or ‘iptables –help’ for more information.  
             \[root@vultr home\]#  
             Không hiểu lý do nào, mình check các port 25,3306, 465 đang cần đều bị đóng.  
      2. ![](https://secure.gravatar.com/avatar/7cce07bfe066a368438897843ddd51b9?s=44&d=mm&r=g)Kien Nguyen 3 comment Mình chạy thử vẫn ko đc iptables v1.4.21: unknown option “–3306” Try \`iptables -h’ or ‘iptables –help’ for more information. \[root@vultr home\]# Có bạn nào xài vulrt khó chịu vì close hết port của mình không. Nếu muốn thay thì nên xài của bên nào. Tks !
        1. Việt Phương Moderator
                        
          
          # bind-address = 127.0.0.1
                        
          
          # skip-networking
                        0 nhé bạn  
                        Và các port mail bạn phải yêu cầu mở thủ công qua ticket Vultr vì họ ngăn chặn việc lợi dụng server để spam mail
  6. ![](https://https://i0.wp.com/secure.gravatar.com/avatar/1715dc821ba8c5ebcb355d5995af9c10?s=44&d=mm&r=g)Quang 25 comment đối với mariadb thì ở bước 2 chỉnh chỗ nào vậy ad?
    1. Việt Phương Moderator Bạn truy cập MySQL trên SSH Terminal rồi chạy lệnh đó là được nhé
  7. Le Tuan Kiet 5 comment

    Mình có kết nối mysql từ xa hosting đến vps nếu thêm lệnh chỉ 1 IP Mới vào được port 3306 thì người khác sẽ ko vào được web hả bạn ?

    1. Việt Phương Moderator Không. Chỉ cần cái hosting đó được phép truy cập vào MySQL của VPS là được rồi. Chứ người dùng không trực tiếp truy cập vào MySQL
  8. Le Tuan Kiet 5 comment

    /sbin/iptables -I INPUT -i eth0 -s 10.5.1.3 -p tcp –destination-port 3306 -j ACCEPT Cho minh hoi lenh nay neu minh muon port 3306 ket noi voi 3 4 cai IP vao dc thi xai lenh nao ? lenh nay chi dung dc 1 IP thoi a` ban ?

    1. Việt Phương Moderator

      bind-address = 127.0.0.1

      skip-networking

      1 nhé bạn. Ví dụ

      bind-address = 127.0.0.1

      skip-networking

      2 Nhưng thường bạn nên làm nhiều dòng lệnh, mỗi dòng 1 IP. Như vậy sẽ tiện quản lý hơn.
  9. Quang 25 comment

    DB mình nằm trên (Hosting) StableHost, còn source web nằm trên VPS (đã cài hocvps). Giờ mình muốn kết nối Source Web từ VPS đến DB nằm trên Hosting thì làm thế nào vậy ad?

    1. Việt Phương Moderator Bạn mở remote connect cho database trên StableHost nhé. Một số hosting mình thấy cho tool chỉnh chức năng này luôn, không cần chỉnh lằng nhằng như VPS Ví dụ http://prntscr.com/j5r6xh
  10. Minh Clear 7 comment

    Nếu dùng VPSSIM thì làm như thế nào, mình đã làm trên cả 2 hocvps và vpssim đều ko remote được

    1. Việt Phương Moderator . Cụ thể thì không có hướng dẫn, còn cách làm đều là mở truy cập ở MySQL và Database đồng thời mở port VPS
  11. hùng 6 comment

    sao cài sypex dumper với mysql dumper không dc nhỉ. Lúc trc cài vestacp thì cài bình thường chuyển qua hocvps 2 cái đều cài không dc. mysqldumper bấm connect to database thì im ru còn sypex nhập user pass vào cũng im ru. Giúp mình với .thank. database nặng quá không nhập bằng phpmyadmin dc

    1. Việt Phương Moderator

      Database nặng quá bạn import bằng câu lệnh MySQL thì ổn hơn đó. https://hocvps.com/backup-va-restore-mysql-database-bang-lenh/ Còn mysql dump kia xem lỗi log như thế nào chứ mỗi im ru thì khó tư vấn rồi 😀

      1. hùng 6 comment
             xem ở đâu vậy bạn. tìm nãy h mà không thấy cái log nào liên quan hết 🙁  
        
        1. Việt Phương Moderator
                        Bạn tải về từ đâu và chmod thư mục mysqldumper à? Đoạn điền user bạn nhập ntn.  
                        Bạn chỉ cần đăng nhập tool rồi check thư mục log file nào đc ghi vào mới nhất là biết mà (trừ access log). Tool PHP nên mình đoán là bên php log, hoặc mysql log  
          
          1. hùng 6 comment
                                      tải tại trang chủ. chmod theo hướng dẫn. nhập user thì user admin cũng không dc mà user lúc tạo database cũng không dc lun. sypex cũng bị y chang. không báo lỗi j hết. 🙁  
          2. ![](https://secure.gravatar.com/avatar/a09bd25f88a84e6ab4c7de6ca28dc950?s=44&d=mm&r=g)Việt Phương Moderator Bạn gửi VPS qua [email protected] mình xem cho chứ mô tả này không giúp đc rồi
          3. ![](https://secure.gravatar.com/avatar/dbceb28b9885d41b654093a2408e2efd?s=44&d=mm&r=g)hùng 6 comment để restore bằng lệnh xem sao. có j không dc mình gửi thông tin qua. Cám ơn ad
          4. ![](https://secure.gravatar.com/avatar/a09bd25f88a84e6ab4c7de6ca28dc950?s=44&d=mm&r=g)Việt Phương Moderator UHm. Restore bằng lệnh là an toàn nhất mà tránh timeout hay corrupt do dữ liệu lớn
          5. ![](https://secure.gravatar.com/avatar/a09bd25f88a84e6ab4c7de6ca28dc950?s=44&d=mm&r=g)Việt Phương Moderator Bạn kiểm tra file log # bind-address = 127.0.0.1
                                      
            
            # skip-networking
                                      3\. Xem log thời điểm gần nhất với lúc đăng nhập MySQLDumper.  
                                      Ngoài ra, bạn dùng PHP 7.1? Vì bản ở sourceforge.net từ lâu rồi và không hỗ trợ PHP 7\. thì phải
  12. ![](https://https://i0.wp.com/secure.gravatar.com/avatar/39719d2f8949f45b661d702f50357128?s=44&d=mm&r=g)Hà Sơn 1 comment Hiện tại e đang bị lỗi này ai khăc phục hộ e với ạ

    Failed to create database connection to 127.0.0.1:3306 with user[root]! FB:https://www.facebook.com/haanhson1324

    1. Việt Phương Moderator Hệ thống MySQL bạn cài đặt ntn?
  13. Nguyễn 4 comment

    Failed to connect to MySQL: (2002) No route to host em làm và bị lỗi này a nơi

    1. Việt Phương Moderator

      Bạn gửi cấu hình VPS qua [email protected] mình xem cho. Cần restart lại mySQL

      1. Nguyễn 4 comment
             Mình dùng centos 7 PHP Version 5.6.30 và cài script mới nhất của hocvps  
             mình đã restart mysql những vẩn chưa được  
        
        1. Việt Phương Moderator
                        
          
          # bind-address = 127.0.0.1
                        
          
          # skip-networking
                        4 thông báo gì. Bạn đọc cả mysql log trong thư mục log của domain chính nữa để biết mysql không start được vì lỗi gì  
          
          1. Nguyễn 4 comment
                                      service mysql start  
                                      thi báo lỗi  
                                      Redirecting to /bin/systemctl restart mysql.service  
                                      Failed to restart mysql.service: Unit not found.  
                                      nên mình dùng lệnh  
                                      systemctl restart mariadb.service => không thấy báo kết quả gì mình nghĩ là restart mysql thành công  
                                      Hiện tại file mysql.log k có log nào  
                                      chỉ có file mysql-slow.log là có 15mb log k biết có phải nó k  
          2. ![](https://secure.gravatar.com/avatar/a09bd25f88a84e6ab4c7de6ca28dc950?s=44&d=mm&r=g)Việt Phương Moderator Bạn gõ lệnh như thông báo đó # bind-address = 127.0.0.1
                                      
            
            # skip-networking
                                      5 (do đặc thù bên CentOS 7 khác CentOS 6). Cả  
                                      
            
            # bind-address = 127.0.0.1
                                      
            
            # skip-networking
                                      6\. No route for host của bạn liên quan đến vấn đề network. Bạn có đang connect remote MySQL không?  
                                      MySQL log luôn được tạo mặc định trong thư mục  
                                      
            
            # bind-address = 127.0.0.1
                                      
            
            # skip-networking
                                      7, bạn xem cả MySQL của ngày ngay trước đó, ví dụ mysql.log-20170323  
          3. ![](https://secure.gravatar.com/avatar/0475722bd03a17c38358f3c2ddef29d8?s=44&d=mm&r=g)Nguyễn 4 comment systemctl status mariadb.service â— mariadb.service – MariaDB database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2017-03-23 14:17:49 ICT; 2 days ago Process: 6278 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=0/SUCCESS) Process: 6249 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS) Main PID: 6277 (mysqld\_safe) CGroup: /system.slice/mariadb.service ├─6277 /bin/sh /usr/bin/mysqld\_safe –basedir=/usr └─6889 /usr/libexec/mysqld –basedir=/usr –datadir=/var/lib/mysql/ –plugin-dir=/usr/lib64/mysql/plugin –log-e… Mar 23 14:17:44 xxxxxxxxx.members.linode.com systemd\[1\]: Starting MariaDB database server… Mar 23 14:17:45 xxxxxxxxx.members.linode.com mysqld\_safe\[6277\]: 170323 14:17:45 mysqld\_safe Logging to ‘/var/log/mariad…og’. Mar 23 14:17:45 xxxxxxxxx.members.linode.com mysqld\_safe\[6277\]: 170323 14:17:45 mysqld\_safe Starting mysqld daemon with…sql/ Mar 23 14:17:49 xxxxxxxxx.members.linode.com systemd\[1\]: Started MariaDB database server. Hint: Some lines were ellipsized, use -l to show in full. đây là status sau khi mình check nè bạn
          4. ![](https://secure.gravatar.com/avatar/a09bd25f88a84e6ab4c7de6ca28dc950?s=44&d=mm&r=g)Việt Phương Moderator Có một số đoạn kí tự đặc biệt # bind-address = 127.0.0.1
                                      
            
            # skip-networking
                                      8? Ngoài ra, MySQL của bạn start được rồi mà?  
                                      
            
            # bind-address = 127.0.0.1
                                      
            
            # skip-networking
                                      9
  14. ![](https://https://i0.wp.com/secure.gravatar.com/avatar/8c7c8a61451aafca91ac50ce359bb4be?s=44&d=mm&r=g)Thực 6 comment GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘3a6f0c3dc1623d3ed’ WITH GRANT OPTION

    e dùng password mà hocvps tạo sẵn cho. e Mở port 3306 rồi nhưng tất cả đều ko kết nối đk

    1. Việt Phương Moderator User tạo ra khi cài đặt HocVPs là admin bạn à. Bạn thử connect PHPMyAdmin xem.
  15. Thực 6 comment a ơi e làm theo hướng dẫn kích hoạt Remote Access MySQL theo đúng hướng dẫn. tất cả. nhưng e không kết nối đk mysql từ server này sang server khác. e cài hocvps
  16. Ngô Văn Cương 142 comment Sửa như nào bạn ơi 🙁
  17. Ngô Văn Cương 142 comment

    Mình dùng CentOS 6 x64 cài hocvps script mà không thấy đường dẫn etc/mysql/…

    1. Việt Phương Moderator

      ***Lưu ý: bước này không cần làm nếu đang dùng HocVPS Script, mời bạn chuyển qua bước 2.

      1. Ngô Văn Cương 142 comment
             Mình thay localhost bằng ip của vps và test thử dính ngay lỗi này. 🙁  
             SQLSTATE\[HY000\] \[2002\] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.  
             Config:  
             mysql:dbname=cuong;host=iphost’,’admin’,’pass’  
        
        1. Việt Phương Moderator
                        Truy cập vps vẫn bình thường chứ bạn.  
                                  
                        Lỗi bạn có thể giống như thế này, bạn thử xem được không.  
          
          1. Ngô Văn Cương 142 comment
                                      Mình sửa thành mysql:dbname=cuong;port=3306;host=iphost’,’admin’,’pass’,  
                                      Nhưng vẫn không được bạn  
          2. ![](https://secure.gravatar.com/avatar/a09bd25f88a84e6ab4c7de6ca28dc950?s=44&d=mm&r=g)Việt Phương Moderator Ý mình bạn đã thử sửa service mysql restart 0 và service mysql restart 1 chưa
    2. ![](https://https://i0.wp.com/secure.gravatar.com/avatar/8ef541001c600e3b0164c25242267a43?s=44&d=mm&r=g)Khoa Nguyen 1 comment Dung /ect/my.cnf nhe

Trung Huynh 4 comment

Mình làm theo các bước trong bài hướng dẫn, ở DO thì ok, còn ở Vultr thì stop iptable mới được, không biết còn phải làm gì nữa ko bác nhỉ?

Luân Trần Admin

Giờ connect được chưa bạn?

Trung Huynh 4 comment

Mình thêm “iptables -A INPUT -p tcp –dport 3306 -j ACCEPT” thì được rồi. 🙁

Jack Man 18 comment

@Trung Huynh có thể chia sẻ thêm từng bước về cách kich-hoat-remote-access-mysql ở vultr được không ? Mình tìm kiếm lâu rồi nhưng không connect được ==!