1. Sistem Güncellemeleri ve ProxySQL Kurulumu
İlk olarak, sisteminizin güncel olduğundan emin olmanız gerekmektedir. Aşağıdaki komutları kullanarak sisteminizi güncelleyebilir ve ProxySQL’i kurabilirsiniz:
apt update
apt install -y lsb-release
wget -O - 'https://repo.proxysql.com/ProxySQL/repo_pub_key' | sudo apt-key add -
echo deb https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/$(lsb_release -sc)/ ./ | tee /etc/apt/sources.list.d/proxysql.list
apt update
apt install proxysql mysql-client -y
systemctl enable --now proxysql
Bu adımlar, gerekli paketleri yükleyecek ve ProxySQL’i başlatacaktır.
2. ProxySQL Admin Şifresini Değiştirme
ProxySQL yönetici şifresini değiştirmek için aşağıdaki komutları kullanın:
mysql -u AdminUserName -pAdminPassWord -h 127.0.0.1 -P6032 --prompt='Admin> '
UPDATE global_variables SET variable_value='AdminUserName:AdminNewPassWord' WHERE variable_name='admin-admin_credentials';
LOAD ADMIN VARIABLES TO RUNTIME;
SAVE ADMIN VARIABLES TO DISK;
Şifrenizi güçlü ve güvenli bir şekilde belirlemeniz önemlidir.
3. MariaDB Kullanıcı Oluşturma
MariaDB sunucu üzerinde yeni bir kullanıcı oluşturmak için aşağıdaki SQL komutlarını kullanın:
CREATE USER 'monitor'@'%' IDENTIFIED BY 'MonitorPassWord';
FLUSH PRIVILEGES;
4. ProxySQL İzleme Parametreleri
ProxySQL üzerinde izleme parametrelerini yapılandırmak için:
UPDATE global_variables SET variable_value='monitor' WHERE variable_name='mysql-monitor_username';
UPDATE global_variables SET variable_value='MonitorPassWord' WHERE variable_name='mysql-monitor_password';
UPDATE global_variables SET variable_value='2000' WHERE variable_name IN ('mysql-monitor_connect_interval','mysql-monitor_ping_interval','mysql-monitor_read_only_interval');
LOAD MYSQL VARIABLES TO RUNTIME;
SAVE MYSQL VARIABLES TO DISK;
5. ProxySQL üzerine mariadb makinlerini tanımlama
Bu giriş, writer_hostgroup ve reader_hostgroup olmak üzere iki ana sütun içerir.
writer_hostgroup, yazma işlemlerini yürütmek için kullanılan host grubunu belirtirken, reader_hostgroup, okuma işlemlerini yürütmek için kullanılan host grubunu belirtir.
1 numaralı host grubu yazma işlemleri için kullanılırken, 2 numaralı host grubu okuma işlemleri için kullanılır.
SHOW CREATE TABLE main.mysql_replication_hostgroups\G
INSERT INTO main.mysql_replication_hostgroups (writer_hostgroup,reader_hostgroup,comment) VALUES (1,2,'galera_cluster');
INSERT INTO main.mysql_servers(hostgroup_id,hostname,port) VALUES (1,'10.10.10.10',3306);
INSERT INTO main.mysql_servers(hostgroup_id,hostname,port) VALUES (1,'10.10.10.20",3306);
INSERT INTO main.mysql_servers(hostgroup_id,hostname,port) VALUES (1,'10.10.10.30',3306);
LOAD MYSQL VARIABLES TO RUNTIME;
SAVE MYSQL VARIABLES TO DISK;
LOAD MYSQL SERVERS TO RUNTIME;
6. MariaDB Kullanıcısı Oluşturma
MariaDB’de ProxySQL kullanıcısını oluşturmak için:
CREATE USER 'proxysql'@'%' IDENTIFIED BY 'UserPassWord';
GRANT ALL PRIVILEGES ON *.* TO 'proxysql'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
8. ProxySQL Test İstemci Bağlantısı
Son olarak, ProxySQL bağlantınızı test etmek için:
mysql -uproxyUserName -h 127.0.0.1 -P6033 -pUserPassWord
SELECT hostgroup,srv_host,status FROM stats.stats_mysql_connection_pool;
Kaynak :
https://proxysql.com/documentation/proxysql-configuration/