Подключение к базе данных MySQL
Экземпляр БД RDS можно подключить как к публичной, так и к частной сети.
На этой странице
- Перед началом работы
- Подключение через MySQL-Front
- Подключение с помощью SSL-сертификата
По умолчанию RDS предоставляет плавающий IP-адрес.
Когда приложения развертываются на ВМ ECS, которая расположена в том же регионе, что и VPC и RDS, рекомендуется использовать плавающий IP-адрес для подключения к экземпляру RDS.
Безопасно и имеет высокую производительность. Рекомендуется использовать.
При невозможности подключения к экземпляру базы данных RDS через плавающий IP-адрес рекомендуется привязать EIP к экземпляру базы данных и подключить ECS.
Имеет низкий уровень безопасности. Для достижения более высокой скорости передачи данных и безопасности рекомендуется перенести приложения на ECS, который находится в той же подсети, что и этот экземпляр базы данных RDS. Также следует использовать плавающий IP-адрес для доступа к экземпляру базы данных.
Если ECS находится в той же подсети VPC , что и экземпляр RDS DB, то выделять EIP не нужно.
Перед началом работы
- Создайте и подключитесь к экземпляру ECS .
- Создайте группу безопасности (Security Group) .
- Создайте EIP и прикрепите его к экземпляру БД , если необходимо подключиться из публичной сети.
- Установите клиент для работы с MySQL:
- Для ОС на базе Linux — MySQL Client (en).
- Для ОС Windows — MySQL-Front. Подробнее о подключении ниже.
Подключение через MySQL-Front

