sql >> Database teknologi >  >> RDS >> Mysql

Installer Apache, MySQL 8 eller MariaDB 10 og PHP 7 på CentOS 7

Denne vejledning forklarer, hvordan du installerer den seneste version af Apache , MySQL 8 eller MariaDB 10 og PHP 7 sammen med de nødvendige PHP-moduler på RHEL / CentOS 7/6 og Fedora 24-29 .

Denne kombination af operativsystemet (Linux ) med webserveren (Apache ), databaseserver (MariaDB/MySQL ) og scriptsprog på serversiden (PHP ) er kendt som LAMPEN stak.

Don' t Miss: Sådan installeres Nginx 1.15, MariaDB 10 og PHP 7 på CentOS 7

Siden september 2015, PHP 5.4 understøttes ikke længere af PHP-teamet, og det er nået til end-of-life, stadig, PHP 5.4 sendes med RHEL/CentOS 7/6 med mindre versionsændringer og Red Hat understøtter det, så opgradering til en højere version er ikke påkrævet. Det anbefales dog stærkt at opgradere din PHP 5.4 til PHP 5.5+ for større sikkerhed og ydeevne.

Her er, hvad din nuværende Linux-distribution leveres med:

Nuværende PHP-version RHEL/CentOS 7 RHEL/CentOS 6
7.3 5.4 5.3

For at gøre dette aktiverer vi EPEL og Remi repository og brug yum og dnf (det nye pakkehåndteringsværktøj tilgængeligt i Fedora).

Trin 1:Installation af EPEL og Remi Repository

EPEL (Ekstra pakker til Enterprise Linux ) er et fællesskabsbaseret lager, der tilbyder tilføjelsessoftwarepakker til RHEL-baserede Linux-distributioner.

Remi er et lager, hvor du kan finde de nyeste versioner af PHP stak (fuld funktioner) til installation i Fedora og Enterprise Linux-distributionerne.

På RHEL/CentOS 7

# yum update &&yum install epel-release# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm------ Kun til RHEL 7 ------# subscription-manager repos --enable=rhel-7-server-optional-rpms

På RHEL/CentOS 6

# yum update &&yum install epel-release# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm------ Kun til RHEL 6 ------# subscription-manager repos --enable=rhel-6-server-optional-rpms

På Fedora 24-29

# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-29.rpm [På Fedora 29 ]# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-28.rpm [På Fedora 28 ]# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-27.rpm [På Fedora 27 ]# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-26.rpm [På Fedora 26 ]# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-25.rpm [På Fedora 25 ]# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-24.rpm [På Fedora 24 ]

Trin 2:Installation af Apache Web Server

Apache er en gratis og open source HTTP-webserver, der kører på de fleste UNIX-baserede operativsystemer såvel som på Windows. Som sådan kan den bruges til at betjene statiske websider og håndtere dynamisk indhold. Nylige rapporter viser, at Apache er den bedste server, der bruges på websteder og computere, der vender mod internettet.

For at installere Apache webserver, skal du først opdatere systemsoftwarepakkerne og installere den ved hjælp af følgende kommandoer.

# yum -y update# yum install httpd

En gang Apache webserver installeret, kan du starte aktivere den til automatisk at starte ved systemstart.

# systemctl start httpd# systemctl aktiver httpd# systemctl status httpd

Hvis du kører firewalld , sørg for at tillade Apache-trafik på firewallen.

# firewall-cmd --zone=public --permanent --add-service=http# firewall-cmd --zone=public --permanent --add-service=https# firewall-cmd --genindlæs 

Trin 3:Installation af PHP ved hjælp af Remi Repository

PHP (Hypertekst-forbehandler ) er et gratis og open source scriptsprog på serversiden, der er bedst egnet til webudvikling. Det kan bruges til at producere dynamiske websider til et websted og findes oftest på *nix-servere. En af fordelene ved PHP er, at det nemt kan udvides ved brug af en lang række moduler.

For at installere PHP , først skal du aktivere Remi repository ved at installere yum-utils , en samling nyttige programmer til styring af yum-lagre og pakker.

# yum installer yum-utils

Når den er installeret, kan du bruge yum-config-manager leveret af yum-utils for at aktivere Remi-lageret som standardlageret til installation af forskellige PHP-versioner som vist.

