दस्तावेज़
डेटाबेस तक दूरस्थ पहुंच की अनुमति कैसे दें
सामग्री
MySQL/MariaDB
रिमोट कनेक्शन के लिए सुनने के लिए MySQL / MariaDB को कॉन्फ़िगर करें:
TurnKey v15.0 के लिए और बाद में रिलीज़:
(Note: v15.x = Debian 9 / tretch -) नीचे देखें v14.x और इससे पहले)
sed -i "s/^bind-address/#bind-address/" /etc/mysql/mariadb.conf.d/50-server.cnf
'new_user' (password: 'MyNewPassword') बनाएँ, जो इस सर्वर पर किसी भी MariaDB (MySQL प्रतिस्थापन में ड्रॉप) डेटाबेस से कनेक्ट करने की अनुमति देता है, किसी भी रिमोट एड्रेस (किसी भी होस्ट से) ('%')
NEW_USER=new_user NEW_PASS='MyNewPassword' MYSQL_BATCH="mysql --user=root --batch" $MYSQL_BATCH --execute "CREATE USER $NEW_USER@'localhost' IDENTIFIED BY \"$NEW_PASS\";" $MYSQL_BATCH --execute "CREATE USER $NEW_USER@'%' IDENTIFIED BY \"$NEW_PASS\";" $MYSQL_BATCH --execute "GRANT ALL ON *.* TO $NEW_USER@'localhost';" $MYSQL_BATCH --execute "GRANT ALL ON *.* TO $NEW_USER@'%';"
MySQL / MariaDB को प्रभावी ढंग से लेने के लिए परिवर्तनों के लिए पुनः शुरू करें:
service mysql restart
TurnKey v14.x और इससे पहले रिलीज़ के लिए:
(Note: v14.x = Debian 8 / Jessie)
sed -i "s/^bind-address/#bind-address/" /etc/mysql/my.cnf
MySQL को रिमोट स्वीकार करने के लिए कॉन्फ़िगर करें जड़ कनेक्शन (किसी भी होस्ट से)%')):
(Added line breaks for readability)
MYSQL_BATCH="mysql --user=root --password=$MYSQL_PASS --batch"
$MYSQL_BATCH --execute "INSERT INTO mysql.user ( Host , User , Password , Select_priv ,
Insert_priv , Update_priv , Delete_priv , Create_priv , Drop_priv , Reload_priv ,
Shutdown_priv , Process_priv , File_priv , Grant_priv , References_priv ,
Index_priv , Alter_priv , Show_db_priv , Super_priv , Create_tmp_table_priv ,
Lock_tables_priv , Execute_priv , Repl_slave_priv , Repl_client_priv ,
Create_view_priv , Show_view_priv , Create_routine_priv , Alter_routine_priv ,
Create_user_priv , ssl_type , max_questions , max_updates , max_connections ,
max_user_connections) VALUES ( '%', 'root', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y','Y', 'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y', '', '0', '0', '0', '0');"
MySQL को प्रभावी ढंग से लेने के लिए पुनः शुरू करें:
service mysql restart
PostgreSQL
PostgreSQL को रिमोट कनेक्शन सुनने के लिए कॉन्फ़िगर करें:
CONF=/etc/postgresql/8.3/main/postgresql.conf sed -i "s/#listen_addresses = 'localhost'/listen_addresses = '*'/" $CONF
PostgreSQL को रिमोट कनेक्शन स्वीकार करने के लिए कॉन्फ़िगर करें (किसी भी होस्ट से):
# configure postgres to accept remote connections cat >> /etc/postgresql/8.3/main/pg_hba.conf <<EOF # Accept all IPv4 connections - CHANGE THIS!!! host all all 0.0.0.0/0 md5 EOF
PostgreSQL को प्रभावी ढंग से लेने के लिए पुनः शुरू करें:
service postgresql restart