Come installare MySQL su Ubuntu 16.04
introduzione
Stack LAMP (Linux, Apache, MySQL, PHP/Python/Perl). Utilizza un database relazionale e SQL (Structured Query Language) per gestire i propri dati.
La versione breve dell'installazione è semplice: aggiorna l'indice del tuo pacchetto, installa il pacchetto mysql-server
, quindi esegui lo script di sicurezza incluso.
- sudo apt-get update
- sudo apt-get install mysql-server
- mysql_secure_installation
Questo tutorial spiegherà come installare MySQL versione 5.7 su un server Ubuntu 16.04. Tuttavia, se stai cercando di aggiornare un'installazione MySQL esistente alla versione 5.7, puoi invece leggere questa guida all'aggiornamento di MySQL 5.7.
Prerequisiti
Per seguire questo tutorial, avrai bisogno di:
- Un server Ubuntu 16.04 configurato seguendo questa guida alla configurazione iniziale del server, incluso un utente sudo non root e un firewall.
Passaggio 1: installazione di MySQL
Su Ubuntu 16.04, solo l'ultima versione di MySQL è inclusa nel repository dei pacchetti APT per impostazione predefinita. Al momento della scrittura, questo è MySQL 5.7
Per installarlo, aggiorna semplicemente l'indice del pacchetto sul tuo server e installa il pacchetto predefinito con apt-get
.
- sudo apt-get update
- sudo apt-get install mysql-server
Ti verrà richiesto di creare una password di root durante l'installazione. Scegline uno sicuro e assicurati di ricordarlo, perché ti servirà in seguito. Successivamente, finiremo di configurare MySQL.
Passaggio 2: configurazione di MySQL
Per nuove installazioni, ti consigliamo di eseguire lo script di sicurezza incluso. Ciò modifica alcune delle opzioni predefinite meno sicure per cose come accessi root remoti e utenti di esempio. Nelle versioni precedenti di MySQL era necessario inizializzare manualmente anche la directory dei dati, ma ora questo viene fatto automaticamente.
Eseguire lo script di sicurezza.
- mysql_secure_installation
Questo ti chiederà la password di root che hai creato nel passaggio 1. Puoi premere Y
e poi ENTER
per accettare i valori predefiniti per tutte le domande successive, ad eccezione del uno che ti chiede se vuoi cambiare la password di root. L'hai appena impostato nel passaggio 1, quindi non devi cambiarlo ora. Per una panoramica più dettagliata di queste opzioni, puoi vedere questo passaggio del tutorial di installazione di LAMP.
Per inizializzare la directory dei dati MySQL, dovresti usare mysql_install_db
per le versioni precedenti alla 5.7.6, e mysqld --initialize
per la 5.7.6 e successive. Tuttavia, se hai installato MySQL dalla distribuzione Debian, come nel passaggio 1, la directory dei dati è stata inizializzata automaticamente; non devi fare niente. Se provi comunque a eseguire il comando, vedrai il seguente errore:
2016-03-07T20:11:15.998193Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
Infine, testiamo l'installazione di MySQL.
Passaggio 3: test di MySQL
Indipendentemente da come lo hai installato, MySQL avrebbe dovuto iniziare a funzionare automaticamente. Per verificarlo, controlla il suo stato.
- systemctl status mysql.service
Vedrai un output simile al seguente:
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago
Main PID: 3754 (mysqld)
Tasks: 28
Memory: 142.3M
CPU: 1.994s
CGroup: /system.slice/mysql.service
└─3754 /usr/sbin/mysqld
Se MySQL non è in esecuzione, puoi avviarlo con sudo systemctl start mysql
.
Per un ulteriore controllo, puoi provare a connetterti al database utilizzando lo strumento mysqladmin
, che è un client che ti consente di eseguire comandi amministrativi. Ad esempio, questo comando dice di connettersi a MySQL come root (-u root
), richiedere una password (-p
) e restituire la versione.
- mysqladmin -p -u root version
Dovresti vedere un output simile a questo:
mysqladmin Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 5.7.16-0ubuntu0.16.04.1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 30 min 54 sec
Threads: 1 Questions: 12 Slow queries: 0 Opens: 115 Flush tables: 1 Open tables: 34 Queries per second avg: 0.006
Ciò significa che MySQL è attivo e funzionante.
Conclusione
Ora hai una configurazione MySQL di base installata sul tuo server. Ecco alcuni esempi dei passaggi successivi che puoi eseguire:
- Implementa alcune misure di sicurezza aggiuntive
- Riposiziona la directory dei dati
- Gestisci i tuoi server MySQL con SaltStack
- Ulteriori informazioni sui comandi MySQL