- Скачайте и запустите утилиту MySQL-Front.
- В окне Add Session нажмите New .
- Введите параметры подключаемой БД:
- Name — название экземпляра БД. Если его не указать, то будет использоваться значение Host по умолчанию.
- Host — укажите для подключения:
- из частной сети — плавающий IP-адрес подключаемого экземпляра базы данных. Чтобы просмотреть плавающий IP-адрес и порт экземпляра базы данных в консоли RDS, зайдите в информацию об экземпляре БД MySQL и в блоке Connection Information скопируйте адрес Floating IP address .
- из публичной сети — EIP подключаемого экземпляра базы данных.
- Port — порт экземпляра БД. По умолчанию для MySQL — 3306.
- В Login Information укажите пользователя БД ( User ) и пароль БД ( Password ).
- Нажмите OK .
- В появившемся окне выберите соединение, которое было создано ранее, и нажмите Open .
Если информация о подключении верна, экземпляр базы данных будет успешно подключен.
Подключение с помощью SSL-сертификата
- Войдите в консоль управления Advanced:
- через личный кабинет Cloud.ru ;
- как IAM-пользователь .
- Чтобы открыть список сервисов, нажмите Service List .
- Выберите Database → Relational Database Service .
- На странице Basic Information в разделе DB Information скачайте SSL сертификат.
- Загрузите сертификат в ВМ ECS или сохраните его на устройстве, которое будет подключено к экземпляру базы данных.
- Запустите команду для подключения к экземпляру. В нашем примере используется команда для Linux:
mysql -h hostName> -P port> -u userName> -p --ssl-ca=caName>
- -h — укажите для подключения:
- из частной сети — плавающий IP-адрес подключаемого экземпляра базы данных. Чтобы просмотреть плавающий IP-адрес и порт экземпляра базы данных в консоли RDS, зайдите в информацию об экземпляре БД MySQL и в блоке Connection Information скопируйте адрес Floating IP address .
- из публичной сети — EIP подключаемого экземпляра базы данных.
Пример подключения с использованием SSL-сертификата
mysql -h 172.16.0.43 -P 3306 -u root -p –ssl-ca=ca.pem
Если информация о подключении верна, экземпляр базы данных будет успешно подключен.
Работаем с MySQL через командную строку
Если на экране появляется приветствие mysql, то всё прошло ok.
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 344 Server version: 5.5.28-0ubuntu0.12.04.3 (Ubuntu) Copyright (c) 2000, 2012, 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>
Для выхода из командной строки mysql можно написать exit, в linux достаточно нажать ctrl+C. Теперь можно писать любые mysql-запросы. Чтобы запрос выполнился, в конце обязательно нужно поставит точку с запятой «;». При написании длинных запросов удобно делать enter`ом переход на следующую строку. А после полного написание запроса поставить «;» и нажать «enter».
Для работы с конкретной базой данных нужно её выбрать с помощью оператора use. Показать все базы данных:
show databases;
Результатом будет что то вроде этого:
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | jeka | | linky | | mysql | | performance_schema | | phpmyadmin | | test | +--------------------+ 7 rows in set (0.00 sec)
Выбрать базу данных jeka:
mysql> use jeka Database changed
Посмотреть названия всех таблиц в конкретной базе данных (после выполнения use):
mysql> show tables;
Просмотреть структуру таблицы (имена и тип полей):
mysql> describe post_estimations; +------------+---------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+---------------------+------+-----+---------+-------+ | post_id | int(10) unsigned | YES | MUL | NULL | | | user_id | int(10) unsigned | YES | MUL | NULL | | | estimation | float(2,1) unsigned | NO | | NULL | | | date | int(10) unsigned | NO | | NULL | | +------------+---------------------+------+-----+---------+-------+ 4 rows in set (0.00 sec)
Достать информацию о юзере с >
mysql> SELECT * FROM users WHERE > Бэкап структуры таблицы, а точнее sql-запрос на её создание
show create table table_name;
Если в конце запроса поставить не ; а \G, то результат будет показан другим образом — иногда весьма удобно, если таблица имеет много полей:
select * from update__v4_errors where >

Посмотреть, какие запросы выполняются в данный момент на сервере MySQL:
show processlist;
Учтите, что будут отображены еще не выполненные (активные) запросы, поэтому show processlist; актуальная команды только для нагруженных БД, в других случаях маловероятно, что команда что то покажет.
Подробнее о том, как изменять структуру mysql-таблиц (alter table).
Что делать если вижу знаки вопросов вместо текста в MySQL?
Это проблема с кодировкой. Вероятно в my.ini файле mysql-сервера не добавлено:
[mysqld] init-connect='SET NAMES utf8'
Нужно добавить в .ini файл либо выполнить в консоли команду «SET NAMES utf8», после чего во время текущей сессии отображаться русский текст в mysql-консоли будет без проблем:
mysql> set names utf8; Query OK, 0 rows affected (0.00 sec)
Как сделать бэкап базы mysql через консоль Linux?
Сделать бэкап базы database в файл dump_name.sql
mysqldump -u [username] -p [password] [database] > [dump_name.sql]
[username] – имя пользователя который имеет доступ к базе данных.
[password] – пароль пользователя.
[database] – имя базы данных.
[dump_name.sql] – имя файла, дампа на выходе.Развернуть базу из файла через командную строку
mysql -u [username] -p [password] [database] < [dump_to_restore.sql]
[username] – имя пользователя который имеет доступ к базе данных.
[password] – пароль пользователя.
[database] – имя базы данных.
[dump_to_restore.sql] – имя файла, из которого поднимаем базуСделать дамп структуры одной таблицы mysql (без данных):
mysqldump -u[user] -p[password] -h[host] [database] [table_name] --no-data > /path/dump_name.sql
Например, задампим таблицу users из базы данных mydatabase:
mysqldump -uroot mydatabase users > users.dump.sql
Развернуть mysql-dump в БД с именем database_name:
mysql -uroot database_name < users.dump.sql
Ещё одна интересная штука. Выполнять из консоли, не требуется предварительно подключаться к mysql (mysql>). Вывести список таблиц базы данных, не подключаясь непосредственно к mysql:
mysql -uroot -e 'show tables' database_name && echo done
mysql> show variables like '%incr%';
Заключение
Может показаться, что писать запросы в командной строке не удобно. Но это заблуждение. На слабых машинах phpmyadmin работает не так шустро как хотелось бы. Тем более не на всех серверах стоят морды с phpmyadmin, adminer и т.д. Linux + mysql в терминале реально повысили мою производительность.
Поисковые запросы , по которым приходили пользователи

Дата добавления: 11 лет назад
mysql
Похожий контент:
- В чём разница int(3) int(10) int(12) и так далее? mysql 3 ответа
- Как переименовать таблицу в MySQL? Решено!
- Как очистить все таблицы в базе данных mysql? 0 ответов
- MySQL ошибки Lost connection to MySQL server at 'waiting for initial communication packet' 1 ответ
- ERROR 9006: ProxySQL Error: connection is locked to hostgroup 10 but trying to reach hostgroup 11 Решено!
- MySQL - изменение полей, структуры таблицы 0 комментариев
- Доступ к mysql из-вне4 комментария
- Mysql перенос таблиц из одной базы данных в другую 0 комментариев
- MacOS сбросить root пароль для MySQL 0 комментариев
- Анализ производительности MySQL с использованием performance_schema 0 комментариев
Комментарии 2
viktor 11 лет назад
Последнее время я использую Valentina Studio для работы с MySQL. Очень хороший и бесплатный инструмент, рекомендую посмотреть. http://www.valentina-db.com/en/valentina-studio-overview
root 11 лет назад
Viktor, спасибо. Судя по скринам, штука интересная.
Правда, уж больно много зависимостей она имеет.. Как решу проблему с зависимостями, отпишусь.eugene-PC:www eugene$ eugene$ sudo rpm -ivh ~/Загрузки/vstudio_x64_5_lin.rpm
rpm: RPM should not be used directly install RPM packages, use Alien instead!
rpm: However assuming you know what you are doing.
ошибка: Неудовлетворенные зависимости:
ld-linux-x86-64.so.2()(64bit) нужен для vstudio-5.3.0-2.x86_64
ld-linux-x86-64.so.2(GLIBC_2.3)(64bit) нужен для vstudio-5.3.0-2.x86_64
libc.so.6()(64bit) нужен для vstudio-5.3.0-2.x86_64
libc.so.6(GLIBC_2.2.5)(64bit) нужен для vstudio-5.3.0-2.x86_64
libc.so.6(GLIBC_2.3)(64bit) нужен для vstudio-5.3.0-2.x86_64
libc.so.6(GLIBC_2.3.3)(64bit) нужен для vstudio-5.3.0-2.x86_64
libc.so.6(GLIBC_2.3.4)(64bit) нужен для vstudio-5.3.0-2.x86_64
libc.so.6(GLIBC_2.4)(64bit) нужен для vstudio-5.3.0-2.x86_64
libdl.so.2()(64bit) нужен для vstudio-5.3.0-2.x86_64
libdl.so.2(GLIBC_2.2.5)(64bit) нужен для vstudio-5.3.0-2.x86_64
libgcc_s.so.1()(64bit) нужен для vstudio-5.3.0-2.x86_64
libgcc_s.so.1(GCC_3.0)(64bit) нужен для vstudio-5.3.0-2.x86_64
libgcc_s.so.1(GCC_3.4)(64bit) нужен для vstudio-5.3.0-2.x86_64
libgdk-x11-2.0.so.0()(64bit) нужен для vstudio-5.3.0-2.x86_64
libgdk_pixbuf-2.0.so.0()(64bit) нужен для vstudio-5.3.0-2.x86_64
libglib-2.0.so.0()(64bit) нужен для vstudio-5.3.0-2.x86_64Импорт и экспорт базы данных MySQL
Экспорт базы данных MySQL через консоль и phpMyAdmin
через phpMyAdmin
через консоль
Войдите в phpMyAdmin. Кликните по названию базы данных, экспорт которой вы хотите произвести:

Перейдите на вкладку «Экспорт», выберите формат SQL и нажмите Вперед:
На вашем компьютере откроется диалоговое окно. Сохраните базу данных.
Готово, база данных экспортирована на ваш компьютер.
- USER — пользователь базы данных (например, «u1234567_dbuser»),
- DBNAME — имя экспортируемой базы данных (например, «u1234567_database»),
- ~/DUMPFILE.sql — путь к файлу, в котором сохранится дамп базы данных в формате SQL.
Затем введите пароль базы данных (PASSWORD).
Готово, дамп базы данных с названием DUMPFILE.sql будет сохранен в корневую директорию услуги хостинга.
Импорт базы данных MySQL через консоль и phpMyAdmin
через phpMyAdmin
через консоль
Выберите базу данных, в которую будет производиться импорт дампа (резервной копии базы данных):

Перейдите на вкладку «Импорт», нажмите Выберите файл и укажите файл дампа базы. При необходимости смените кодировку. Выберите формат SQL и нажмите Вперёд:
Если файл дампа большой
Если файл дампа слишком большой для импорта, импорт необходимо производить по SSH.
При успешном импорте появится сообщение:
Готово, база данных импортирована.
Предварительно загрузите в корневую директорию хостинга файл дампа базы данных по FTP или через панель управления.
- USER — пользователь базы данных (например, «u1234567_dbuser»),
- DBNAME — имя импортируемой базы данных (например, «u1234567_database»),
- ~/DUMPFILE.sql — путь к файлу, в котором сохранится дамп базы данных в формате SQL.
Затем введите пароль базы данных (PASSWORD).
Готово, база данных импортирована.
Базы данных MySQL
MySQL — это свободная реляционная система управления базами данных. База данных (БД) — это место, в котором хранятся данные. Слово «реляционный» означает, что данные хранятся в наборах данных, в виде таблиц.
В разделе MySQL вы можете создавать и удалять БД, настраивать доступ к ним, следить за их статистикой по нагрузке и объёму данных.

Управление базами данных осуществляется через таблицу. Для баз данных доступны следующие возможности:
Перейти в phphMyAdmin;
Посмотреть статистику по базе.
Добавить доступ к БД;
Изменить комментарий;
Удалить базу данных;
В таблице под каждой БД указаны доступы для подключения:


По умолчанию у всех БД настроен доступ localhost. Остальные доступы добавляются кнопкой . При добавлении доступа вам будет выведено окно:

В открывшемся окне вы можете:
- Указать IP-адрес или доменное имя компьютера, с которого будет производиться подключение к БД;
- Создать уникальные пароли для отдельных адресов или единый пароль для всех сразу;
- Указать в качестве доступа localhost, если вы удаляли его ранее.
Если необходимо создать доступ к базе данных со всех адресов, то при создании доступа установите флажок в поле "Единый доступ для различных IP-адресов".
Обратите внимание!
Для внешних подключений необходимо использовать имя хоста, которое указано в разделе "Параметры подключения".
Возле
расположена кнопка
— посмотреть статистику по базе. При её нажатии можно посмотреть информацию о нагрузке на базу данных, а также динамику изменения размера.
Создание базы данных
База данных MySQL создается в несколько кликов:

- Придумайте имя БД и впишите его в поле Имя базы. По умолчанию в поле уже вписан ваш логин в системе, вам остаётся лишь дописать латиницей после «_» придуманное название;
- Придумайте надежный пароль для входа в БД или воспользуйтесь генератором случайных паролей ;
- Нажмите кнопку Добавить.

Обратите внимание на чекбокс Сохранить пароль для phpMyAdmin. Если галочка установлена, то при подключении phpMyAdmin к БД пароль будет введён автоматически, а если при создании БД чекбокс был не активен, то при подключении phpMyAdmin к БД пароль нужно будет вводить вручную.


Если при создании БД вы не поставили галочку Сохранить пароль для phpMyAdmin и забыли его, то в дальнейшем вы можете изменить пароль в таблице управления БД.


Ненужные соединения можно удалить кнопкой .
Подключение к базе данных
Для внешнего подключения к БД введите следующую команду:
mysql -h сервер для внешних подключений -u имя пользователя -pПример: mysql -h pseudofb.beget.tech -u pseudofb_myadm_b -p
Сервер для внешних подключений и имя пользователя указаны в левой части раздела MySQL.

После подключения к серверу MySQL вы можете работать с БД.
Для внутреннего подключения к БД вам необходимо подключиться по SSH к серверу:
ssh ваш логин@сервер для внешних подключенийПример: ssh pseudofb@pseudofb.beget.tech
После установки SSH соединения можно подключиться к MySQL:
mysql -h localhost -u имя пользователя -pДля подключения CMS к БД в большинстве случаев необходимо указать следующие параметры в настройках CMS (конфигурационных файлах):
host = «localhost» dbname= «логин в системе_указанное имя базы» dbuser= «логин в системе_указанное имя базы» dbpasswd = «пароль указанный при создании»Где посмотреть конфигурационные файлы CMS?
В блоке Полезная информация (левая сторона раздела MySQL) можно посмотреть расположение конфигурационных файлов популярных CMS, в которых редактируются данные настройки.


Если CMS будет подключаться с другого хоста, тогда в параметре host нужно указать имя вашего сервера, например:
host = begetguide.beget.techПосмотреть имя вашего сервера можно на главной странице Панели управления в блоке Техническая информация, а также в разделе MySQL в блоке Параметры для подключения.


В разделе MySQL мы собрали удобные инструменты для работы с БД и полезную информацию, которая поможет вам при подключении CMS к MySQL.
Здесь вы найдете инструменты для решения наиболее частых задач при работе с БД: создание, удаление баз данных и подключений к ним, мониторинг нагрузки и размера баз данных, настройка автоматизированного входа в БД для phpMyAdmin.

Также в разделе есть параметры для подключения к БД и полезная информация о настройки подключения CMS к MySQL.