Als je volledige toegang tot je server hebt (rootrechten vereist):
Stap 1:bewerk my.cnf (meestal in /etc)
Zoek de volgende regel:[mysqld]
en zorg ervoor dat regel skip-networking
is becommentarieerd (of verwijder regel) en voeg de volgende regel toe:
bind-address=YOUR-SERVER-IP
Als uw MySQL-server-IP bijvoorbeeld 66.166.170.28 is, moet het hele blok er als volgt uitzien:
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/English
bind-address = 66.166.170.28
# skip-networking
.......
Waar
- bind-adres :IP-adres om aan te binden.
- netwerk overslaan :Luister helemaal niet naar TCP/IP-verbindingen. Alle interactie met mysqld moet plaatsvinden via Unix-sockets. Deze optie wordt sterk aanbevolen voor systemen waar alleen lokale verzoeken zijn toegestaan. Aangezien je verbinding op afstand moet toestaan, moet deze regel uit my.cnf worden verwijderd of in de status 'commentaar' worden geplaatst.
Stap 2:Toegang verlenen aan alle hosts
Start de MySQL-monitor met dit commando:mysql
of /usr/local/mysql/bin/mysql
. Uw shell-prompt zou er nu als volgt uit moeten zien:mysql>
. Voer deze opdracht uit:
GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY "PASSWORD";
Waar:
- GEBRUIKERSNAAM is de gebruikersnaam die u gebruikt wanneer u verbinding maakt met uw php-script.
- WACHTWOORD is het wachtwoord dat u gebruikt bij het verbinden.
U moet nu de privileges van MySQL wissen. Voer deze opdracht uit:
FLUSH PRIVILEGES;
Voer deze opdracht uit om MySQL af te sluiten:
exit;
Stap 3:herstart mysql deamon
/etc/init.d/mysqld restart
of
/etc/init.d/mysql restart
afhankelijk van welke linux-distro uw server momenteel gebruikt.