เจฐเจฟเจฎเฉ‹เจŸ เจ•เจจเฉˆเจ•เจธเจผเจจ เจฒเจˆ เจกเจพเจŸเจพเจฌเฉ‡เจธ เจ‰เจชเจฒเจฌเจง เจ•เจฐเจพเจ‰เจฃเจพ

เจ†เจ‰ เจ‡เจธ เจคเฉฑเจฅ เจฆเฉ‡ เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเฉ€เจ เจ•เจฟ เจ•เจˆ เจตเจพเจฐ เจ…เจœเจฟเจนเจพ เจนเฉเฉฐเจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจ•เจจเฉˆเจ•เจธเจผเจจ เจจเจพเจฒ เจ‡เฉฑเจ• เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ. เจ‡เจน เจนเฉฑเจฅเจพเจ‚ เจ…เจคเฉ‡ เจนเฉเจจเจฐเจพเจ‚ เจฆเฉ€ เจ˜เจพเจŸ เจ•เจพเจฐเจจ เจฌเฉˆเจ•-เจเจ‚เจก เจฆเฉ‡ เจตเจฟเจ•เจพเจธ เจตเจฟเฉฑเจš เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจ–เฉ‹เจœ เจจเจพ เจ•เจฐเจจ เจ…เจคเฉ‡ เจซเจฐเฉฐเจŸ-เจเจ‚เจก 'เจคเฉ‡ เจงเจฟเจ†เจจ เจ•เฉ‡เจ‚เจฆเจฐเจฟเจค เจ•เจฐเจจ เจฒเจˆ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจฎเฉˆเจ‚ เจ‡เจน เจจเจนเฉ€เจ‚ เจ•เจนเจฟเจฃ เจœเจพ เจฐเจฟเจนเจพ เจนเจพเจ‚ เจ•เจฟ เจฎเฉ‡เจฐเจพ เจนเฉฑเจฒ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจนเฉ‹เจตเฉ‡เจ—เจพ, เจชเจฐ เจ‡เจน เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ.

เจ•เจฟเจ‰เจ‚เจ•เจฟ เจฎเฉˆเจ‚ เจนเฉ‹เจธเจŸเจฟเฉฐเจ— เจฒเจˆ เจญเฉเจ—เจคเจพเจจ เจ•เจฐเจจเจพ เจชเจธเฉฐเจฆ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ, เจฎเฉˆเจ‚ เจ†เจชเจฃเฉ‡ เจ•เฉฐเจฎ 'เจคเฉ‡ เจจเฉˆเจŸเจตเจฐเจ• เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ€, เจ‡เฉฑเจ• เจšเจฟเฉฑเจŸเจพ IP เจนเฉˆเฅค เจ‡เฉฑเจฅเฉ‡ เจ‡เจธเจฆเฉ€ เจฌเจฃเจคเจฐ เจนเฉˆ:

เจฐเจฟเจฎเฉ‹เจŸ เจ•เจจเฉˆเจ•เจธเจผเจจ เจฒเจˆ เจกเจพเจŸเจพเจฌเฉ‡เจธ เจ‰เจชเจฒเจฌเจง เจ•เจฐเจพเจ‰เจฃเจพ

เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‹เจฒ เจ•เจˆ เจ•เฉฐเจชเจฟเจŠเจŸเจฐเจพเจ‚ เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจนเฉˆ, เจตเจงเฉ‡เจฐเฉ‡ เจธเจชเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ 192.168.1.2 (เจ‰เจฐเจซเจผ 192.168.0.2) เจคเฉฑเจ• เจฒเฉ€เจจเจ•เจธ เจ…เจคเฉ‡ เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจฆเฉ‡ เจจเจพเจฒ 192.168.0.3 เจนเฉˆเฅค เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡, เจฎเฉ‡เจฐเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฒเจˆ, เจฎเฉˆเจ‚ mysql เจจเฉ‚เฉฐ เจšเฉเจฃเจฟเจ† เจ…เจคเฉ‡ เจฆเฉ‡เจ–เจฟเจ† เจ•เจฟ เจฒเฉ€เจจเจ•เจธ 'เจคเฉ‡ เจ•เฉ€ เจนเฉˆ. เจ‡เจน เจ‰เฉฑเจฅเฉ‡ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€, เจชเจฐ เจ•เฉ‹เจˆ เจตเฉ€ เจชเจพเจธเจตเจฐเจก เจจเจนเฉ€เจ‚ เจœเจพเจฃเจฆเจพ, เจ…เจคเฉ‡ เจœเฉ‹ เจœเจพเจฃเจฆเฉ‡ เจธเจจ เจ‰เจน เจญเฉเฉฑเจฒ เจ—เจ (เจœเฉ‹ เจฎเฉ‡เจฐเฉ‡ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ‡ เจธเจจ)เฅค เจ‡เจน เจœเจพเจฃเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ•เจฟ เจ•เจฟเจธเฉ‡ เจจเฉ‚เฉฐ เจ‡เจธเจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจฎเฉˆเจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจฎเจฟเจŸเจพ เจฆเจฟเฉฑเจคเจพ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจธเจฅเจพเจชเจค เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เฉ€เจคเฉ€เฅค เจ•เจพเจซเจผเฉ€ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจจเจนเฉ€เจ‚ เจธเฉ€, เจ…เจคเฉ‡ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ‡เจธ เจ—เจฒเจคเฉ€ เจจเฉ‚เฉฐ เจ เฉ€เจ• เจ•เจฐเจจ เจฒเจˆ เจฎเฉˆเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจฎเจพเจจเฉ€เจŸเจฐ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ•เฉ€เจฌเฉ‹เจฐเจก เจจเฉ‚เฉฐ เจฎเจพเจŠเจธ เจจเจพเจฒ เจœเฉ‹เฉœเจจเจพ เจชเจตเฉ‡เจ—เจพ, เจฎเฉˆเจ‚ เจ‡เจธ เจ•เจพเจฐเฉ‹เจฌเจพเจฐ เจจเฉ‚เฉฐ เจ›เฉฑเจกเจฃ เจฆเจพ เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ เจนเฉˆเฅค เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ‡เฉฑเจ• เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจฎเจธเจผเฉ€เจจ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจธเจผเจ•เจคเฉ€เจธเจผเจพเจฒเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจธเจญ เจ•เฉเจ, เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‹เจฒ เจ˜เจฐ เจตเจฟเฉฑเจš เจ†เจชเจฃเฉ‡ เจฒเฉˆเจชเจŸเจพเจช 'เจคเฉ‡ เจนเฉˆ. เจธเจฟเจงเจพเจ‚เจค เจตเจฟเฉฑเจš, เจฎเฉˆเจ‚ เจ–เฉเจฆ เจ‡เฉฐเจธเจŸเจพเจฒเฉ‡เจธเจผเจจ เจฆเจพ เจตเจฐเจฃเจจ เจจเจนเฉ€เจ‚ เจ•เจฐเจพเจ‚เจ—เจพ, เจ‡เจธ เจฌเจพเจฐเฉ‡ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจฎเฉˆเจจเฉ‚เจ…เจฒ เจ…เจคเฉ‡ เจตเฉ€เจกเฉ€เจ“ เจนเจจ. เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจฎเจธเจผเฉ€เจจ 'เจคเฉ‡ 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;


เจฌเฉˆเจ•เจ…เฉฑเจช เจตเจพเจฒเฉ€ เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจฎเจธเจผเฉ€เจจ 'เจคเฉ‡ เจฐเฉฑเจ–เจฟเจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจœเฉ‡เจ•เจฐ เจ‰เจชเจฏเฉ‹เจ—เจคเจพ เจตเจพเจฒเฉ€ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจจเจนเฉ€เจ‚ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจธเจฆเจพ เจชเฉ‚เจฐเจพ เจฎเจพเจฐเจ— เจธเฉฐเจญเจต เจนเฉˆ. (เจฎเฉˆเจ‚ เจนเฉเจฃเฉ‡ เจนเฉ€ เจ—เจฟเจฅเจฌ เจคเฉ‡ เจ‡เฉฑเจ• เจฌเฉˆเจ•เจ…เจช เจ…เจชเจฒเฉ‹เจก เจ•เฉ€เจคเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจฎเจธเจผเฉ€เจจ เจคเฉ‡ เจ•เจฒเฉ‹เจจ เจ•เฉ€เจคเจพ เจนเฉˆ)เฅค เจฎเฉˆเจ‚ เจ‡เจน เจœเฉ‹เฉœเจพเจ‚เจ—เจพ เจ•เจฟ เจŸเฉ‡เจฌเจฒ เจ†เจชเจฃเฉ‡ เจ†เจช เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ, เจชเจฐ เจฎเฉˆเจ‚ เจธเจ•เฉเจฐเฉ€เจจเจธเจผเฉŒเจŸเจธ เจจเฉ‚เฉฐ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ, เจ…เจคเฉ‡ เจฎเฉˆเจจเฉ‚เฉฐ เจฒเจ—เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‡เจน 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

เจ‡เจน เจฎเฉ‡เจฐเฉ‡ เจฒเจˆ เจ…เจจเฉเจ•เฉ‚เจฒ เจจเจนเฉ€เจ‚ เจธเฉ€, เจฎเฉˆเจ‚ เจตเฉ€ เจ‡เจธ เจชเจคเฉ‡ เจฆเฉเจ†เจฐเจพ เจฐเฉ‚เจŸ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ•เจจเฉˆเจ•เจŸ เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฟเจ†เฅค

