แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ แƒ“แƒ˜แƒกแƒขแƒแƒœแƒชแƒ˜แƒฃแƒ แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒแƒ— แƒ˜แƒ›แƒ˜แƒ—, แƒ แƒแƒ› แƒแƒ แƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ”แƒ‘แƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒกแƒ—แƒแƒœ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒ—. แƒ”แƒก แƒ™แƒ”แƒ—แƒ“แƒ”แƒ‘แƒ แƒ˜แƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒแƒ  แƒฉแƒแƒ•แƒฃแƒฆแƒ แƒ›แƒแƒ•แƒ“แƒ”แƒ— แƒ–แƒ”แƒ“แƒ›แƒ”แƒขแƒแƒ“ แƒ‘แƒ”แƒฅแƒ”แƒœแƒ“แƒ˜แƒก แƒ’แƒแƒœแƒ•แƒ˜แƒ—แƒแƒ แƒ”แƒ‘แƒแƒก แƒ“แƒ แƒ™แƒแƒœแƒชแƒ”แƒœแƒขแƒ แƒ˜แƒ แƒ“แƒ”แƒ— แƒคแƒ แƒแƒœแƒขแƒ–แƒ” แƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒฃแƒœแƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ. แƒ•แƒ”แƒ  แƒ•แƒ˜แƒขแƒงแƒ•แƒ˜, แƒ แƒแƒ› แƒฉแƒ”แƒ›แƒ˜ แƒ’แƒแƒ›แƒแƒกแƒแƒ•แƒแƒšแƒ˜ แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก.

แƒ แƒแƒ“แƒ’แƒแƒœ แƒแƒ  แƒ›แƒ˜แƒงแƒ•แƒแƒ แƒก แƒฐแƒแƒกแƒขแƒ˜แƒœแƒ’แƒ˜แƒก แƒ’แƒแƒ“แƒแƒฎแƒ“แƒ, แƒกแƒแƒ›แƒกแƒแƒฎแƒฃแƒ แƒจแƒ˜ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒ” แƒฅแƒกแƒ”แƒšแƒ˜, แƒ˜แƒฅ แƒแƒ แƒ˜แƒก แƒ—แƒ”แƒ—แƒ แƒ˜ IP. แƒแƒฅ แƒแƒ แƒ˜แƒก แƒ›แƒ˜แƒกแƒ˜ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ:

แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ แƒ“แƒ˜แƒกแƒขแƒแƒœแƒชแƒ˜แƒฃแƒ แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ™แƒแƒ›แƒžแƒ˜แƒฃแƒขแƒ”แƒ แƒ–แƒ” แƒ›แƒแƒฅแƒ•แƒก แƒฌแƒ•แƒ“แƒแƒ›แƒ, แƒฃแƒคแƒ แƒ แƒ–แƒฃแƒกแƒขแƒแƒ“ 192.168.1.2 (aka 192.168.0.2) แƒšแƒ˜แƒœแƒฃแƒฅแƒกแƒ˜แƒ— แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ“แƒ 192.168.0.3 แƒ•แƒ˜แƒœแƒ“แƒแƒฃแƒกแƒ˜แƒ—. แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒ›แƒ” แƒแƒ•แƒ˜แƒ แƒฉแƒ˜แƒ” mysql แƒฉแƒ”แƒ›แƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒ’แƒแƒ“แƒแƒ•แƒฎแƒ”แƒ“แƒ” แƒ แƒ แƒ˜แƒงแƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ Linux-แƒ–แƒ”. แƒ˜แƒฅ แƒฃแƒ™แƒ•แƒ” แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒงแƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒžแƒแƒ แƒแƒšแƒ˜ แƒแƒ แƒแƒ•แƒ˜แƒœ แƒ˜แƒชแƒ˜แƒก แƒ“แƒ แƒ•แƒ˜แƒœแƒช แƒ˜แƒชแƒแƒ“แƒ แƒ“แƒแƒแƒ•แƒ˜แƒฌแƒงแƒ“แƒ (แƒ›แƒแƒ— แƒ•แƒ˜แƒœแƒช แƒฉแƒ”แƒ›แƒแƒ›แƒ“แƒ” แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ“แƒ). แƒ แƒแƒชแƒ แƒ’แƒแƒ•แƒ˜แƒ’แƒ”, แƒ แƒแƒ› แƒแƒ แƒแƒ•แƒ˜แƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ“แƒ, แƒฌแƒแƒ•แƒจแƒแƒšแƒ” แƒ“แƒ แƒ˜แƒกแƒ”แƒ• แƒ•แƒชแƒแƒ“แƒ” แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ. แƒแƒ  แƒ˜แƒงแƒ แƒกแƒแƒ™แƒ›แƒแƒ แƒ˜แƒกแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ แƒแƒ“แƒ’แƒแƒœ แƒแƒ› แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒกแƒฌแƒแƒ แƒ”แƒ‘แƒšแƒแƒ“ แƒ›แƒแƒ›แƒ˜แƒฌแƒ”แƒ•แƒ“แƒ แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒก แƒ“แƒ แƒ™แƒšแƒแƒ•แƒ˜แƒแƒขแƒฃแƒ แƒ˜แƒก แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ แƒ›แƒแƒกแƒ–แƒ” แƒ›แƒแƒฃแƒกแƒ˜แƒ—, แƒ’แƒแƒ“แƒแƒ•แƒฌแƒงแƒ•แƒ˜แƒขแƒ” แƒฃแƒแƒ แƒ˜ แƒ›แƒ”แƒ—แƒฅแƒ•แƒ แƒแƒ› แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒ–แƒ”. แƒฃแƒคแƒ แƒ แƒ›แƒ”แƒขแƒ˜แƒช, แƒ•แƒ˜แƒœแƒ“แƒแƒฃแƒกแƒ˜แƒก แƒแƒžแƒแƒ แƒแƒขแƒ˜ แƒ’แƒแƒชแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒซแƒšแƒแƒ•แƒ แƒ˜แƒ แƒ“แƒ แƒžแƒšแƒฃแƒก, แƒšแƒ”แƒžแƒขแƒแƒžแƒ–แƒ” แƒ›แƒแƒฅแƒ•แƒก แƒกแƒแƒฎแƒšแƒจแƒ˜. แƒžแƒ แƒ˜แƒœแƒชแƒ˜แƒžแƒจแƒ˜, แƒ›แƒ” แƒแƒ  แƒแƒฆแƒ•แƒฌแƒ”แƒ  แƒ—แƒแƒ•แƒแƒ“ แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒแƒก, แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒฃแƒแƒ›แƒ แƒแƒ•แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ แƒ“แƒ แƒ•แƒ˜แƒ“แƒ”แƒแƒ. Windows-แƒ˜แƒก แƒแƒžแƒแƒ แƒแƒขแƒ–แƒ” mysql-แƒ˜แƒก แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ’แƒแƒ“แƒแƒ•แƒฌแƒงแƒ•แƒ˜แƒขแƒ” แƒ›แƒแƒ’แƒ˜แƒ“แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒ แƒ”แƒ–แƒ”แƒ แƒ•แƒ แƒแƒกแƒšแƒ˜ แƒฉแƒ”แƒ›แƒ˜ แƒšแƒ”แƒžแƒขแƒแƒžแƒ˜แƒ“แƒแƒœ แƒฉแƒ”แƒ›แƒก แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒกแƒแƒ“แƒ’แƒฃแƒ แƒแƒ›แƒ“แƒ”.

แƒ”แƒก แƒ™แƒ”แƒ—แƒ“แƒ”แƒ‘แƒ แƒแƒกแƒ” (แƒฉแƒ”แƒ›แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜):

mysqldump -uroot -p your_base > dump_file.sql

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜, แƒฉแƒ•แƒ”แƒœ แƒ•แƒฅแƒ›แƒœแƒ˜แƒ— แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒก แƒแƒฎแƒแƒš แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒจแƒ˜ แƒ“แƒ แƒแƒฆแƒแƒ“แƒ’แƒ”แƒœแƒก แƒกแƒแƒ แƒ”แƒ–แƒ”แƒ แƒ•แƒ แƒแƒกแƒšแƒก "แƒแƒฎแƒแƒš" แƒ›แƒแƒœแƒฅแƒแƒœแƒแƒ–แƒ”.

mysql -h localhost -u root -p

create database your_base;
use your_base;

mysql -uroot -p your_base < dump_file.sql

show tables;