For eksempel for at installere PHP 7.x version, brug følgende kommando.

------------- På CentOS &RHEL -------------- # yum-config-manager --enable remi-php70 &&yum install php [Installer PHP 7.0 ]# yum-config-manager --enable remi-php71 &&yum install php [Installer PHP 7.1 ]# yum-config-manager --enable remi-php72 &&yum install php [Installer PHP 7.2 ]# yum-config-manager --enable remi-php73 &&yum install php [Installer PHP 7.3 ]------------- Om Fedora -------------- # dnf --enablerepo=remi installer php70 [Installer PHP 7.0 ]# dnf --enablerepo=remi installer php71 [Installer PHP 7.1 ]# dnf --enablerepo=remi installer php72 [Installer PHP 7.2 ]# dnf --enablerepo=remi installer php73 [Installer PHP 7.3 ]

Dernæst skal vi installere alle disse følgende PHP-moduler i denne artikel. Du kan søge efter flere PHP-relaterede moduler (måske for at integrere en specifik funktionalitet, som dine webapplikationer har brug for) med følgende kommando:

------ RHEL/CentOS 7/6 ------# yum søg alle php ------ Fedora ------# dnf søg i alle php 

Uanset distributionen returnerer ovenstående kommandoer listen over pakker i de aktuelt aktiverede depoter, der indeholder ordet php i pakkenavnet og/eller beskrivelsen.

Her er de pakker, vi vil installere. Husk at MySQL stik (PHP, Perl, Python, Java osv.) vil fungere uændret med MariaDB da begge systemer bruger den samme klientprotokol, og klientbibliotekerne er binært kompatible.

  1. MariaDB/MySQL (php-mysql) – et dynamisk delt objekt, der tilføjer MariaDB-understøttelse til PHP.
  2. PostgreSQL (php-pgsql) – PostgreSQL-databaseunderstøttelse til PHP.
  3. MongoDB (php-pecl-mongo) – En grænseflade til kommunikation med MongoDB-databasen i PHP.
  4. Generisk (php-pdo) – Et dynamisk delt objekt, der tilføjer et abstraktionslag for databaseadgang til PHP.
  5. Memcache (php-pecl-memcache) – Memcached er en caching-dæmon designet specielt til dynamiske webapplikationer for at reducere databasebelastningen ved at gemme objekter i hukommelsen.
  6. Memcached (php-pecl-memcached) – En udvidelse, der bruger libmemcached-biblioteket til at levere API til kommunikation med memcached-servere.
  7. GD (php-gd) – Et dynamisk deleobjekt, der tilføjer understøttelse af brug af gd-grafikbiblioteket til PHP.
  8. XML (php-xml) – Et dynamisk delt objekt, der tilføjer understøttelse til PHP til at manipulere XML-dokumenter.
  9. MBString (php-mbstring) – En udvidelse til at håndtere multi-byte streng i PHP-applikationer.
  10. MCrypt (php-mcrypt) – Et Mcrypt-bibliotek til PHP-scripts.
  11. APC (php-pecl-apcu) – APC-modul, der bruges til at optimere og cache PHP-kode.
  12. CLI (php-cli) – Kommandolinjegrænseflade til PHP.
  13. PEAR (php-pear) – Application Repository framework for PHP.

Installer disse følgende nødvendige PHP-moduler med kommandoen nedenfor.

------ På RHEL/CentOS 7/6 ------# yum --enablerepo=remi installer php-mysqlnd php-pgsql php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pear------ Om Fedora ------# dnf --enablerepo=remi installer php-mysqlnd php-pgsql php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pear

Trin 4:Installation af MySQL- eller MariaDB-database

I dette afsnit vil vi vise dig installationen af ​​begge databaser MySQL og MariaDB , så det er op til dig, hvad du skal vælge baseret på dine krav.

Installation af MySQL 8-databaseserver

MySQL er et af verdens mest populære open source relationelle databasestyringssystemer (RDBMS), der kører enhver server ved at give flere brugeradgang til flere databaser. MySQL kører med Apache.

For at installere seneste MySQL 8.0 version, vil vi installere og aktivere officiel MySQL Yum softwarelager ved hjælp af følgende kommandoer.

# rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm [På RHEL/CentOS 7 ]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm [På RHEL/CentOS 6 ]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc29-1.noarch.rpm [På Fedora 29 ]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc28-1.noarch.rpm [På Fedora 29 ]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc27-1.noarch.rpm [På Fedora 29 ]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc26-1.noarch.rpm [På Fedora 29 ]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc25-1.noarch.rpm [På Fedora 29 ]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc24-1.noarch.rpm [På Fedora 29 ]

Efter installation af MySQL Yum softwarelager til din Linux-platform, skal du nu installere den seneste version af MySQL (i øjeblikket 8.0 ) ved hjælp af følgende kommando.

# yum installer mysql-community-server [på RHEL/CentOS ]# dnf installer mysql-community-server [På Fedora ]

Efter vellykket installation af MySQL er det tid til at starte MySQL-serveren med følgende kommando.

# tjeneste mysqld start

Se vores artikel om, hvordan du sikrer MySQL 8-databaseinstallation.

Installation af MariaDB 10-databaseserver

MariaDB er en forgrening af det velkendte MySQL, et af verdens mest populære Relational Database Management System (RDBMS). Det er fuldstændig udviklet af fællesskabet, og som sådan er det beregnet til at forblive FOSS og kompatibelt med GPL.

Hvis du er eller har været en MySQL-bruger, vil migrering til MariaDB være en meget ligetil proces:de populære kommandoer til at oprette forbindelse til, sikkerhedskopiere og gendanne og administrere databaser er identiske i begge RDBMS'er.

I seneste RHEL/CentOS 7 distribution, MariaDB er en drop-in erstatning for MySQL og i RHEL/CentOS 6 MySQL forbliver det samme, og du har ikke tilladelse til at installere MariaDB på RHEL/CentOS 6 fra standardlageret, men du kan installere MariaDB ved hjælp af det officielle MariaDB-lager.

For at aktivere MariaDB-lageret på RHEL/CentOS 7 distributioner, skal du oprette en fil med navnet /etc/yum.repos.d/mariadb.repo med følgende indhold:

[mariadb]navn =MariaDBbaseurl =http://yum.mariadb.org/10.1/centos7-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1

Bemærk :Som jeg sagde ovenfor, kan du også installere MariaDB på RHEL/CentOS 6 ved at bruge det officielle MariaDB-lager som angivet ovenfor.

Efter at have aktiveret MariaDB-lageret, skal du gøre:

------ På RHEL/CentOS 7 ------# yum --enablerepo=remi installer httpd MariaDB-client MariaDB-server------ På Fedora ------# dnf --enablerepo=remi installer httpd MariaDB-klient MariaDB-server

Trin 5:Aktiver/start Apache og MySQL/MariaDB

På SystemD

------ Aktiver Apache og MariaDB ved opstart ------# systemctl aktiver httpd# systemctl aktiver mariadb------ Start Apache og MariaDB ------# systemctl start httpd# systemctl start mariadb

På SysVinit

------ Aktiver Apache og MySQL ved opstart ------# chkconfig --levels 235 httpd on# chkconfig --levels 235 mysqld on------ Start Apache og MySQL ------# /etc/init.d/httpd start# /etc/init.d/mysqld start

Trin 6:Bekræftelse af PHP-installation

Lad os holde fast i den klassiske måde at teste PHP på. Opret en fil kaldet test.php under /var/www/html og tilføj følgende kodelinjer til det.

phpinfo() funktionen viser en masse information om den aktuelle PHP-installation:

Peg nu din webbrowser til http://[server]/test.php og kontroller tilstedeværelsen af ​​de installerede moduler og yderligere software ved at rulle ned på siden (erstat [server] med dit domæne eller IP-adressen på din server). Dit output skal ligne:

Tillykke! Du har nu en seneste fungerende installation af en LAMPE stak. Hvis noget ikke gik som forventet, er du velkommen til at kontakte os ved at bruge formularen nedenfor. Spørgsmål og forslag er også velkomne.

Bemærk :du kan også installere MariaDB i andre distributioner ved at oprette et brugerdefineret lager ved at følge instruktionerne her.


  1. Rekursive kategorier med en enkelt forespørgsel?

  2. Opret en database i SQLite

  3. Hvordan vælger jeg de sidste 5 rækker i en tabel uden at sortere?

  4. Sådan rettes "COMMIT TRANSACTION-anmodningen har ingen tilsvarende BEGIN TRANSACTION" i SQL Server