И снова о создании сайтов на “голой” машине

Под голой машиной понимается сервер с операционной системой (в данном случае Ubuntu 18.04.4 LTS) без какой-либо веб-панели управления (без ISPManager, cpanel, VestaCP etc).

Устанавливаем только веб-сервер nginx без Апача (именно так и устанавливается при инсталляции Ubuntu по умолчанию).

Устанавливаем php-fpm  по инструкции (в файле конфиге виртуального хоста nginx скорее всего потребуется откорректировать путь к юникс-сокету, у меня он такой fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; )

Создаем базу данных (инсталлируем mysql и создаем базу с придуманным нами именем)

Создаем пользователя и даем ему привилегии доступа к данной базе (параметр WITH GRANT OPTION, как я понял, может быть не нужен в зависимости от версии mysql, у меня он оказался не нужен)

Устанавливаем какую-нибудь CMS, например WordPress. (Для WP есть доп. инструкция)

Всё работает!

MySQL: Как создать пользователя в MySQL

Небольшой пост о том, как создавать из командной строки mysql новую базу данных и нового пользователя mysql с полными правами на только что созданную базу.

mysql -uroot -p
enter_mysql_root_pass
CREATE DATABASE DB_NAME;
GRANT ALL PRIVILEGES ON DB_NAME.* TO ‘my_user’@’localhost’
IDENTIFIED BY ‘my_password’ WITH GRANT OPTION;

Для того чтобы выставить новому пользователю полные права на все базы данных используем следующую команду:

GRANT ALL PRIVILEGES ON *.* TO ‘my_user’@’localhost’
IDENTIFIED BY ‘my_password’ WITH GRANT OPTION;

Доступ к базе для данного пользователя возможен только с localhost.