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

Как подключиться к базе данных mysql

  • автор:

Внешнее подключение к MySQL

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

Простое подключение

Для настройки простого подключения к MySQL извне зайдите в Панель управления и перейдите в раздел «Базы данных» → «Доступ по IP».

Нажмите кнопку «Добавить IP» и укажите IP-адрес, с которым вы выходите в сеть. Узнать свой адрес можно на сайте inet.from.sh.

В форме можно указывать в том числе и IP-адреса с символом % в октетах. К примеру, для разграничения доступа с адресов одной подсети:

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

  • сервер для подключения: имя вашего домена, например yourdomain.ru;
  • порт для подключения: 3306;
  • имя пользователя и пароль: установленные вами при создании базы данных имя пользователя и пароль.

Пример подключения с помощью программы mysql (пароль будет запрошен при подключении):

mysql -P 3306 -h yourdomain.ru -u mylogin_user -p mylogin_db

Безопасное подключение через SSH-туннель

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

Подключение к БД MySQL с компьютера под управлением ОС MS Windows

Настройка SSH-туннеля

Установите на ваш компьютер программу putty. Это бесплатное программное обеспечение, скачать ее можно на официальном сайте.

В категории настроек «Session» в поле «Имя хоста» (Host Name) укажите домен вашего сайта.

Перейдите в категорию настроек Connection → SSH → Tunnels и в поле «Source port» укажите значение 3306, в поле «Destination» — localhost:3306.

После этого нажмите кнопку «Add».

После этого нажмите кнопку «Open». Установится соединение с вашим хостом.

В качестве логина и пароля используйте ваши данные для входа в Панель управления хостингом.

Туннель установлен. Для соединения с базой данных используйте имя пользователя и пароль, заданные вами при создании базы данных в разделе Панели управления «Базы данных». В качестве адреса сервера используйте 127.0.0.1, порт для подключения 3306.

Пример подключения с помощью программы mysql (пароль будет запрошен при подключении):

mysql -P 3306 -h 127.0.0.1 -u mylogin_user -p mylogin_db

Внимание: если на вашем компьютере уже работает сервер баз данных MySQL, подключение удаленному серверу по порту 3306 будет невозможно. В этом случае при создании подключения в putty укажите другой порт в качестве «Source port», например, 3307. Используйте этот порт при подключении к базе данных.

Подключение к БД MySQL с компьютера под управлением ОС Linux

В командной строке выполните следующую команду:

ssh -L3306:localhost:3306 -n yourlogin@yourdomain.ru

  • 3306 (сразу после ключа -L) — порт на локальном компьютере, к которому вы сможете подключаться клиентом mysql;
  • yourlogin — имя вашего аккаунта (логин в Панели управления);
  • yourdomain.ru — имя вашего сайта.

В качестве пароля используйте пароль для входа в Панель управления хостингом.

Туннель установлен. Для соединения с базой данных используйте имя пользователя и пароль, заданные вами при создании базы данных в разделе Панели управления «Базы данных». В качестве адреса сервера используйте 127.0.0.1, порт для подключения 3306.

Пример подключения с помощью программы mysql (пароль будет запрошен при подключении):

mysql -P 3306 -h 127.0.0.1 -u mylogin_user -p mylogin_db

Внимание: если на вашем компьютере уже работает сервер баз данных MySQL, подключение удаленному серверу по порту 3306 будет невозможно. В этом случае при запуске ssh сразу после ключа -L укажите альтернативный порт, например, 3307. Используйте этот порт при подключении к базе данных.

Проверка соединения с БД MySQL

Проверить соединение с БД можно посредством утилиты telnet. Войдите в интерфейс командной строки (в ОС MS Windows: Пуск → Выполнить → cmd.exe), наберите команду:

telnet 127.0.0.1 3306

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

Работаем с 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 использования /G вместо; дебаг запроса.

Посмотреть, какие запросы выполняются в данный момент на сервере 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 ответа
  • Узнать, насколько slave отстает от master в mysql Решено!
  • Получить комментарии к полям mysql-таблицы 1 ответ
  • На PHP Access denied for user 'root'@'localhost', хотя через консоль подключается 1 ответ
  • Как очистить все таблицы в базе данных mysql? 0 ответов
  • Запросы инъекции для 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 Administrator или Navicat — это намного удобнее, чем использовать интерфейс phpMyAdmin.

Однако по умолчанию доступ к базам данных вашего аккаунта извне закрыт. Но вы можете открыть его для любого IP-адреса или подсети класса C (например: 123.45.67.*) — это делается в разделе «Хостинг / Управление / Управление MySQL / Доступ по IP» контрольной панели аккаунта. Одновременно можно задать не более двадцати IP-адресов или подсетей — в большинстве случаев этого более чем достаточно.

В качестве адреса для удалённого подключения к MySQL используйте домен mysql.ваш_логин.myjino.ru, где ваш_логин — это ваш логин на «Джино».

Кроме этого, к базам данных на хостинге можно подключаться через SSH-туннель — это менее удобно, но более безопасно.

Другие вопросы в разделе «Общие вопросы по MySQL»

  • Как создать базу данных?
  • Как настроить приложение (портал, форум и т. п.) для работы с базой данных?
  • Есть ли поддержка InnoDB?
  • Можно ли устанавливать квоты на каждую из баз данных в отдельности?
  • Как создать нового пользователя базы данных?
  • Как изменить пароль доступа к MySQL?
  • «User 'XXX' has exceeded the 'max_questions' resource (current value: XXX)». Что делать?
  • Как подключиться к базе данных через SSH-туннель?
  • Как сделать импорт или экспорт базы данных через SSH?
  • Можно ли удалить основную базу данных?
  • Как восстановить данные из резервной копии (бэкапа)?
  • Общие вопросы о «Джино»
    • Основные вопросы о «Джино»
    • Оплата услуг
    • Основные вопросы по хостингу
    • Управление сайтом
      • Работа с файлами
      • FTP-доступ
      • Задания по расписанию (cron)
      • Доступ по SSH
      • PHP
      • CGI
      • MySQL
        • Общие вопросы по MySQL
        • phpMyAdmin
        • Joomla!
        • osCommerce
        • Invision Power Board
        • MODX
        • WordPress
        • Основные вопросы по доменам
        • Регистрация доменов
        • Перенос доменов
        • Домены .рф
        • Основные вопросы
        • Редактирование сайта
        • Основные вопросы
        • Настройка почтовых клиентов
        • Почтовый интерфейс (WebMail)

        Подключение к серверу MySQL

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

        Здесь вы можете получить основную информацию для подключения к серверу.

        • Адрес сервера баз данных (хост): login.mysql , где login — уникальное имя услуги хостинга (указано в верхней правой части панели управления).
        • Имя MySQL-пользователя (логин): login_mysql.
        • Для получения пароля MySQL-пользователя нажмите кнопку Сбросить пароль. Новый пароль будет отображен на экране.
        • При создании хостинга создается база данных с именем login_db.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *