Forberedelser
Trinn 1: Installer MariaDB
Trinn 2: Aktiver MariaDB for å starte ved systemoppstart
Trinn 3: Start MariaDB
Trinn 4: Ytelsesjustering (valgfritt)
Trinn 5: Sikre installasjonen
Trinn 6: Endre MariaDB-kontaktplassering
Trinn 7: Start MariaDB manuelt
Trinn 8: Test MariaDB
Trinn 9: Lag myke lenker
Konklusjon
I denne artikkelen vil jeg vise deg hvordan du installerer MariaDB på OpenBSD 6 og konfigurerer den til å være tilgjengelig for en chrooted webserver (Apache eller Nginx). Du vil også lære hvordan du gjør MariaDB tilgjengelig for applikasjoner som ikke er rotet.
Merk: Alle kommandoer i denne opplæringen må utføres med root-privilegium i et kommandolinjevindu.
Trinn ble testet på OpenBSD 6.1 AMD64-installasjon.
Forberedelser
Sørg for at miljøvariabelen PKG_PATHer konfigurert.
echo $PKG_PATH
Hvis den er tom, konfigurer den med følgende kommando:
export PKG_PATH=http://ftp3.usa.OpenBSD.org/pub/OpenBSD/$(uname -r)/packages/$(uname -m)/
Trinn 1: Installer MariaDB
pkg_add -v mariadb-server
Trinn 2: Aktiver MariaDB for å starte ved systemoppstart
rcctl enable mysqld
Trinn 3: Start MariaDB
/usr/local/bin/mysql_install_db
Hvis din MariaDB forventes å betjene en stor mengde trafikk, legg til følgende linjer i filen /etc/login.conf:
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
Kjør følgende kommando for å generere det binære formatet til login.conffilen.
cap_mkdb /etc/login.conf
Trinn 5: Sikre installasjonen
Kjør den sikre installasjonskommandoen for å gjøre MariaDB enda vanskeligere å kompromittere.
/usr/local/bin/mysql_secure_installation
Svar på spørsmål når du blir bedt om å angi root-passordet, fjern testdatabasen og deaktiver ekstern rotpålogging. Det opprinnelige passordet for root er tomt.
Trinn 6: Endre MariaDB-kontaktplassering
Endre MariaDB-kontaktplasseringen slik at den er tilgjengelig fra et chrooted miljø.
Standard httpdi base eller nginxi port er chrooted til /var/www, så la oss sette socket i /var/www/var/run/mysql/mysql.sock, slik at det ser ut til å være /var/run/mysql/mysql.sockfor chrooted webserveren.
Lag katalogen:
install -d -m 0711 -o _mysql -g _mysql /var/www/var/run/mysql
Rediger /etc/my.cnf. I både [client]seksjonen og [mysqld]seksjonen endrer du linjen som lyder:
socket = /var/run/mysql/mysql.sock
Til:
socket = /var/www/var/run/mysql/mysql.sock
Trinn 7: Start MariaDB manuelt
rcctl start mysqld
Trinn 8: Test MariaDB
Test nå MariaDB ved å kjøre følgende kommando.
mysql -uroot -p
Sjekk om du kan logge på med passordet du anga i forrige trinn.
Trinn 9: Lag myke lenker
Vi må lage myke lenker for mysqlmappen for å gjøre MariaDB tilgjengelig for applikasjoner som ikke er rotet. Etter å ha byttet mysql.socktil /var/www/var/run/mysqlkatalogen, kan det hende at enkelte ikke-rootede applikasjoner ikke kan finne den. Hvis det er tilfelle, kan vi løse det ved å lage en myk lenke til /var/www/var/run/mysqlkatalogen i /var/run/(standardplasseringen mysql.sock).
ln -s /var/www/var/run/mysql /var/run/
Nå for å gjøre denne endringen permanent. Når OpenBSD starter, sletter den alt under /var/runkatalogen, så vi må gjenopprette den myke lenken ved hver omstart. Vi kan gjøre dette ved å legge kommandoen fra trinn 9 i en fil som heter /etc/rc.local. Denne filen vil bli utført av oppstartsskriptet på slutten av oppstartsprosessen. Den /etc/rc.localfilen eksisterer ikke som standard. Du kan lage en ved å kopiere fra eksempelfilen som ble levert med OpenBSD, og legge til den myke lenken til den.
cp /etc/examples/rc.local /etc/
echo "ln -s /var/www/var/run/mysql /var/run/" >> /etc/rc.local
Konklusjon
Det er det. MariaDB-serveren din er nå klar.
En annen merknad angående MariaDB er max_allowed_packetinnstillingen i /etc/my.cnf. Standardverdien er 1Mfor [mysqld]seksjon. Hvis du støter på problemer når du importerer en dumpfil fra en annen server, kan du prøve å øke den til 16Meller 64M, og deretter starte MariaDB på nytt.