- Как подключиться к серверу MySQL через терминал и PHP
- PHP модули для подключения к серверу MySQL (PDO и MySQLi)
- Как проверить установлены ли PDO и MySQLi?
- Как подключиться к базе данных MySQL: инструкция
- Способы, доступные пользователю
- Как выяснить адрес и подключиться к серверу MySQL
- Сколько подключений к БД доступно
- Подключение из разных операционных систем
- Подключение через phpMyAdmin
- Выводы
- Как удаленно подключиться к MySQL
- Подключение через панель управления TimeWeb
- phpMyAdmin
- Соединение через SSH туннель
- Подключение в Windows
- Подключение в Linux
- Как проверить соединение с базой данных MySQL
Как подключиться к серверу MySQL через терминал и PHP
Для подключения к MySQL серверу необходимо указать пользователя, от лица которого будут выполняться запросы, его пароль и адрес хоста, к которому собираемся подключиться.
Если подключаемся к серверу, который запущен на текущем ПК (localhost), то ip адрес не указываем.
После успешного подключения вы увидите строку приглашения для ввода запросов к серверу.
[ root@centos7 ~ ]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.13 MySQL Community Server — GPL
Copyright (c) 2000, 2018, 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.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
Чтобы отключиться от MySQL сервера просто введите команду exit в строке запроса.
PHP модули для подключения к серверу MySQL (PDO и MySQLi)
PHP может работать с сервером MySQL используя модули:
Ранее в PHP применялась функция mysql_connect() , которая в PHP версии 5.5.0 была признана устаревшей и полностью упразднена в PHP версии 7.0.0.
Что использовать MySQLi или PDO? Это зависит от ваших предпочтений.
MySQLi и PDO обеспечивают современное, а главное безопасное соединение с базами данных и имеют защиту от SQL инъекций.
PDO поддерживает не только MySQL, а также еще несколько типов СУБД (CUBRID, MS SQL Server, Firebird, Informix, ODBC, DB2, 4D, SQLite, PostgreSQL, Oracle). Причем если понадобится вы можете поменять тип СУБД в любой момент и вам не придется переписывать все запросы в приложении т.к. они продолжат спокойно работать с новой СУБД. PDO использует только объектно-ориентированный подход к работе с БД.
MySQLi работает только с MySQL и при смене СУБД придется переписывать весь код приложения и запросы. MySQLi использует как объектно-ориентированный подход, так и процедурный, что расширяет ее API.
Я же лично отдаю предпочтение PDO т.к. его основным отличием является, возможность ловить исключения. Так при ошибке в работе с БД будет создано исключение, в результате чего дальнейший код не будет выполнятся. Также знание PDO может пригодится при работе с другими СУБД.
Как проверить установлены ли PDO и MySQLi?
Проверить установку модулей PDO и MySQLi можно несколькими способами.
С помощью утилиты php-cli. Выполните следующую команду.
В результате вы можете увидеть следующие модули:
[ root@centos7 ~ ]# php -m | grep -i mysql
mysqli
mysqlnd
pdo_mysql
Также информацию об этих модулях вы можете найти в результатах функции phpinfo() .
Как подключиться к базе данных MySQL: инструкция
Подключение к удаленной базе данных MySQL позволяет работать с ее содержимым аналогично локальным БД. Такой подход позволяет редактировать, считывать информацию через интернет с любого компьютера независимо от расположения пользователя.
В этом материале мы рассмотрим, как подключиться к MySQL несколькими способами. В качестве тестовой базы можно применять облачные базы данных провайдера Timeweb Cloud. Запуск БД там займет пару минут.
Способы, доступные пользователю
Существует несколько вариантов коннекта, какой именно выбрать, решать вам:
- Командная строка MySQL. Входит в комплект сервера MySQL.
- Графические инструменты вроде phpMyAdmin. В качестве альтернативы также используют Sequel Pro, MySQL Workbench и пр.
Во всех перечисленных способах возможно подключение по защищенному каналу благодаря SSL-сертификату.
Как выяснить адрес и подключиться к серверу MySQL
Если вы используете облачную базу данных, найти нужный IP-адрес можно в панели управления аккаунтом в разделе «Базы данных». IP-адрес отображен в колонке «IPv4» строки с нужной БД. Вы можете скопировать адрес, просто кликнув на него.
Если база данных размещена на сервере (то есть речь идет не об облачной базе), то нужный IP — это IP-адрес вашего сервера. Найти его можно на странице нужного сервера, на вкладке «Дашборд».
Сколько подключений к БД доступно
Количество одновременно работающих с базой данных пользователей или приложений ограничено объемом оперативной памяти, выделенной на работу нод конкретного кластера. Все, что требуется от пользователя, это изменить тариф на Timeweb Cloud , масштабировать его под свои требования.
Подключение из разных операционных систем
Рассмотрим, как подключиться к базе данных MySQL из разных операционных систем. Выглядеть команды будут так:
mysql --host= \
--port=6033 \
--user= \
--password \
--database= \
--ssl-mode=disabled
mysql --host= \
--port=6033 \
--user= \
--password \
--database= \
--ssl-mode=disabled
Программный код
import mysql.connector
cnx = mysql.connector.connect(user='', password='',
host='',
database='')
cnx.close()
Подключение через phpMyAdmin
Последним шагом рассмотрим, как подключиться к MySQL Server через графический интерфейс приложения, разработанного для администрирования данной СУБД. Пользователю достаточно ввести в конфигурационный файл, расположенный на диске по пути /etc/phpmyadmin/config.inc.php , несколько новых строк:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['host'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['port'] = '6033';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
На платформе Timeweb Cloud есть готовые инстансы phpMyAdmin и Adminer. Все что требуется от пользователя при их использовании, это ввести реквизиты для подключения. Но работают они лишь с белыми IP-адресами.
Выводы
Работать с удаленной базой данных можно с криптографической защитой данных или без нее. Это зависит от задачи, которую предстоит решать. Соединение возможно как вручную из операционок Linux и Windows, так и автоматически при наличии в приложении соответствующего кода. Вопрос, как подключиться к локальному серверу MySQL , имеет то же решение. Отличие составляет лишь адрес, который понадобится указать в командах.
Как удаленно подключиться к MySQL
Подключаться к базам данных можно разными способами. Подключение, устанавливаемое с сервера, называется локальным. С помощью такого типа подключения можно работать с домашнего компьютера, при этом используя любые удобные приложения по управлению базами данных.
Я расскажу, как подключиться к удаленной базе данных MySQL, какие существуют способы, а также опишу некоторые типичные ошибки.
Подключение через панель управления TimeWeb
Чтобы подключиться удаленно к MySQL, необходимо для начала открыть сайт хостинга и авторизоваться в личном кабинете. В панели управления следует выбрать раздел «Базы данных MySQL», через него и будем проводить операции. В новом открывшемся окне находим ссылку «Добавить доступ» напротив того сервера, к которому планируется подключиться. Для разрешения доступа к подсети /24 меняем последний актет IP-адреса на знак %.
При установлении соединения используем имя сервера или его IP-адрес. Данная информация доступна на главной странице в разделе «Информация о сервере». Порт указываем 3306, имя пользователя будет тем же, что и название базы данных. Вводим пароль и устанавливаем соединение.
phpMyAdmin
phpMyAdmin – программное средство, предоставляющее веб-интерфейс для работы с сервером MySQL. Подключиться к базе можно, открыв раздел «Базы данных MySQL» в панели управления хостингом. Находим на странице ссылку «phpMyAdmin» и жмем по ней для подключения. Если она недоступна, значит, пользователем был превышен лимит доступных БД. Увеличить его можно сменой тарифа.
Входим в данный раздел, вбиваем все данные и подключаемся.
Соединение через SSH туннель
Данный тип подключения считается более безопасным, потому что все данные по SSH-туннелю передаются в зашифрованном виде, исключая возможность перехвата.
Подключение в Windows
В данной ОС соединение по SSH протоколу можно осуществить с помощью специальных программ для управления базами данных. Например, PuTTY (бесплатная программа) или SecureCRT (платное ПО, но с пробной версией на 30 дней).
Мы для работы выбрали PuTTY. Скачиваем установщик с официального сайта и устанавливаем приложение . Запускаем программу, затем переходим в раздел «Session». В поле «Host Name» вводим свой домен или указываем его IP-адрес.
Далее переходим в категорию «Connection», открываем вкладку «SSH», затем «Tunnels». В поле «Source Port» указываем значение 3306, в «Destination» вбиваем localhost:3306, потом жмем на кнопку «Add» для добавления порта в список. И только потом жмем кнопку «Open» для установления соединения с хостом.
Логин и пароль те же самые, которые используются для входа в панель управления. При подключении используем имя пользователя и пароль, выданные при создании базы данных. Адрес сервера — 127.0.0.1, порт для подключения 3306.
Предупреждаем, что если вы уже устанавливали сервер баз данных MySQL на своем компьютере, то соединение через порт 3306 будет недоступно. Надо будет указать другое значение, например 3307.
Подключение в Linux
В ОС Linux никакого дополнительного ПО устанавливать не придется, можно все провести через командную строку «Терминал». Перед тем как подключиться к MySQL удаленно, нужно создать SSH-туннель. Вводим вот такую команду:
ssh -L3306:localhost:3306 -n логин@site.com
Потом в конфигурационном файле MySQL потребуется изменить параметр, отвечающий за удаленное подключение. Открываем в «Терминале» файл, дав вот такую команду:
sudo nano /etc/mysql/my.cnf
Далее комментируем нужную нам строку. В итоге она должна выглядеть вот таким образом:
# bind-address = 127.0.0.1
Сохраняем изменения, потом перезапускаем MySQL вот такой командой:
sudo service mysql restart
Далее будет запрошен пароль для входа в панель управления хостингом, вводим его. Для подключения к удаленному серверу MySQL необходимо создать пользователя, и делается это вот такой командой:
GRANT ALL ON *.* TO имя_пользователя@127.0.0.1 IDENTIFIED BY 'пароль'
Так мы создадим пользователя с неограниченным доступом ко всем базам на указанном сервере. Потом проверяем подключение утилитой telnet. Если сервер запрос не отклонил, значит, пора приступать к подключению. Для этого можно задать команды вот таких типов:
mysql -u имя_пользователя –h 127.0.0.1 –p mysql -h наименование_хоста -u dbUser -p dbName
Как проверить соединение с базой данных MySQL
Для проверки подключения к базе данных MySQL во всех ОС используем утилиту telnet. Нужно просто открыть командную строку и набрать в ней вот такую команду:
telnet 127.0.0.1 3306
Если соединение установится, то настройка туннеля прошла успешно, можно приступать к подключению. Если нет, рекомендуем тщательно проверить все настройки.