mysql เจตเจฐเจ•เจฌเฉˆเจ‚เจš เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎ เจจเฉ‡ เจฎเจฆเจฆ เจ•เฉ€เจคเฉ€, เจ‰เฉฑเจฅเฉ‡ เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ เจตเจฟเฉฑเจš เจคเฉเจธเฉ€เจ‚ เจฒเฉ‹เจ•เจฒเจนเฉ‹เจธเจŸ เจจเฉ‚เฉฐ% เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฆเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจ‡เจน เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ, เจนเจพเจฒเจพเจ‚เจ•เจฟ เจ•เจฒเจพเจ‡เฉฐเจŸ เจจเฉ‡ เจฎเจฆเจฆ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€เฅค เจนเฉเจฃ เจคเฉเจธเฉ€เจ‚ เจ•เฉฐเจธเฉ‹เจฒ เจœเจพเจ‚ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจชเจคเฉ‡ เจคเฉ‹เจ‚ เจ•เฉ‹เจก เจคเฉ‹เจ‚ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจจเจพเจฒ เจœเฉเฉœ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจฐเจฟเจฎเฉ‹เจŸ เจ•เจจเฉˆเจ•เจธเจผเจจ เจฒเจˆ เจกเจพเจŸเจพเจฌเฉ‡เจธ เจ‰เจชเจฒเจฌเจง เจ•เจฐเจพเจ‰เจฃเจพ

เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ˜เจฐ เจœเจพเจ‚ เจเจ‚เจŸเจฐเจชเฉเจฐเจพเจˆเจœเจผ เจจเฉˆเจŸเจตเจฐเจ• เจฌเจฃเจพเจ‰เจฃ เจ…เจคเฉ‡ เจตเจฟเฉฐเจกเฉ‹เจœเจผ เจซเจพเจ‡เจฐเจตเจพเจฒ เจจเฉ‚เฉฐ เจฌเฉฐเจฆ เจ•เจฐเจจ เจฆเฉ€ เจตเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ, เจจเจนเฉ€เจ‚ เจคเจพเจ‚ เจคเฉเจธเฉ€เจ‚ เจ‡เจธ เจฎเจธเจผเฉ€เจจ เจจเฉ‚เฉฐ เจชเจฟเฉฐเจ— เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจจเจนเฉ€เจ‚ เจนเฉ‹เจตเฉ‹เจ—เฉ‡ (เจ‡เจน เจจเจนเฉ€เจ‚ เจ•เจฟ เจ‡เจน เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจจเจพเจฒ เจœเฉเฉœ เจœเจพเจตเฉ‡เจ—เจพ)เฅค

เจ…เฉฑเจงเจพ เจ•เฉฐเจฎ เจชเฉ‚เจฐเจพ เจนเฉ‹ เจ—เจฟเจ† เจนเฉˆ, เจซเจฟเจฐ เจฎเฉˆเจจเฉ‚เฉฐ เจ˜เจฐ เจคเฉ‹เจ‚ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจจเจพเจฒ เจœเฉเฉœเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉ‹เจฃ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉˆ.

เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจจเฉˆเจŸเจตเจฐเจ• เจกเจพเจ‡เจ—เฉเจฐเจพเจฎ เจคเฉ‹เจ‚ เจฆเฉ‡เจ– เจธเจ•เจฆเฉ‡ เจนเฉ‹, เจคเฉเจนเจพเจจเฉ‚เฉฐ 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 เจคเฉฑเจ•, เจ…เจคเฉ‡ เจซเจฟเจฐ 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

เจ‰เจน. เจชเจนเจฟเจฒเฉ€ เจฒเจพเจˆเจจ เจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจ•เจฟ เจ…เจธเฉ€เจ‚ เจชเจนเจฟเจฒเฉ‡ เจ•เฉเจจเฉˆเจ•เจธเจผเจจ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, เจฆเฉ‚เจœเฉ€ เจ…เจคเฉ‡ เจคเฉ€เจœเฉ€ เจฆเจพ เจ•เจฟ เจฆเฉ‹เจตเฉ‡เจ‚ เจฆเจฟเจธเจผเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจชเฉˆเจ•เฉ‡เจŸ เจญเฉ‡เจœเจฃเจพ เจธเฉฐเจญเจต เจนเฉˆ, เจšเฉŒเจฅเฉ€ เจ…เจคเฉ‡ เจชเฉฐเจœเจตเฉ€เจ‚ เจฆเจพ เจฎเจคเจฒเจฌ เจฎเฉฐเจœเจผเจฟเจฒ เจ…เจคเฉ‡ เจธเจฐเฉ‹เจค เจชเจคเฉ‡ เจจเฉ‚เฉฐ เจฌเจฆเจฒเจฃเจพ เจนเฉˆเฅค เจ…เจคเฉ‡ เจตเฉ‹เจ‡เจฒเจพ, เจคเฉเจธเฉ€เจ‚ เจ˜เจฐ เจคเฉ‹เจ‚ 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

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