Содержание

Настройка MySQL на отдельном сервере с локальной сетью VPS — Раздел помощи

Внутри локальной сети на VPS — можно вынести базу данных MySQL на отдельный сервер. При таком варианте работы, сервер обрабатывает запросы MySQL через частное подключение.

Распределение ресурсов между виртуальными машинами может понадобиться, если база данных использует значительное количество ресурсов сервера. При использовании отдельного сервера для базы данных, появляется возможность выделить практически все ресурсы для работы базы данных без ущерба работы остальных сервисов.

Рассмотрим ниже конкретный пример, будем устанавливать подключение для CMS WordPress в Ubuntu 20.04

  • Подготовительный этап
  • Установка и настройка MySQL сервера
  • Установка CMS WordPress

Подготовительный этап:

В первую очередь необходимо:

  1. Перейти в панель управления SpaceWeb и заказать две виртуальные машины. Для удобства назовем их как VPS_MYSQL (на нем будет располагаться база данных) и VPS_WP (на нем будет располагаться сайт)
  2. На VPS_WP устанавливаем образ Ubuntu 20. 04 и связку LEMP(NGINX, MySQL и PHP). Для VPS_MYSQL — Ubuntu 20.04
  3. Подключить VPS_MYSQL и VPS_WP к локальной сети по инструкции

Установка и настройка MySQL сервера:

  1. Подключитесь с помощью ssh к VPS_MYSQL
  2. Выполните установку MySQL сервера:

sudo apt-get update

sudo apt-get install mysql-server

  1. Установите root пароль к MySQL. Для этого нужно подключиться к MySQL серверу и выполнить команду:

mysql -u root

  1. Выполнить команду для смены пароля, где PASSWORD ваш выбранный пароль:

mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘PASSWORD’;

  1. Далее нужно применить изменения:

mysql> FLUSH PRIVILEGES;

  1. Откройте конфигурационный файл MySQL:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

В конфигурационном файле найдите секцию [mysqld] и поменяйте значения переменных bind-address и mysqlx-bind-address. Вместо 127.0.0.1 укажите IP-адрес VPS_MYSQL внутренней сети.

  1. Сохраните изменения в файле и выполните перезапуск MySQL-сервера:

sudo systemctl restart mysql

  1. Подключитесь к MySQL:

mysql -u root -p

В случае успешного подключения вы увидите приглашение в терминале для ввода команды.

  1. Создайте базу данных:

CREATE DATABASE local_test;

  1. Создайте пользователей для локального подключения к базе данных:

CREATE USER ‘localuser’@’localhost’ IDENTIFIED BY ‘password’;

где localuser логин и password пароль

  1. Задайте права на изменения в базе данных:

GRANT ALL PRIVILEGES ON local_test.* TO ‘localuser’@’localhost’;

  1. Создайте пользователя для удалённого подключения. В качестве хоста нужно указать локальный IP, присвоенный VPS_WP.

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

CREATE USER ‘dediuser’@’10.0.0.22’ IDENTIFIED BY ‘password’;

  • где dediuser логин для удаленного подключения password пароль и 10.0.0.22 IP-адрес с которого будет производиться подключение к БД
  1. Этому пользователю также нужно задать права:

GRANT ALL PRIVILEGES ON local_test.* TO ‘dediuser’@’10.0.0.22’;

  1. Чтобы применить изменения выпоните команду:

FLUSH PRIVILEGES;

Теперь можно выйти, выпонив в консоли exit

Протестируем подключение к локальной базе данных:

mysql -u localuser -p

Если подключение было выполнено без ошибок можно выйти: exit

  1. Протестируем подключение удаленной базе данных. Перейдите на VPS_WP и подключитесь к базе данных на VPS_MYSQL:

mysql -u dediuser -h 10.

16.0.3 -p

после ключа -h укажите адрес машины VPS_MYSQL 10.0.0.20

Если подключение завершается ошибкой:

ERROR 1130 (HY000): Host ‘10.0.0.20’ is not allowed to connect to this MySQL server

Вероятнее всего на VPS_MYSQL не был перезапущен сервер MySQL

Установка CMS WordPress:

  1. Подключитесь к VPS_WP скачайте пакет установки WordPress с официального сайта:

wget https://wordpress.org/latest.tar.gz

  1. Распакуйте загруженый архив:

tar xzvf latest.tar.gz

  1. Сделайте копию файла конфигурации CMS и переименуйте, чтобы WordPress смог корректно работать:

cp wordpress/wp-config-sample.php wordpress/wp-config.php

  1. Откройте файл wp-config.php и укажите данные для подключения к БД:

nano wordpress/wp-config.php

Нужно изменить значение переменных:

  • DB_NAME — имя БД;
  • DB_USER — имя пользователя базы данных для удалённого подключения к ней;
  • DB_PASSWORD — пароль от базы;
  • DB_HOST — локальный IP VPS_MYSQL;

Выполните сохранение файла и закройте его

  1. Скопируйте папку CMS WordPress в корневую папку nginx:

sudo cp -a wordpress/* /var/www/html

  1. Для корректной обработки данных nginx, измените владельца на www-data:

sudo chown -R www-data:www-data /var/www/html

  1. Откройте файл /etc/nginx/sites-enabled/default и добавьте для обработки index. php в строку под комментарием:

# Add index.php to the list if you are using PHP
index index.php index.html index.htm index.nginx-debian.html;

  1. Перезагрузите nginx:

systemctl restart nginx

  1. Перейдите в браузер в адресной строке, обратитесь к установочному файлу http://внешний-ip-адрес-VPS_WP/wp-admin/install.php. Должна открыться страница установки WordPress.
  2. Выберите язык, далее «Продолжить», заполните необходимые данные в форме. Скопируйте пароль от панели админитрирования сайтом.

Проект полностью развернут.

Подключение PHPStorm к удаленной базе данных

  • IDE
  • PhpStorm

Уже долгое время мне мозолила глаз вкладка «Database» в правом верхнем углу PHPStorm. Решил с ней разобраться в конце концов и подключить базу данных разрабатываемого сайта к проекту. Оказалось все не так сложно и, в результате, очень удобно.

Настройки базы данных

Первым делом надо разрешить удаленный доступ к БД в панели управления хостингом, я подключал timeweb, там это делается во вкладке «Базы данных MySQL». Справа от подключаемой базы есть кнопка «Добавить доступ», нажимаем ее и вводим IP с которого хотим подключаться к БД. Если IP у вас динамический, то его придется менять каждый раз. После введения IP он появится чуть выше кнопки. Для надежности я изменил к нему пароль, повторив пароль доступа с localhost, возможно этого делать не надо, а может и надо, по другому я не проверял.

Настройки SSH

Служба поддержки дала мне такие инструкции:

Далее, для подключения используйте следующие параметры:

hostname: nubes.timeweb.ru (это мой хост, у вас наверняка другой)
порт: 3306, стандартный.

 Так у меня не заработало, пришлось подключать через SSH. Для этого SSH доступ должен быть включен у провайдера, а включается он по запросу.

Настройка PHPStorm

Для создания подключения к базе данных в PHPStorm откройте окно работы с БД, в меню View — Tool Windows — Database. В открывшейся вкладке кликните плюсик для создания нового подключения, в выпадающем меню выберите Datasource — MySQL. В открывшемся окне введите настройки:

  • Host: localhost
  • Port: 3306
  • Database: имя_базы_данных
  • User: пользователь_базы_данных
  • Password: пароль_базы_данных

Далее нажмите кнопку «Configure SSH» и ведите в открывшемся окне следующие данные:

  • Use SSH Tunnel — поставить галку
  • Proxy Host: nubes.timeweb.ru (хост, на котором располагаются мои сайты)
  • Proxy User: Пользователь, у меня он совпадает с пользователем панели управления
  • Auth type: Password
  • Proxy Password: пароль пользователя.

После ввода всех данных можно нажать кнопку «Test Connection» и, если все ввели правильно, то коннект состоится. Если возникли проблемы с подключением, то, возможно, у вас, как и у меня, небыли установлены драйверы MySQL, о чем у меня было написано в нижней части окна, чуть выше кнопок, и дана ссылка, при клике на которой драйвера загрузились и установились.

Работа с базой данных в PHPStorm оказалась удобной и полноценной, можно посмотреть структуру таблиц, их содержимое, а так-же делать любые запросы, phpMyAdmin можно не открывать.

Аркадий Седельников Россия , Новосибирск , 53 года

Свежие статьи

  • 14.12.2016

    Как создать переопределение макета для меток Joomla

  • 02.09.2014

    Использование тэгов в расширениях Joomla! 3.

    x

  • 04.08.2014

    Joomla Vs. Drupal: техническое сравнение лучших CMS с открытым исходным кодом

Joomla!® CMS — пожалуй, лучшая система управления контентом с открытым исходным кодом

Joomla! — это больше, чем просто программное обеспечение, это люди, включающие разработчиков, дизайнеров, системных администраторов, переводчиков, копирайтеров, и, что самое главное — простых пользователей.

Мы рады пригласить вас в ряды нашего сообщества!

Скачать Joomla! 4.3.2 Русский язык для Joomla Документация Joomla! CMS

Свернуть

Развернуть

  • Держите десять ключевых диджитал-трендов 2023 года

  • Radical Multi Field v.

    3.1.0
  • Теги (Tags) в Joomla 4: зачем нужны и как использовать?

  • Вышел релиз Joomla 4.3

  • Phoca Cart – стабильная версия 4.0.6 компонента Интернет-магазина

  • Вышел релиз Joomla 4.2.9

  • NorrCompetition 2.0.0 — стабильная версия компонента конкурсов для Joomla 4

  • Вышел релиз безопасности Joomla 4.

    2.8
  • Новая функция в Joomla 4: процессы публикации

  • 90 баллов в Pagespeed для сайта на Joomla

  • Компоненты магазинов для Joomla топ 2020

  • Подсказки эксперта как правильно выбрать хостинг

  • Топ 10 лучших расширений для Joomla в 2020 году

  • Шаблоны и стили Joomla

Популярные записи

  • Вышел релиз Joomla 4. 3
  • Phoca Cart – стабильная версия 4.0.6 компонента Интернет-магазина

Форум о Joomla

  • Re: Модуль JComments Latest

    Общие вопросы

  • Re: Модуль JComments Latest

    Общие вопросы

  • Re: Модуль JComments Latest

    Общие вопросы

  • Как может?

    Joomla 3.x: Общие вопросы

  • Re: Компонент для вывода семинаров

    Поиск компонентов, модулей, плагинов

Как подключить базу данных MySQL к веб-сайту PHP

Опубликовано: 19 фев, 21 Обновлено: 14 дек, 21 Антоний Юшкевич 7 мин

Учебники

Список контента, который вы прочтете в этой статье:

В следующей статье рассказывается о том, как подключить базу данных MySQL к веб-сайту PHP. Для этого вы должны знать о базах данных PHP и MySQL.

MySQL — это СУБД с открытым исходным кодом (т. е. система управления реляционными базами данных), которая поставляется со стандартами SQL и функциями СУБД. С MySQL вы можете управлять проектами независимо от их размера. MySQL позволяет обрабатывать большие объемы данных, не влияя на производительность. Решение PHP также позволяет вам получать доступ к динамическим данным из подключенной базы данных через веб-страницу. PHP поставляется с поддержкой многих баз данных, таких как MySQL, MariaDB, MongoDB, Oracle и т. д. 

Вы можете использовать следующие методы PHP для подключения к базе данных MySQL из серверной части.

  • Использование MySQL: этот метод устарел, поскольку он связан с проблемами безопасности, такими как SQL-инъекция.
  • Использование MySQLi: этот API поставляется с функцией соединителя, которая соединяет базы данных PHP и MySQL с соответствующим набором процессов и расширений. Хотя ничем не отличается от предыдущей версии, вы можете считать этот процесс более безопасным и безопасным для реализации.
  • PDO: Объекты данных PDO или PHP, расширение уровня абстракции базы данных. Он действует как интерфейс между серверной частью и базой данных MySQL. Это позволяет вам вносить изменения без изменения кода PHP. Вы также можете работать с несколькими базами данных с помощью простого и переносимого кода. Этот метод обычно используется для подключения вашего PHP-сайта к базе данных MySQL.

Теперь мы подключим базу данных MySQL к разным серверам и обсудим, как вы можете подключить базу данных с помощью PDO.

  • Подключить базу данных MySQL с помощью сервера Localhost
  • Подключить базу данных MySQL с помощью Cloudways Server
  • Подключить базу данных MySQL с помощью PDO
  • Подключить базу данных MySQL с помощью Remote MySQL

Примечание ** PHPMyAdmin — это панель управления, которая помогает вам управлять базой данных.

 

класс = «идентификатор ссылки»>

 

Создание базы данных MySQL на локальном хосте

Установите XAMPP для запуска вашей базы данных, и его консоль будет выглядеть, как показано ниже.

После установки XAMPP будет создано имя пользователя. Сначала запустите модуль MySQL, нажав «Пуск». Затем выберите параметр «Администратор», как показано в приведенной выше консоли XAMPP, или перейдите на localhost/PHPMyAdmin в своем браузере. Теперь вы можете добавить пароль к учетной записи. По ссылке перейдите в учетную запись пользователя и найдите ниже.

Чтобы изменить пароль администратора, нажмите «Изменить права», введите пароль и сохраните его, чтобы использовать позже. Этот пароль поможет вам подключиться к базе данных.

Смена паролей не обязательна, но вы можете использовать этот шаг в качестве хорошей практики.

 

Создание базы данных

Теперь вы можете добавить новую базу данных для доступа. Перейдите на страницу PHPMyAdmin и нажмите кнопку NEW, как показано ниже.

После появления окна вы можете ввести имя вашей рабочей базы данных. Выберите utf8_general_ci в качестве параметра сопоставления, и это поможет обрабатывать все ваши запросы и данные. После того, как вы введете данные, нажмите кнопку «Создать». Мы назвали нашу базу данных «практикой».

Поскольку это новая база данных, в ней не будут отображаться таблицы.

 

Создание папки

Теперь откройте папку htdocs. Вы можете найти его в папке XAMPP. В этой папке htdocs мы создадим новую папку с именем «практика» нашей базы данных для хранения наших веб-файлов. XAMPP будет использовать эту папку «practice» для выполнения и запуска веб-страниц или веб-сайта PHP.

 

Создание файла подключения к базе данных в PHP

Мы начнем с файла PHP ‘db_connection.php’. Мы предпочитаем сохранять отдельный файл, чтобы не писать код подключения каждый раз для каждого файла. Вы можете легко включить этот файл в требуемый файл, используя функцию «включить», чтобы вызвать этот файл и использовать его. Наличие отдельного файла будет полезно при перемещении проекта в другую систему, и вам нужно будет изменить только один файл вместо нескольких кодов. Ниже приведен код PHP для файла db_connection.

 

Расшифровка кода:

  • $dbhost укажет хост сервера на локальном хосте.
  • $dbuser укажет имя пользователя, а $dbpass укажет пароль пользователя. Эти учетные данные должны быть такими же, как вы использовали в PHPMyAdmin.
  • $dbname укажет имя базы данных, которую мы создали ранее.

 

Проверка подключения к базе данных

Ниже приведен файл PHP ‘index.php’, который будет проверять соединение с вашей базой данных. Ниже код:

 

Зайдите в браузер и перейдите по ссылке localhost/practice/index.php, чтобы проверить результат. В случае успешного подключения вы получите следующее сообщение.

 

класс = «идентификатор ссылки»>

 

Создание базы данных MySQL на сервере Cloudways

Чтобы начать использовать этот метод, в вашей системе должен быть установлен PHP. Мы используем PHP 7.2 и базу данных MySQL. Мы размещаем PHP-приложения на сервере Cloudways, что обеспечивает оптимизацию без каких-либо хлопот. Вы можете использовать сервер Cloudways по адресу https://www.cloudways.com/en/php-hosting.php, бесплатно создав учетную запись.

Когда вы находитесь на сервере Cloudways с приложением PHP, перейдите на вкладку приложения, чтобы проверить сведения о базе данных, и запустите диспетчер баз данных.

 

Создание подключения к базе данных

Мы будем использовать функцию mysql_connect для установки соединения с базой данных. Эта функция вернет указатель на созданную базу данных, которую вы указали в коде, которую можно использовать позже.

Мы снова создадим файл db_connection. php, как указано выше, после того, как вы создадите и сохраните этот файл. Мы можем использовать процедурный запрос MySQLi или соединение с базой данных на основе PHP PDO.

 

Процедурный запрос MySQLi

 

Подключение к базе данных с использованием PDO

 

Проверка подключения к базе данных

 

Закрытие соединения PDO

$conn = ноль;

 

класс = «идентификатор ссылки»>

Для этого метода войдите на сервер Cloudways, используя свои данные для входа. Выберите опцию «Серверы» в верхнем меню и выберите нужный сервер. Теперь выполните следующий шаг, чтобы начать.

  • Выберите вкладку MySQL в меню безопасности слева.
  • Добавьте требуемый IP-адрес в «Добавить IP-адрес в белый список» и нажмите «Добавить».
  • Вы можете добавить несколько IP-адресов, выполнив описанный выше шаг.
  • После применения всех изменений выберите «сохранить изменения».

После изменений можно быстро запускать запросы.

 

класс = «идентификатор ссылки»>

Эта статья поможет вам подключиться к базе данных с вашего PHP-сайта или веб-страницы. Вы можете рассмотреть возможность работы по любому из трех методов, описанных выше. Многие разработчики широко используют как PHP, так и MySQL из-за простоты их понимания и структуры кода. Изучение обеих технологий может быть полезным в долгосрочной перспективе. Это позволяет создавать динамические веб-сайты с интерактивными функциями. Как только вы ознакомитесь с вашим приложением и подключением к базе данных, вы сможете выполнять различные действия из внешнего интерфейса, чтобы отразить изменения в базе данных, не обращаясь непосредственно к базе данных.