แƒกแƒแƒ แƒ”แƒ–แƒ”แƒ แƒ•แƒ แƒคแƒแƒ˜แƒšแƒ˜ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ“แƒ”แƒก แƒแƒฎแƒแƒš แƒ›แƒแƒœแƒฅแƒแƒœแƒแƒ–แƒ” แƒ“แƒ, แƒจแƒ”แƒกแƒแƒซแƒšแƒแƒ, แƒ—แƒฃ แƒแƒ แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒก แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜, แƒ›แƒแƒจแƒ˜แƒœ แƒ›แƒ˜แƒกแƒ™แƒ”แƒœ แƒ›แƒ˜แƒ›แƒแƒ•แƒแƒšแƒ˜ แƒกแƒ แƒฃแƒšแƒ˜ แƒ’แƒ–แƒ. (แƒ›แƒ” แƒแƒฎแƒšแƒแƒฎแƒแƒœ แƒแƒ•แƒขแƒ•แƒ˜แƒ แƒ—แƒ” แƒกแƒแƒ แƒ”แƒ–แƒ”แƒ แƒ•แƒ แƒแƒกแƒšแƒ˜ GitHub-แƒจแƒ˜ แƒ“แƒ แƒ›แƒแƒ•แƒแƒฎแƒ“แƒ˜แƒœแƒ” แƒ›แƒ˜แƒกแƒ˜ แƒ™แƒšแƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ แƒแƒฎแƒแƒš แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒแƒ–แƒ”). แƒ“แƒแƒ•แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ“แƒ˜ แƒ แƒแƒ’แƒแƒ  แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒ—แƒแƒ•แƒแƒ“ แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒ™แƒ แƒ˜แƒœแƒจแƒแƒขแƒ”แƒ‘แƒ˜ แƒแƒ  แƒจแƒ”แƒ›แƒ˜แƒœแƒแƒฎแƒแƒ•แƒก แƒ“แƒ แƒ•แƒคแƒ˜แƒฅแƒ แƒแƒ‘, 2-3 แƒฌแƒšแƒ˜แƒก แƒกแƒขแƒฃแƒ“แƒ”แƒœแƒขแƒ˜แƒกแƒ—แƒ•แƒ˜แƒกแƒแƒช แƒแƒ  แƒแƒ แƒ˜แƒก แƒ แƒ—แƒฃแƒšแƒ˜.

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒงแƒ•แƒ”แƒšแƒ แƒชแƒฎแƒ แƒ˜แƒšแƒ˜ แƒแƒฆแƒ“แƒ’แƒ”แƒ‘แƒ, แƒ“แƒ แƒแƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ แƒ’แƒแƒฎแƒ“แƒ”แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒ–แƒ” แƒ“แƒ˜แƒกแƒขแƒแƒœแƒชแƒ˜แƒฃแƒ แƒ˜ แƒฌแƒ•แƒ“แƒแƒ›แƒ. แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒแƒกแƒ”แƒ—แƒ›แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ”แƒ‘แƒ›แƒ แƒฌแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒแƒก แƒ•แƒ”แƒ  แƒ›แƒ˜แƒแƒฆแƒฌแƒ˜แƒ (แƒ˜แƒก แƒแƒ แƒฉแƒ”แƒ•แƒ˜แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก แƒœแƒ”แƒ‘แƒแƒ แƒ—แƒ•แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒ“แƒ)

create user 'client'@'%' IDENTIFIED by 'client';
grant select on your_base . * to 'client'@'%';
flush privileges;

แƒฃแƒคแƒ แƒ แƒ–แƒฃแƒกแƒขแƒแƒ“, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒกแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ แƒจแƒ”แƒ›แƒ”แƒซแƒšแƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ—,

mysql -h localhost -u client -pclient

แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ›แƒแƒก แƒฃแƒ™แƒ•แƒ” แƒแƒฆแƒแƒ  แƒจแƒ”แƒ”แƒซแƒšแƒ

mysql -h 192.168.0.3 -u client -pclient

แƒ”แƒก แƒแƒ  แƒ’แƒแƒ›แƒแƒ›แƒ˜แƒ•แƒ˜แƒ“แƒ แƒ“แƒ แƒ•แƒ”แƒ  แƒ“แƒแƒ•แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ” แƒแƒ› แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜แƒ—, แƒ แƒแƒ’แƒแƒ แƒช root.

แƒ“แƒแƒ›แƒ”แƒฎแƒ›แƒแƒ แƒ mysql workbench แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒ›; แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒจแƒ˜ แƒจแƒ”แƒชแƒ•แƒแƒšแƒ”แƒ— localhost %-แƒ–แƒ” แƒ“แƒ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก, แƒ—แƒฃแƒ›แƒชแƒ แƒ™แƒšแƒ˜แƒ”แƒœแƒขแƒ˜ แƒแƒ  แƒ“แƒแƒ”แƒฎแƒ›แƒแƒ แƒ. แƒแƒฎแƒšแƒ แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒฃแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ“แƒ”แƒ— แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒก แƒ™แƒแƒœแƒกแƒแƒšแƒ˜แƒ“แƒแƒœ แƒแƒœ แƒ™แƒแƒ“แƒ˜แƒ“แƒแƒœ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜แƒ“แƒแƒœ.

แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ แƒ“แƒ˜แƒกแƒขแƒแƒœแƒชแƒ˜แƒฃแƒ แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒแƒ— แƒกแƒแƒฎแƒšแƒ˜แƒก แƒแƒœ แƒ‘แƒ˜แƒ–แƒœแƒ”แƒก แƒฅแƒกแƒ”แƒšแƒ˜ แƒ“แƒ แƒ’แƒแƒ›แƒแƒ แƒ—แƒแƒ— Windows Firewall, แƒฌแƒ˜แƒœแƒแƒแƒฆแƒ›แƒ“แƒ”แƒ’ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœ แƒ•แƒ”แƒ แƒช แƒ™แƒ˜ แƒจแƒ”แƒซแƒšแƒ”แƒ‘แƒ— แƒแƒ› แƒแƒžแƒแƒ แƒแƒขแƒ˜แƒก แƒžแƒ˜แƒœแƒ’แƒก (แƒ แƒแƒ› แƒแƒฆแƒแƒ แƒแƒคแƒ”แƒ แƒ˜ แƒ•แƒ—แƒฅแƒ•แƒแƒ— แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒกแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ).

แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒก แƒœแƒแƒฎแƒ”แƒ•แƒแƒ แƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ, แƒแƒฎแƒšแƒ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒ•แƒซแƒšแƒ แƒกแƒแƒฎแƒšแƒ˜แƒ“แƒแƒœ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒกแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ.

แƒ แƒแƒ’แƒแƒ แƒช แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒกแƒฅแƒ”แƒ›แƒ˜แƒ“แƒแƒœ แƒฎแƒ”แƒ“แƒแƒ•แƒ—, แƒ˜แƒœแƒขแƒ”แƒ แƒœแƒ”แƒขแƒจแƒ˜ แƒ›แƒแƒกแƒแƒฎแƒ•แƒ”แƒ“แƒ แƒแƒ“ แƒกแƒแƒญแƒ˜แƒ แƒแƒ 192.168.0.3-แƒ“แƒแƒœ 192.168.1.1-แƒ›แƒ“แƒ” (แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜) แƒ’แƒแƒ“แƒแƒกแƒ•แƒšแƒ, แƒ›แƒแƒ“แƒ˜แƒ— แƒฌแƒแƒ•แƒ˜แƒ“แƒ”แƒ— แƒกแƒแƒžแƒ˜แƒ แƒ˜แƒกแƒžแƒ˜แƒ แƒ แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ”แƒ‘แƒ˜แƒ—. แƒ›แƒแƒ“แƒ˜แƒ— แƒ“แƒแƒ•แƒแƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒแƒ— แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜ 192.168.1.1-แƒ“แƒแƒœ 192.168.1.2-แƒ›แƒ“แƒ” แƒแƒกแƒ”:

แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ แƒ“แƒ˜แƒกแƒขแƒแƒœแƒชแƒ˜แƒฃแƒ แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒแƒ  แƒฉแƒแƒœแƒก, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒฎแƒ”แƒšแƒ˜แƒ— แƒ“แƒแƒ•แƒฌแƒ”แƒ :

route add 192.168.0.0 mask 255.255.255.0 gateway 192.168.1.2

แƒ”แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ™แƒ”แƒ—แƒ“แƒ”แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ— แƒฅแƒ•แƒ”แƒฅแƒกแƒ”แƒšแƒจแƒ˜, แƒแƒœแƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒ  แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒฃแƒงแƒแƒ•แƒœแƒ”แƒ‘แƒšแƒ˜แƒ• แƒ’แƒแƒ“แƒแƒแƒ’แƒ–แƒแƒ•แƒœแƒแƒ— แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ–แƒ” 192.168.0.2 แƒแƒœ 192.168.0.3.

แƒ”แƒก แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒ แƒแƒฃแƒขแƒ”แƒ แƒ›แƒ แƒ˜แƒชแƒแƒ“แƒ”แƒก แƒกแƒแƒ“ แƒ›แƒ“แƒ”แƒ‘แƒแƒ แƒ”แƒแƒ‘แƒก แƒฅแƒ•แƒ”แƒฅแƒกแƒ”แƒšแƒ˜ 192.168.0.0/24 (แƒฅแƒกแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒฌแƒแƒ•แƒšแƒ แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒแƒ).

