Перейти к содержимому

Mariadb как подключиться к базе

  • автор:

�� Настройка удаленного доступа MySQL и MariaDB в Linux Ubuntu

По умолчанию сервер MySQL настроен таким образом, что к нему разрешены подключения только с локальной машины, следовательно, подключиться из-вне (по интернет или локальной сети) не получится.

Убедиться в этом можно набрав на сервере команду:

sudo netstat -tlp

В результате получите что-то типа этого:

Активные соединения с интернетом (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 localhost:mysql *:* LISTEN 634/mysqld tcp 0 0 *:http *:* LISTEN 987/nginx -g daemon tcp 0 0 *:ssh *:* LISTEN 375/sshd tcp6 0 0 [::]:http [::]:* LISTEN 987/nginx -g daemon tcp6 0 0 [::]:ssh [::]:* LISTEN 375/sshd

Отсюда видно, что mysql слушает только интерфейс localhost (127.0.0.1). Это не всегда удобно, особенно когда есть необходимость выделить под сервер mysql отдельный сервер. А в рамках корпоративной локальной сети такое бывает очень часто.

Чтобы разрешить серверу MySQL принимать запросы из-вне необходимо предпринять несколько несложных шагов:

  1. Поменять одну строчку в конфигурационном файле MySQL;
  2. Создать сетевого пользователя с необходимыми правами.

Разрешаем MySQL слушать интерфейс, который смотрит во внешнюю сеть

Открываем конфигурационный файл любимы редактором, например nano, из под привилегированного пользователя:

sudo nano /etc/mysql/my.cnf

Если у вас установлен сервер mariaDB, то конфигурационный файл находится в другом месте:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = 127.0.0.1

и меняем 127.0.0.1 на 0.0.0.0 — тогда сервер будет слушать все интерфейсы компьютера, либо задаем конкретный ip-адрес локального интерфейса, который смотрит в локальную сеть. Например — 192.168.122.10.

# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = 0.0.0.0

Теперь остается только перезапустить сервис MySQL:

sudo service mysql restart

Теперь осталось только завести пользователя, которому разрешено обращаться к серверу MySQL извне.

Создание внешнего пользователя MySQL

Теперь нужной подключиться к MySql с паролем суперпользователя системы (системы. а не MySQL):

sudo mysql

После подключения к MySQL можно создать пользователя и дать привилегию, например:

mysql> GRANT ALL PRIVILEGES ON userdata.* TO 'user'@'%' IDENTIFIED BY 'password';

Здесь дается полный доступ к базе данных userdata пользователю с логином user и паролем password, подключающемуся с любого ip.

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

mysql> GRANT ALL PRIVILEGES ON userdata.* TO 'user'@'192.168.122.16' IDENTIFIED BY 'password';

А можно и разрешить пользователю всё — подключаться ко всем базам с любого ip-адреса

mysql> GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password';

Это делать не желательно, если конечно вы не заводите себя.

�� Похожие статьи на сайте

  • Шпаргалка основных команд mysql по работе с базой данных и таблицам
  • Настройка удаленного доступа MySQL и MariaDB в Linux Ubuntu
  • Процесс создания базы MySQL, нового пользователя и загрузки дампа
  • Как посмотреть всех пользователей и привилегии в MySQL
  • Проверка, восстановление и оптимизация баз MySQL
  • Установка Nginx, MariaDB и PHP-FPM на Ubuntu 16.04
  • Как полностью удалить MySQL из Ubuntu
  • Удаление всех таблиц из базы MySQL
  • Установка сервера percona
  • Установка Nginx+php5-fpm+MariaDB на Ubuntu 14.04
  • Дампы баз данных MySql — mysqldump
  • Перенос баз данных MySQL
  • Защита phpMyAdmin

Подключение приложений к Базе данных Azure для MariaDB

База данных Azure для MariaDB находится на пути выхода на пенсию. Настоятельно рекомендуется выполнить миграцию на База данных Azure для MySQL. Дополнительные сведения о миграции в База данных Azure для MySQL см. в статье «Что происходит с База данных Azure для MariaDB?»

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

  • Сведения о получении сертификата см. в статье Настройка SSL-подключений в приложении для безопасного подключения к базе данных Azure для MySQL.
  • = [имя_сервера].mariadb.database.azure.com
  • @ = формат userID для правильной аутентификации. Если использовать только userID, аутентификация завершится ошибкой.

ADO.NET

Server=; Port=3306; Database=; Uid=; Pwd=; SslMode=Preferred; 

В этом примере имя сервера — mydemoserver , имя базы данных — wpdb , имя пользователя — WPAdmin , а пароль — mypassword!2 . В результате строка подключения будет следующей:

Server= "mydemoserver.mariadb.database.azure.com"; Port=3306; Database= "wpdb"; Uid= "WPAdmin@mydemoserver"; Pwd="mypassword!2"; SslMode=Required; 

JDBC

String url ="jdbc:mariadb://:3306/?useSSL=true&trustServerCertificate=true"; myDbConn = DriverManager.getConnection(url, "", ); 

Node.js

var conn = mysql.createConnection(", user: "", password: , database: , port: 3306, ssl:)>>); 

ODBC

DRIVER=; Server=""; Port=3306; Database=; Uid=""; Pwd=; sslca=; sslverify=1; 

PHP

$con=mysqli_init(); mysqli_ssl_set($con, NULL, NULL, , NULL, NULL); mysqli_real_connect($con, "", "", , , 3306); 

Python

cnx = mysql.connector.connect(user="", password=, host="", port=3306, database=, ssl_ca=, ssl_verify_cert=true) 

Ruby

client = Mysql2::Client.new(username: "", password: , database: , host: "", port: 3306, sslca:, sslverify:false, sslcipher:'AES256-SHA') 

Получение сведений о строке подключения на портале Azure

The Connection strings pane in the Azure portal

В портал Azure перейдите на сервер База данных Azure для MariaDB, а затем выберите строки Подключение ion, чтобы получить список строк для вашего экземпляра:

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

Yii2 Как установить подключение к базе данных MySQL/MariaDB

Yii2 Как установить подключение к базе данных MySQL/MariaDB

В сегодняшней статье мы поговорим о том как подключатся к базе данных Mysql или Mariadb в Yii2. Прежде чем подключается к базе данных у вас на сервере должно быть установлено расширения PDO и сам драйвер PDO. К примеру для подключения к базе данных Mysql у вас должен быть установлен драйвер pdo_mysql. За подключения к базе данных Mariadb драйвер pdo_mysql тоже подойдет.

В Yii2 за само подключения к базе данных отвечает файл db.php который находится в директории config/db.php

yii2 connect to database

На изображении показано, где находится файл который, отвечает за подключения к базе данных.

За подключения к базе данных в Yii2 отвечает класс yii\db\Connection.

yii2 connect to database

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

return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=192.168.4.10;dbname=inzhener', 'username' => 'root', 'password' => 'Qwerty123', 'charset' => 'utf8', ];
  • class — класс коннектор подключения к БД.
  • dsn — здесь нам нужно ip или hostname сервер, где установлена базы данных.
  • username — учетная запись пользователя в базе данных.
  • password — Пароль от учетной записи в базе данных.
  • charset — кодировка, которая используется в базе данных.

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

Всем спасибо, я надеюсь что вам моя статья хоть чем-то помогла.

Краткое руководство. База данных Azure для MariaDB: подключение и запрос данных с помощью MySQL Workbench

База данных Azure для MariaDB на пути прекращения поддержки. Настоятельно рекомендуется выполнить миграцию на База данных Azure для MySQL. Дополнительные сведения о переходе на База данных Azure для MySQL см. в статье Что происходит с База данных Azure для MariaDB?

В этом кратком руководстве показано, как подключиться к экземпляру Базы данных Azure для MariaDB с помощью MySQL Workbench.

Предварительные требования

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

  • Создание сервера Базы данных Azure для MariaDB с помощью портала Azure
  • Создание сервера Базы данных Azure для MariaDB с помощью Azure CLI

Установка MySQL Workbench

Получение сведений о подключении

Получите сведения о подключении, необходимые для подключения к экземпляру Базы данных Azure для MariaDB. Вам потребуется полное имя сервера и учетные данные для входа.

Имя сервера Базы данных Azure для MariaDB и имя входа администратора сервера

  1. Войдите на портал Azure.
  2. На портале Azure в меню слева щелкните Все ресурсы. Затем найдите созданный сервер (например, mydemoserver).
  3. Выберите имя сервера.
  4. На странице Обзор сервера запишите значения Имя сервера и Имя для входа администратора сервера. Если вы забыли свой пароль, его можно сбросить на этой странице.

Подключение к серверу с помощью MySQL Workbench

Чтобы подключиться к серверу Базы данных Azure для MariaDB с помощью MySQL Workbench, выполните следующие действия:

  1. Откройте MySQL Workbench на компьютере.
  2. В диалоговом окне Настройка нового подключения на вкладке Параметры введите следующие сведения:

Параметр Рекомендуемое значение Описание поля
Имя подключения Подключение demo Укажите метку для этого подключения.
Способ подключения Standard (TCP/IP) (Стандартный способ (по протоколу TCP/IP)) Стандартный способ (по протоколу TCP/IP) соответствует требованиям.
Имя узла имя сервера Укажите значение имени сервера, которое вы использовали при создании экземпляра Базы данных Azure для MariaDB. В нашем примере используется такое имя сервера — mydemoserver.mariadb.database.azure.com. Используйте полное доменное имя (*.mariadb.database.azure.com), как показано в примере. Если вы не помните имя своего сервера, выполните действия из предыдущего раздела, чтобы получить сведения о подключении.
Порт 3306 Всегда используйте порт 3306 при подключении к Базе данных Azure для MariaDB.
Имя пользователя имя для входа администратора сервера Имя для входа администратора сервера, которое вы использовали при создании экземпляра Базы данных Azure для MariaDB. В нашем примере имя пользователя — myadmin@mydemoserver. Если вы не помните имя для входа администратора сервера, выполните действия из предыдущего раздела, чтобы получить сведения о подключении. Формат: имя пользователя@имя сервера.
Пароль ваш пароль Чтобы сохранить пароль, щелкните Store in Vault (Сохранить в хранилище).

Настройка нового подключения

  • Щелкните Проверить подключение, чтобы проверить, все ли параметры настроены правильно.
  • Затем нажмите кнопку ОК, чтобы сохранить подключение.
  • В разделе MySQL Connections (Подключения MySQL) выберите элемент, соответствующий серверу. Подождите, пока соединение будет установлено. Откроется новая вкладка SQL с пустым окном редактора, в котором можно вводить запросы.

    Примечание По умолчанию защита SSL-подключения является обязательной и применяется к серверу Базы данных Azure для MariaDB. Обычно для подключения MySQL Workbench к вашему серверу не требуется никаких дополнительных настроек с использованием сертификатов SSL. Но мы рекомендуем привязать SSL-сертификат ЦС к MySQL Workbench. Чтобы отключить протокол SSL, на странице обзора сервера на портале Azure выберите Безопасность подключения в меню. Для параметра Принудительно использовать SSL-соединение выберите Отключено.

    Создание таблиц, вставка, чтение, обновление и удаление данных

    1. Скопируйте и вставьте следующий пример кода SQL в пустую вкладку SQL для иллюстрации примера данных. Этот код создает пустую базу данных с именем quickstartdb. Затем он создает пример таблицы с именем inventory. Код добавляет несколько строк, а затем считывает эти строки. Он изменяет данные с помощью инструкции update, а затем еще раз считывает строки. Наконец, он удаляет одну строку и еще раз считывает строки.
    -- Create a database -- DROP DATABASE IF EXISTS quickstartdb; CREATE DATABASE quickstartdb; USE quickstartdb; -- Create a table and insert rows DROP TABLE IF EXISTS inventory; CREATE TABLE inventory (id serial PRIMARY KEY, name VARCHAR(50), quantity INTEGER); INSERT INTO inventory (name, quantity) VALUES ('banana', 150); INSERT INTO inventory (name, quantity) VALUES ('orange', 154); INSERT INTO inventory (name, quantity) VALUES ('apple', 100); -- Read SELECT * FROM inventory; -- Update UPDATE inventory SET quantity = 200 WHERE SELECT * FROM inventory; -- Delete DELETE FROM inventory WHERE SELECT * FROM inventory; 

    Выберите вкладку SQL в MySQL Workbench для выполнения примера кода SQL

    На снимке экрана показан пример кода SQL в MySQL Workbench и выходные данные после его выполнения.

  • Чтобы выполнить пример кода SQL, щелкните значок молнии на панели инструментов вкладки Файл SQL.
  • Обратите внимание на три вкладки с результатами, которые отображаются в разделе Сетка результатов посередине страницы.
  • Обратите внимание на список Выходные данные внизу страницы. Показано состояние каждой команды.
  • В этом кратком руководстве вы подключились к Базе данных Azure для MariaDB с помощью MySQL Workbench и запросили данные с помощью языка SQL.

    [!div ] > [Migrate your database using Export and Import](./concepts-migrate-import-export.md) —>

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

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