Bii o ṣe le Yi MySQL aiyipada/MariaDB Port pada ni Linux


Ninu itọsọna yii a yoo kọ bi a ṣe le yipada ibudo aiyipada ti ibi ipamọ data MySQL/MariaDB sopọ ni CentOS 7 ati awọn pinpin Linux ti o da lori Debian. Ibudo aiyipada ti olupin data MySQL n ṣiṣẹ labẹ Lainos ati Unix jẹ 3306/TCP.

Lati le yi aiyipada ibudo data MySQL/MariaDB pada ni Linux, ṣii faili atunto olupin MySQL fun ṣiṣatunkọ nipa ipinfunni aṣẹ isalẹ.

# vi /etc/my.cnf.d/server.cnf                   [On CentOS/RHEL]
# vi /etc/mysql/mariadb.conf.d/50-server.cnf    [On Debian/Ubuntu] 

Wa fun ofin laini bẹrẹ pẹlu [mysqld] ki o gbe itọsọna ibudo ti o tẹle labẹ alaye [mysqld] , bi a ṣe han ninu awọn iyasọtọ faili isalẹ. Ropo oniyipada ibudo ni ibamu.

[mysqld] 
port = 12345

Lẹhin ti o ti ṣafikun ibudo MySQL/MariaDB tuntun, fipamọ ati pa faili iṣeto ni ki o fi package atẹle si labẹ CentOS 7 lati le lo awọn ofin SELinux ti a beere lati gba aaye data laaye lati di lori ibudo tuntun naa.

# yum install policycoreutils-python

Nigbamii, ṣafikun ofin SELinux ti o wa ni isalẹ lati di iho MySQL lori ibudo tuntun ki o tun bẹrẹ daemon ibi ipamọ data lati lo awọn ayipada, nipa ipinfunni awọn ofin wọnyi. Lẹẹkansi, rọpo iyipada ibudo MySQL lati baamu nọmba ibudo tirẹ.

--------------- On CentOS/RHEL --------------- 
# semanage port -a -t mysqld_port_t -p tcp 12345
# systemctl restart mariadb

--------------- On Debian/Ubuntu ---------------
# systemctl restart mysql      [On Debian/Ubuntu]  

Lati le rii daju ti iṣeto iṣeto ibudo fun olupin data MySQL/MariaDB ti lo ni ifijišẹ, gbejade aṣẹ grep lati le ṣe idanimọ ibudo MySQL tuntun tuntun ni irọrun.

# ss -tlpn | grep mysql
# netstat -tlpn | grep mysql

O tun le ṣe afihan ibudo MySQL tuntun nipa titẹle si ibi ipamọ data MySQL pẹlu akọọlẹ gbongbo ati gbekalẹ aṣẹ isalẹ. Sibẹsibẹ, jẹ ki o mọ pe gbogbo awọn asopọ si MySQL lori localhost ni a ṣe nipasẹ apo-iwọle ibugbe MySQL unix, kii ṣe nipasẹ iho TCP. Ṣugbọn nọmba ibudo TCP gbọdọ wa ni pàtó ni pàtó ni ọran ti awọn isopọ latọna jijin laini aṣẹ si ibi ipamọ data MySQL nipa lilo asia -P .

# mysql -h localhost -u root -p -P 12345
MariaDB [(none)]> show variables like 'port';

Ni ọran ti asopọ latọna jijin si ibi ipamọ data MySQL, olumulo gbongbo gbọdọ wa ni tunto ni fifin lati gba awọn isopọ ti nwọle dagba gbogbo awọn nẹtiwọọki tabi adirẹsi IP kan, nipa fifun aṣẹ ni isalẹ ni itọnisọna MySQL:

# mysql -u root -p
MariaDB [(none)]> grant all privileges on *.* to 'root'@'192.168.1.159' identified by 'strongpass';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit

Latọna jijin wọle si olupin MySQL nipasẹ alabara laini aṣẹ lori ibudo tuntun nipasẹ ipinfunni aṣẹ isalẹ.

# mysql -h 192.168.1.159 -P 12345 -u root -p  

Lakotan, ni kete ti o ba yipada ibudo olupin data MySQL/MariaDB, o nilo lati ṣe imudojuiwọn pinpin rẹ Awọn ofin ogiriina lati gba awọn isopọ ti nwọle si ibudo TCP tuntun ki awọn alabara latọna jijin le sopọ ni ifijišẹ si ibi ipamọ data.