แƒแƒฎแƒšแƒ แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ— แƒžแƒแƒ แƒขแƒ˜แƒก แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒแƒก 3306 (แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ mysql แƒžแƒแƒ แƒขแƒ˜ (แƒ—แƒฃ แƒแƒ  แƒจแƒ”แƒ’แƒ˜แƒชแƒ•แƒšแƒ˜แƒแƒ— แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒ“แƒ แƒแƒก)) แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ–แƒ” 192.168.1.2

แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒแƒ‘แƒ แƒ“แƒ˜แƒกแƒขแƒแƒœแƒชแƒ˜แƒฃแƒ แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ แƒ—แƒฃแƒšแƒ˜ แƒ’แƒแƒกแƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒšแƒ˜แƒœแƒฃแƒฅแƒกแƒ˜แƒก แƒแƒžแƒแƒ แƒแƒขแƒ–แƒ” แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ (แƒ›แƒแƒก แƒแƒฅแƒ•แƒก แƒแƒ แƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ‘แƒแƒ แƒแƒ—แƒ˜ 192.168.1.2 (enp3s1 แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜) แƒ“แƒ 192.168.0.2 (enp3s0 แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜), แƒ แƒแƒ—แƒ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ‘แƒแƒ แƒแƒ—แƒ”แƒ‘แƒ›แƒ แƒ˜แƒชแƒแƒ“แƒœแƒ”แƒœ, แƒ แƒ แƒ’แƒแƒ“แƒแƒ˜แƒขแƒแƒœแƒแƒœ 192.168.1.2-แƒ“แƒแƒœ. 192.168.0.2-แƒ–แƒ”, แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ™แƒ˜ แƒฉแƒ•แƒ”แƒœแƒก Windows แƒ™แƒแƒ›แƒžแƒ˜แƒฃแƒขแƒ”แƒ แƒ–แƒ” MySql-แƒ˜แƒ—.

sudo iptables -A FORWARD -i enp3s1 -o enp3s0 -p tcp --syn --dport 3306 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -i enp3s1 -o enp3s0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A FORWARD -i enp3s0 -o enp3s1 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t nat -A PREROUTING -i enp3s1 -p tcp --dport 3306 -j DNAT --to-destination 192.168.0.3
sudo iptables -t nat -A POSTROUTING -o enp3s0 -p tcp --dport 3306 -d 192.168.0.3 -j SNAT --to-source 192.168.1.2
ะธ ะฟะพัะปะตะดะฝัั ัั‚ั€ะพั‡ะบะฐ ัะพั…ั€ะฐะฝัะตั‚ ะฒะฒะตะดะตะฝะฝั‹ะต ะบะพะผะฐะฝะดั‹ ั‡ั‚ะพะฑั‹ ะพะฝะธ ะฟั€ะธ ะฟะตั€ะตะทะฐะฟัƒัะบะต ะพัะธ ะฝะต ัั‚ะตั€ะปะธััŒ
sudo service iptables-persistent save

แƒ˜แƒ›แƒแƒ—. 1 แƒฎแƒแƒ–แƒ˜ แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒก, แƒ›แƒ”-2 แƒ“แƒ แƒ›แƒ”-3 แƒ แƒแƒ› แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ•แƒแƒ’แƒ–แƒแƒ•แƒœแƒแƒ— แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜ แƒแƒ แƒ˜แƒ•แƒ” แƒ›แƒ˜แƒ›แƒแƒ แƒ—แƒฃแƒšแƒ”แƒ‘แƒ˜แƒ—, แƒ›แƒ”-4 แƒ“แƒ แƒ›แƒ”-5 แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก แƒ“แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒฌแƒงแƒแƒ แƒแƒก แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒแƒก. แƒ“แƒ voila, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒกแƒแƒฎแƒšแƒ˜แƒ“แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ mysql-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ—. แƒ“แƒ แƒ‘แƒแƒšแƒแƒก, แƒฉแƒ”แƒ›แƒ˜ C++ แƒ™แƒแƒ“แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒก แƒแƒ›แƒแƒก:

//DataBaseConnection.cpp
#include "DataBaseConnection.h"

DataBaseConnection::DataBaseConnection()
{
}
void DataBaseConnection::Connect()
{
	// ะŸะพะปัƒั‡ะฐะตะผ ะดะตัะบั€ะธะฟั‚ะพั€ ัะพะตะดะธะฝะตะฝะธั
	conn = mysql_init(NULL);
	if (conn == NULL)
	{
		// ะ•ัะปะธ ะดะตัะบั€ะธะฟั‚ะพั€ ะฝะต ะฟะพะปัƒั‡ะตะฝ โ€“ ะฒั‹ะฒะพะดะธะผ ัะพะพะฑั‰ะตะฝะธะต ะพะฑ ะพัˆะธะฑะบะต
		fprintf(stderr, "Error: can'tcreate MySQL-descriptorn");
		//exit(1); //ะ•ัะปะธ ะธัะฟะพะปัŒะทัƒะตั‚ัั ะพะบะพะฝะฝะพะต ะฟั€ะธะปะพะถะตะฝะธะต
	}
	// ะŸะพะดะบะปัŽั‡ะฐะตะผัั ะบ ัะตั€ะฒะตั€ัƒ
	if (!mysql_real_connect(conn, "192.168.0.3", "root", "password", "your_base", NULL, NULL, 0))
	{
		// ะ•ัะปะธ ะฝะตั‚ ะฒะพะทะผะพะถะฝะพัั‚ะธ ัƒัั‚ะฐะฝะพะฒะธั‚ัŒ ัะพะตะดะธะฝะตะฝะธะต ั ัะตั€ะฒะตั€ะพะผ 
		// ะฑะฐะทั‹ ะดะฐะฝะฝั‹ั… ะฒั‹ะฒะพะดะธะผ ัะพะพะฑั‰ะตะฝะธะต ะพะฑ ะพัˆะธะฑะบะต
		fprintf(stderr, "Error: can't connect to database: %sn", mysql_error(conn));
	}
	else
	{
		// ะ•ัะปะธ ัะพะตะดะธะฝะตะฝะธะต ัƒัะฟะตัˆะฝะพ ัƒัั‚ะฐะฝะพะฒะปะตะฝะพ ะฒั‹ะฒะพะดะธะผ ั„ั€ะฐะทัƒ - "Success!"
		fprintf(stdout, "Success!n");
	}
}
std::vector<std::string> DataBaseConnection::Query()
{
	vectordrum.clear();
	std::string query = "SELECT * FROM drum where id=0";
	const char * q = query.c_str();
	qstate = mysql_query(conn, q);
	if (!qstate)
	{
		res = mysql_store_result(conn);
		while (row = mysql_fetch_row(res))
		{
			//printf("ID: %s,Position: %s, Image: %sn", row[0], row[1], row[2]);
			vectordrum.push_back(row[2]);
		}
	}
	else
	{
		std::cout << "Query failed:" << mysql_error(conn) << std::endl;
	}
	return vectordrum;
}
void DataBaseConnection::Close()
{
	// ะ—ะฐะบั€ั‹ะฒะฐะตะผ ัะพะตะดะธะฝะตะฝะธะต ั ัะตั€ะฒะตั€ะพะผ ะฑะฐะทั‹ ะดะฐะฝะฝั‹ั…
	mysql_close(conn);
}
DataBaseConnection::~DataBaseConnection()
{
	vectordrum.clear();
}
//DataBaseConnection.h
#pragma once
#include <iostream>
#include <mysql.h>
#include <vector>
#pragma comment(lib,"mysqlcppconn.lib")
#pragma comment(lib,"libmysql.lib")
class DataBaseConnection
{
public:
	DataBaseConnection();
	void Connect();
	std::vector<std::string> Query();
	void Close();
	~DataBaseConnection();
	MYSQL *conn;
	MYSQL_ROW row;
	MYSQL_RES *res;
	int qstate;
	std::vector<std::string> vectordrum;
};

แƒแƒฎแƒšแƒ แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒแƒ“ แƒ’แƒแƒฃแƒ’แƒ–แƒแƒ•แƒœแƒแƒ— แƒ”แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒก แƒ“แƒ แƒแƒ  แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒ›แƒ˜แƒกแƒ˜ แƒ’แƒแƒ“แƒแƒฌแƒ”แƒ แƒ, แƒ แƒแƒ—แƒ แƒ˜แƒก แƒแƒ“แƒ’แƒ˜แƒšแƒแƒ‘แƒ แƒ˜แƒ•แƒแƒ“ แƒ˜แƒ›แƒฃแƒจแƒแƒแƒก.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