MySQL er et kraftfuldt Relational Database Management System med åben kildekode eller kort sagt RDBMS . Den blev udgivet tilbage i 1995 (20 år gammel). Den bruger Structured Query Language som nok er det mest populære valg til at administrere indhold i en database. Den seneste MySQL-version er 5.6.25 og blev udgivet den 29. maj 2015 .
Et interessant faktum om MySQL er, at navnet kommer fra Michael Widenius's (MySQL’s skaber) datter Min. Selv Selvom der er masser af interessante fakta om MySQL, er denne artikel beregnet til at vise dig nogle nyttige fremgangsmåder til at hjælpe dig med at administrere din MySQL-server.
I april 2009 MySQL-projektet blev købt af Oracle. Som et resultat heraf en MySQL-fællesskabsgaffel kaldet MariaDB var lavet. Hovedårsagen til at skabe gaffelen var at holde projektet frit under General Public License.
I dag MySQL og MariaDB er en af de mest (hvis ikke den mest) hyppigt anvendte RDBMS, der bruges til webapplikationer såsom WordPress , Joomla , Magento og andre.
Denne artikel vil vise dig nogle grundlæggende, men nyttige tips til, hvordan du optimerer finjusteringen af MySQL/MariaDBs ydeevne. Husk, at denne artikel antager, at du allerede har MySQL eller MariaDB installeret. Hvis du stadig spekulerer på, hvordan du installerer dem på dit system, kan du følge vores omfattende guider her:
- Installation af LAMP på RHEL/CentOS 7
- Installation af LAMP på Fedora 22
- Opsætning af LAMP på Ubuntu 15.04
- Installation af MariaDB på Debian 8
- Installer MariaDB på Gentoo Linux
- Installer MariaDB på Arch Linux
Vigtigt :Inden vi starter – accepter ikke dette forslag blindt. Hver MySQL-opsætning er unik og kræver yderligere eftertanke, før du foretager ændringer.
Ting du skal vide:
- MySQL/MariaDB-konfigurationsfilen er placeret i
/etc/my.cnf
. Hver gang du ændrer denne fil, skal du genstarte MySQL-tjenesten, så de nye ændringer kan træde i kraft. - Til at skrive denne artikel MySQL version 5.6 er blevet brugt som skabelon.
1. Aktiver InnoDB fil-pr-tabel
Først er det vigtigt at forklare det InnoDB er en lagermotor. MySQL og MariaDB bruger InnoDB som standardlagringsmotor. Tidligere brugte MySQL til at opbevare databasetabeller og indekser i et systemtablespace. Denne tilgang var beregnet til servere, hvis eneste formål er databasebehandling, og deres lagerdisk bruges ikke til andre formål.
InnoDB giver en mere fleksibel tilgang, og hver databaseinformation opbevares i en .ibd
datafil. Hver .ibd fil repræsenterer sit eget tablespace. På den måde databaseoperationer såsom "TRUNCATE ” kan fuldføres hurtigere, og du kan også genvinde ubrugt plads, når du dropper eller trunkerer en databasetabel.
En anden fordel ved denne konfiguration er, at du kan opbevare nogle af databasetabellerne på en separat lagerenhed. Dette kan i høj grad forbedre I/O indlæs på dine diske.
innodb_file_per_table er aktiveret som standard i MySQL 5.6 og nyere. Du kan se det i /etc/my.cnf fil. Direktivet ser således ud:
innodb_file_per_table=1
2. Gem MySQL-databasedata på separat partition
Bemærk :Denne opsætning virker kun med MySQL, men ikke med MariaDB.
Nogle gange kan OS læse/skrive sænke ydeevnen af din MySQL-server, især hvis den er placeret på samme harddisk. I stedet vil jeg anbefale at bruge separat harddisk (helst SSD) til MySQL-tjenesten.
For at fuldføre dette skal du tilslutte det nye drev til din computer/server. I forbindelse med denne artikel vil jeg antage, at drevet vil være under /dev/sdb .
Det næste trin er at forberede det nye drev:
# fdisk /dev/sdb
Tryk nu på "n ” for at oprette en ny partition. Tryk derefter på "p ” for at gøre den nye partition til primær. Indstil derefter partitionsnummeret fra 1-4 . Derefter vælger du partitionsstørrelsen. Tryk på enter her. På næste trin skal du konfigurere størrelsen på partitionen.
Hvis du ønsker at bruge hele disken, tryk enter en gang til. Ellers kan du manuelt indstille størrelsen på den nye partition. Når du er klar, tryk på "w ” for at skrive ændringerne. Nu bliver vi nødt til at oprette et filsystem til vores nye partition. Dette kan nemt gøres med:
# mkfs.ext4 /dev/sdb1
Nu vil vi montere vores nye partition i en mappe. Jeg har navngivet min mappe "ssd ” og oprettet i rodmappen:
# mkdir /ssd/
Vi er klar til at montere den nye partition, vi lige har lavet i den nye mappe:
# mount /dev/sdb1 /ssd/
Du kan udføre monteringen ved opstart ved at tilføje følgende linje i /etc/fstab fil.
/dev/sdb1 /ssd ext3 defaults 0 0
Nu er du klar til at flytte MySQL til den nye disk. Stop først MySQL-tjenesten med:
# service mysqld stop
Jeg vil anbefale dig også at stoppe Apache/nginx for at forhindre forsøg på at skrive i databaserne:
# service httpd stop # service nginx stop
Kopier nu hele MySQL-biblioteket i det nye drev:
# cp /var/lib/mysql /ssd/ -Rp
Dette kan tage et stykke tid afhængigt af webstedet for dine MySQL-databaser. Når denne proces er færdig, omdøb MySQL-biblioteket:
# mv /var/lib/mysql /var/lib/mysql-backup
Dernæst vil vi oprette et symbollink.
# ln -s /ssd/mysql /var/lib/mysql
Nu er du klar til at starte din MySQL og webservice:
# service mysqld start # service httpd start # service nginx start
På dette tidspunkt vil dine MySQL-databaser blive tilgået fra det nye drev.
Sider:1 2 3 4