programmera.net -> mysqldba -> normal     för utskrift      info@programmera.net

Installera MySQL 5 från binärpaket på Linux

1. Skapa Linux användaren
2. Ladda hem
3. Installera
4. Starta MySQLserver
5. Ändra rootlösenord
6. Stoppa MySQLserver
7. Starta MySQLserver vid uppstart
8. Koppla upp dig mot MySQLserver

1. Skapa Linux användaren

Skapa en Linux användare "mysql" som har primär grupp "mysql". Logga in på denna användare.

  • OBS:Trots att MySQL rekommenderar att MySQL ska installeras under /usr/local föreslår jag att allt som har med MySQL installeras under /home/mysql. Vi kommer se att detta gör att installationen blir mycket enklare .

2. Ladda hem

Först laddar du hem MySQL från  www.mysql.com . Jag förutsätter att du laddar hem binärpaket Binary packages (tar.gz) och inte rpm-paket RedHat packages (.rpm). Du ska välja det paket som är kompilerat för Linux med den processor du använder, oftast Intel x86. I mitt fall hette filen jag laddade ner mysql-5.0.45-linux-i686-icc-glibc23.tar.gz men jag kommer i fortsättningen skriva mysql-VERSON-OS.tar.gz så att du inte råkar skriva mitt filnamn av misstag.

3. Installera

Vi gör följande:

  1. Först ska du placera den nedladdade tar-filen i användaren mysqls hemkatalog.
  2. Sedan måste du "bli" mysql med kommandot "su".
  3. Sen packar vi upp binärfilerna.
  4. Nästa steg är att skapa en mjuk länk till installationen.
  5. Sist kör vi installationsscriptet.
Utför följande:
[olle@dev1]$ su - mysql
[mysql@dev1]$ tar xvzf mysql-VERSION-OS.tar.gz
[mysql@dev1]$ ln -s mysql-VERSION-OS mysql
[mysql@dev1]$ mysql/scripts/mysql_install_db

4. Starta MySQLserver

MySQL är en Client/Server-applikation. Därför måste mysqld köra i bakgrunden för att det ska gå att koppla upp sig mot MySQL. Som vanligt gäller att du ska vara användaren "mysql" när du startar MySQL:
[mysql@dev1]$ bin/mysqld_safe &
mysqld_safe är ett program som i sin tur kör mysqld. mysqld_safe är lite smartare, men det går att köra mysqld direkt.

5. Ändra rootlösenord

Det är viktigt att du byter lösenord på MySQLs rootanvändare så att inte vem som helst kan logga in och kasta dina tabeller. Du måste byta lösenord både på lokal inloggning och för inloggning från internet. Först tar vi reda på vad din dator heter:
[mysql@dev1]$ echo $HOSTNAME
DIN_DATORS_NAMN
Detta namn används sedan i näst sista raden..
[mysql@dev1]$ cd /home/mysql
[mysql@dev1]$ bin/mysqladmin -u root -p password nytt_rootlösenord
password: (gammalt password= inget i detta fall)	
[mysql@dev1]$ bin/mysqladmin -u root -h DIN_DATORS_NAMN -p password nytt_rootlösenord
password: (gammalt password= inget i detta fall)
OBS: I Debian Linux finns ingen internetinloggning för root i defaultinstallationen, så endast första ändringen behöver utföras.

6. Stoppa MySQLserver

När du vill stoppa serverdemonen skriver du på följande sätt:
[mysql@dev1]$ bin/mysqladmin -u root -pROOTLÖSENORD shutdown
Där ROOTLÖSENORD är lösenordet till rootanvändaren i MySQL.

7. Starta MySQLserver vid uppstart

Det kan vara smidigt att MySQLservern startar automatiskt vid uppstart av datorn. För att fixa det kopierar vi först startscriptet till /etc/init.d/. Nästa steg är att ändra rättigheterna på startscriptet så att det blir ett körbart script. Sedan lägger vi in en länk till scriptet i /etc/rc3.d/ som börjar på S. Alla körbara filer som börjar på S i /etc/rc3.d/ kommer att anropas med attributet start vid uppstart. Detta fungerar på en RedHatdator, jag vet inte hur det går till i andra distributioner.
[mysql@dev1]$ su -
[root@dev1]# cp /home/mysql/mysql/support-files/mysql.server /etc/init.d/
[root@dev1]# chmod 755 /etc/init.d/mysql.server
[root@dev1]# ln -s /etc/init.d/mysql.server /etc/rc3.d/Smysql 
[root@dev1]# exit

8. Koppla upp dig mot MySQLserver

Nu kan du testa MySQL. Du behöver inte vara root längre, och det ska man aldrig vara i onödan. Däremot är MySQLanvändaren root (inte samma som Linuxanvändaren root) den enda användare som finns i MySQL för tillfället. Därför loggar vi in i MySQL som root.
[mysql@dev1]$ mysql/bin/mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.45 MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> 
Klart!