Tillåta fjärranslutningar till din MySQL-server

0
141

Jag har täckt in MySQL på ett antal sätt som hittills. Du kan läsa hur man administrerar MySQL databaser med MySQL Workbench (se min artikel “Komplett databas administration paket MySQL Workbench”), MySQL Administrator (se min artikel “att Skapa en databas med MySQL Administrator”), MySQL Navigator (se min artikel “du Hantera MySQL-databaser med ett lätt att använda GUI”), eller PhpMyAdmin (se min artikel “Installera PhpMyAdmin för lätt MySQL administration”). Genom min LAMPA artikel, “Hur man installerar en LAMP-server”, du lärt dig att installera MySQL. Nu är det dags att se hur du kan förlänga denna MySQL-server för att avlägsna maskiner.

Varför skulle du vilja göra detta? En databas-server är en värdefull råvara i en värld av data. Att ha samma server pitch andra former av data och annan service kan snabbt bli en nackdel för din MySQL i både prestanda och säkerhet kategorier. På grund av detta är det klokt att isolera MySQL så att det är endast används för denna tjänst. Men för att göra detta måste du konfigurera servern för att kunna tjäna upp databaser för att avlägsna maskiner. Även om det inte är fruktansvärt komplicerat, utan att veta var du ska leta och vad man ska göra, denna uppgift kan vara till synes omöjliga. Men efter denna tutorial, dina databaser kommer att vara tillgänglig för användaren/maskiner du konfigurerar – och endast de användare/datorer.

Innan vi börjar

Du kommer vara glad att veta, förutsatt att du har MySQL igång, det finns ingen installation behövs för denna uppgift. Du kommer att behöva tillgång till MySQL-lösenord för administratörer samt administrativ åtkomst så att du kan redigera en MySQL-konfigurationsfil. Annat än som en enkel nödvändighet (och ett terminalfönster), är du redo att skrida till verket.

Redigera min.conf

Innan du börjar redigera /etc/mysql/min.conf – fil, skulle jag föreslår att du säkerhetskopierar dina aktuella filen. Göra detta med kommandot:

sudo cp /etc/mysql/min.conf /etc/mysql/min.conf.bak

Nu när filen säkerhetskopieras låt oss öppna denna baby upp för redigering. När du har öppnat filen du kommer att vilja se för denna linje:

bind-adress = 127.0.0.1

Vad raden ovan gör är att begränsa anslutningar till localhost och bara localhost. Vill du kommentera den här raden ut genom att ändra den till:

#bind-adress = 127.0.0.1

Spara nu filen och starta om MySQL med kommandot:

sudo /etc/init.d/starta om mysql

När MySQL har startats om du nu behöver för att få till MySQL kommandotolken.

Mysql-prompten

För att komma till mysql du kommer att vilja ge kommandot:

mysql -u root -p

Där roten är MySQL-administrativa användare (de flesta tycker att det är root).

Du kommer att bli tillfrågad om MySQL-lösenord för administratörer. Efter att du har autentiserats du kommer att få en ny prompt som ser ut som:

mysql>

Du är nu på MySQL. Du har bara ett kommando för att ange för att detta ska fungera. Du kommer att vilja ange detta kommando noga:

GE ALLA PRIVILEGIER PÅ *.* ATT användarnamn@adress IDENTIFIERAS MED “lösenord”;

Där användarnamn är det användarnamn på fjärrdatorn som kommer att ansluta, adress är IP-adressen för fjärrdatorn, och lösenordet är det lösenord som kommer att användas av den fjärranslutna användare.

När kommandot är utfärdat framgångsrikt ska du få se något liknande:

Query OK, 0 rows påverkas (0,00 sek)

Så länge du får Query OK, bör du vara bra att gå.

Nu när du behöver för att ansluta från en annan maskin som du kommer att använda IP-adressen för MySQL-server, användarnamn du angav i MySQL kommandotolken, och användarnamn kommer att vara det användarnamn som du angett i MySQL kommandotolken.

Det är det. Din MySQL-server är redo att acceptera fjärranslutningar.

Slutliga tankar

Det bör gå utan att säga att du kommer också vill se till att denna MySQL-server är skyddad med en bra brandvägg. För detta kan du kolla in någon av iptables artiklar här på Ghacks. Njuta av att MySQL-servern!