Letysite.ru

IT Новости с интернет пространства
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Mysql клиент linux

Установка MySQL с официального сайта для Linux

Как скачать MySQL c официального сайта?

Перейдем на сайт https://dev.mysql.com/downloads/mysql/ где представлены ссылки на различные бесплатные пакеты MySQL. Здесь вы можете найти ссылки на старые версии MySQL, а также некоторые инструкции по различным способам установки MySQL из репозиториев.

Выберите нужную вам версию MySQL. Если нужна самая последняя, то она представлена на этой же странице ниже.

Выбор версии MySQL для скачивания.

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

Выбор операционной системы для MySQL.

Ниже будут представлены различные пакеты для загрузки. Самыми важными являются пакеты: mysql-community-client и mysql-community-server. Остальные пакеты могут пригодится в зависимости от ваших требований к серверу MySQL, тем не менее для избежания проблем с другими программами, которые работают с MySQL, я также рекомендую установить mysql-community-devel и mysql-community-common.

Выбираем пакет для установки и нажимаем кнопку Download.

Список пакетов доступных для скачивания.

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

Ссылка на скачивания пакета MySQL.

Так как я использую ОС Centos 7 без графического интерфейса, то мне будет удобнее скачать пакеты с помощью утилиты wget передав в ее параметр скопированную ссылку на пакет.

Установка MySQL из скачанных пакетов.

Для установки скачанных пакетов, могут понадобится некоторые зависимости, для Centos 7 также рекомендуется установить пакеты net-tools и openssl-devel.
yum install net-tools openssl-devel

Установим все скачанные пакеты. Начинать лучше с пакета mysql-community-client, так как от него зависят все остальные.

Если вы используете deb пакеты, то их можно установить с помощью одноименного менеджера пакетов, например:
deb —install -vh mysql-community-client-8.0.13-1.el7.x86_64.deb

Убедимся в успешности установки, проверив версию демона mysqld.

] # mysqld —version
/usr/sbin/mysqld Ver 8.0.13 for Linux on x86_64 (MySQL Community Server — GPL)

Разрешим запуск mysqld при старте системы.

Наконец запустим сервер MySQL.

При установке MySQL был сгенерирован пароль для пользователя root, найти его можно в файле /var/log/mysqld.log . Сделать это проще всего с помощью следующей команды.

Заходим на сервер MySQL и вводим временный пароль.

Установка и первоначальная настройка MySQL в linux

Установка MySQL из репозитория

Установка сервера MySQL из репозитория

Для установки сервера MySQL в Debian достаточно набрать команду:
apt-get install mysql-server

В операционной системе RHEL / CentOS также все довольно просто:
yum install mysql-server

При этом будет установлена актуальная (на момент выполнения команды) версия MySQL. На момент написания статьи это версия 5.5.

Обратите внимание: после установки сервера MySQL его необходимо запустить. Для этого (как в Debian, так и в RHEL / CentOS) необходимо выполнить команду:
service mysqld start

Кроме того, рекомендуем перезагрузить сервер и убедиться, что MySQL запускается при загрузке. Если не запускается, то в CentOS выполните команду:
chkconfig mysqld on

Установка клиента MySQL из репозитория

Для установки клиента mysql запустите в debian следующую команду:
apt-get install mysql-client

В случае, если у Вас установлен RHEL / CentOS, выполните такую команду:
yum install mysql

При этом будет установлена актуальная (на момент выполнения команды) версия MySQL. На момент написания статьи это версия 5.5.

Установка библиотек MySQL для поддержки компиляции (MySQL development) из репозитория

Если Вы устанавливаете MySQL не по своему желанию, а потому, что это необходимо для установки какой-либо программы (например, asterisk, поддержка cdr_mysql), то просто установить сервер (и/или клиент) MySQL недостаточно. Необходимо также поставить библиотеки MySQL, чтобы компиляция зависящей от MySQL программы была успешной.

Для debian это будет команда:
apt-get install libmysqlclient-dev

Для RHEL / CentOS выполните:
yum install mysql-devel

Первоначальная настройка MySQL

Даже в случае, если Вы устанавливаете MySQL на домашнем/тестовом компьютере (не говоря уже об установке в производственной среде) необходимо совершить хотя бы минимальные действия по настройке MySQL сервера (клиента, как правило, настраивать не нужно). Например, задать пароль пользователя root в системе MySQL. По умолчанию пароль для root — пустой (без пароля).

Задать пароль MySQL root

Для простой установки пароля пользователю root (в случае, если пароль не был запрошен при установке самого MySQL) выполните команду:
/usr/bin/mysqladmin -u root password ‘rootpass’

Где rootpass — пароль для пользователя root. Совет: если Вы хотите, чтобы эта команда не отображалась в истории команд (и никто впоследствии не смог бы подсмотреть пароль рута из истории команд), перед этой командой просто поставьте пробел. То есть:
/usr/bin/mysqladmin -u root password ‘rootpass’

Настройка MySQL для работы в производственной среде

Выполните из командной строки:
/usr/bin/mysql_secure_installation

Данный скрипт (если ответить на задаваемые вопросы yes) — установит новый пароль root (пароль будет запрошен), удалит пользователя anonymous, запретит логинится с удаленных машин под root-ом, удалит тестовую базу.

Создать необходимую базу данных и пользователя для нее

Для создания базы данных в MySQL необходимо сначала подключиться к MySQL, после чего выполнить mysql запрос для создания базы данных. Для этого выполните из командной строки linux:
mysql -u root -p

При этом будет запрошен пароль для пользователя, имя которого указано после опции -u (в данном случае — пароль пользователя root). При правильном введении пароля появится приглашение MySQL к вводу команд:
mysql>_

Читать еще:  Эволюция и перспективы развития ос linux

Это командная строка MySQL. Все SQL запросы и команды на создание баз данных, пользователей и т.д. вводятся в этой командной строке.

Для создания базы данных выполните в командной строке MySQL:
create database имя-базы-данных character set кодировка-базы-данных ;

например:
create database asterisk character set utf8;

Кодировку можно не указывать, при этом будет использоваться кодировка по умолчанию (см. настройки сервера MySQL):
create database mydatabase;

Теперь создадим пользователя MySQL и дадим ему полные права на созданную базу данных:
grant all privileges on имя-базы-данных .* to имя-пользователя @localhost identified by ‘ пароль-пользователя ‘;
например:
grant all privileges on asterisk.* to asterisk_user@localhost identified by ‘asterisk_password’;

Sergey Danielyan

Правильная установка и настройка MySQL в Linux

Эта статья, по замыслу, должна служить пошаговым руководством по корректной настройки MySQL сервера в Linux в общем и в CentOS в частности, начиная от подготовки системы и заканчивая настройкой прав пользователей.
В этот раз текста будет минимум — только команды.

Установка MySQL

sudo yum update

Проверяем, установлен ли MySQL сервер

Если установлен, шаги по установке можете пропустить, хотя ознакомиться я все же советую с ними.

Существуют следующие основные пакеты связанные с mysql:

  • mysql — клиент mysql
  • mysql-server — сервер mysql
  • mysql-devel — для разработки и подключения библиотек и хидеров mysql
  • mysql-connector-java — JDBC коннектор (используется, например, в EJBCA)

sudo yum install mysql mysql-server mysql-devel mysql-connector-java

Теперь надо установить сервер mysql на запуск в определенные runlevel‘ы (2, 3 и 5):

chkconfig —level 235 mysqld on

Если кто забыл соответствие цифрового значения runlevel‘а символьному:

Стартуем демон mysql:

sudo service mysqld start

Настройка сервера

Теперь пора настроить сервер. Начнем с пользователей.

Вот состояние таблицы user до начала действий с ней:

mysql -u root
> use mysql
> select host,user from user;

5 rows in set (0.00 sec)
> quit

Как видете, безопасность на уровне плинтуса. Хорошо хоть, что анонимного пользователя нет.

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

Запустится скрипт, с запросами на то или иное действие. Вот ответы:

Skip root password for root
Мы еще не устанавливали пароль для root, поэтому при запуске скрипта и запросе пароля для root , просто нажмите Enter .

Install new password for root: security
А вот тут можно установить пароль для root

Do remove an anonymous user
На вопрос о том, удалить ли анонимного пользователя, отвечаем да

Do not disallow remote connections
Не запрещаем коннект к нашему северу с удаленных серверов (если, конечно, эта опция вам нужна, в другом случае, запретите ее)

Do remove a test database
Тестовая база нам не нужна — удаляйте ее

Do reload the privileges
Перегрузим привилегии для их активации

Теперь для всех root пользователей установлен пароль.

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

SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘security’);
SET PASSWORD FOR ‘root’@’localhost.localdomain’ = PASSWORD(‘security’);
SET PASSWORD FOR ‘root’@’127.0.0.1’ = PASSWORD(‘security’);

UPDATE mysql.user SET Password = PASSWORD(‘security’) WHERE user = ‘root’;

Если же вы не запускали конфигурацию через mysql_secure_installation или не хотите этого делать по каким-то другим причинам, следующие команды удалят any пользователей:

DROP USER »@’localhost’;
DROP USER »@’localhost.localdomain’;

Также, пароль для IPv6 localhost (@::1) можно установить таким образом:

SET PASSWORD FOR ‘root’@’::1′ = PASSWORD(

Близится финал нашего действия. Осталось две вещи:

  • открыть порты для mysql:

sudo iptables -I INPUT -p tcp —dport 3306 -m state —state NEW,ESTABLISHED -j ACCEPT
sudo iptables -I OUTPUT -p tcp —sport 3306 -m state —state ESTABLISHED -j ACCEPT

выставить кодировку UTF-8 по-умолчанию — файл /etc/my.cnf :

[mysqld]
init_connect=‘SET collation_connection = utf8_unicode_ci’
character-set-server = utf8
collation-server = utf8_unicode_ci

[client]
default-character-set = utf8

Contents

  • Русский
  • English
  • Deutsch
  • Español
  • Français
  • Português

Share

Sign up for our newsletter.

Get the latest tutorials on SysAdmin and open source topics.

Write for DigitalOcean You get paid, we donate to tech non-profits.

DigitalOcean Meetups Find and meet other developers in your city.

Hacktoberfest Contribute to Open Source

Related

Как установить MySQL в Ubuntu 18.04

Введение

MySQL является системой управления базами данных с открытым исходным кодом и обычно используется, как часть популярного стека LAMP (Linux, Apache, MySQL, PHP/Python/Perl). MySQL использует реляционную базу данных и SQL (Structured Query Language, язык структурированных запросов) для управления данными.

Короткая версия установки очень проста: достаточно обновить индекс пакетов, установить пакет mysql-server , а затем запустить скрипт настройки безопасности.

Это руководство описывает процесс установки MySQL версии 5.7 на сервер с Ubuntu 18.04. Если вам необходимо обновить установленную ранее версию MySQL до версии 5.7, вы можете ознакомиться с руководством по обновлению MySQL до версии 5.7.

Необходимые условия

Перед тем, как начать следовать шагам, описанным в этом руководстве, вам необходимо настроить отдельный, не-рутовый (non-root) профиль пользователя на вашем сервере с Ubuntu 18.04. Вы можете сделать это используя нашу статью о первичной настройке сервера на Ubuntu 18.04.

Читать еще:  Управление кулером linux

Шаг 1 — Установка MySQL

По умолчанию в репозиторий пакетов APT в Ubuntu 18.04 включена только последняя версия MySQL. На момент написания этого руководства это MySQL 5.7.

Для установки этой версии обновите индекс пакетов apt командой:

Затем установите пакет:

Эта команда установит MySQL, но при этом вам не будет предложено задать пароль или внести какие-либо правки в конфигурацию. Поскольку это делает установку небезопасной, рассмотрим далее, как настроить установленную MySQL.

Шаг 2 — Настройка MySQL

В случае новой установки MySQL вам необходимо выполнить скрипт безопасности. Он изменяет некоторые настройки по умолчанию на более безопасные, например, удалённый вход для пользователей root и пользователи, созданные по умолчанию. В старых версиях MySQL вам было необходимо также инициализировать директорию данных вручную, теперь это делается автоматически.

Выполните скрипт безопасности командой:

В результате выполнения этого скрипта вам будет предложено внести изменения в настройки безопасности вашей MySQL. Сначала вам будет предложено установить плагин валидации паролей (Validate Password Plugin), который позволяет тестировать надёжность паролей MySQL. Далее вам предложат задать пароль для пользователя root вашей установки MySQL. Выберите надёжный пароль и введите его два раза.

Далее вы можете выбирать Y и нажимать ENTER для всех последующих вопросов. При этом будут удалены некоторые анонимные пользователи и тестовые базы данных, будет отключена возможность удалённого входа для root пользователей, после чего все внесённые изменения будут применены к вашей установке MySQL.

Для инициализации директории данных MySQL вам необходимо использовать mysql_install_db для версий меньше, чем 5.7.6, и mysqld —initialize для версии 5.7.6 и более поздних версий. При этом, если вы устанавливаете MySQL для Debian как описано на шаге 1, директория данных будет создана автоматически и вам нет необходимости что-то делать. Если вы при этом попытаетесь всё равно выполнить команду создания директории данных, вы увидите следующую ошибку:

Обратите внимание, несмотря на то, что вы задали пароль для пользователя root для MySQL, этот пользователь не настроен для аутентификации по паролю при подключении к оболочке (shell) MySQL. Вы можете изменить эту настройку на следующем шаге 3.

Шаг 3 — (Опционально) Настройка аутентификации и привилегий

На серверах с Ubuntu, использующей MySQL 5.7 (и более поздние версии), пользователь root в MySQL по умолчанию аутентифицируется с помощью плагина auth_socket , а не по паролю. Это в целом более безопасно и удобно во многих случаях, но не в случае, когда вам необходимо организовать доступ к MySQL со стороны сторонней программы, например, phpMyAdmin.

Для того, чтобы пользователь root в MySQL мог использовать пароль для входа в систему вам необходимо изменить метод аутентификации с auth_socket на mysql_native_password . Для этого войдите в оболочку MySQL следующей командой:

Далее проверьте, какой метод аутентификации используется для каждого из ваших пользователей MySQL:

В этом примере ваш пользователь root использует аутентификацию с помощью плагина auth_socket . Для изменения этой настройки на использование пароля используйте следующую команду ALTER USER . Не забудьте изменить password на ваш сильный пароль:

Далее выполните команду FLUSH PRIVILEGES , которая применит внесённые изменения:

Проверьте методы авторизации для пользователей ещё раз для того, чтобы убедиться, что пользователь root более не использует плагин auth_socket для авторизации:

Как можно видеть на представленном выводе теперь root пользователь MySQL аутентифицируется с использованием пароля. После того, как мы в этом убедились, можно выйти из оболочки MySQL:

В некоторых случаях бывает полезно использовать для входа в MySQL отдельного пользователя. Для создания такого пользователя войдите в оболочку MySQL:

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

Далее создайте нового пользователя и задайте для него надёжный пароль:

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

Обратите внимание на то, что в этом случае вам нет необходимости выполнять команду FLUSH PRIVILEGES . Эта команда необходимо только тогда, когда вы изменяете таблицы доступа (grant tables) используя команды INSERT , UPDATE или DELETE . Поскольку вы создали нового пользователя, а не редактируете права существующего пользователя, команда FLUSH PRIVILEGES не является необходимой.

После этого, выйдите из оболочки MySQL:

Теперь мы можем протестировать нашу установку MySQL.

Шаг 4 — Тестирование MySQL

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

Вы увидите вывод, похожий на этот:

Если MySQL не запущена, вы можете запустить её с помощью команды sudo systemctl start mysql .

Для дополнительной проверки вы можете попробовать подключиться к базе данных с помощью инструмента mysqladmin , который представляет собой клиент, позволяющий запускать административные команды. Например, эта команда приказывает подключиться к MySQL в качестве пользователя root ( -u root ), запросить пароль ( -p ) и вернуть версию.

Читать еще:  Код ошибки 0xc000000e9

Вы увидите вывод, похожий на этот:

Это означает, что MySQL запущена и работает.

Заключение

Теперь на вашем сервере установлена и настроена MySQL. Вот несколько примеров того, что можно сделать дальше:

Установка mysql Ubuntu 16.04

MySQL — это одна из самых популярных систем управления базами данных, которая применяется почти везде, начиная от различных предприятий и промышленности и заканчивая организацией работы веб-сайтов.

Сейчас существует несколько версий MySQL. Непосредственно mysql, разрабатываемая компанией Oracle и свободный форк от основного разработчика mysql — MariaDB. Имя MairaDB программа получила в честь первой дочери программиста, также как и MySQL в честь имени второй. В большинстве дистрибутивов Linux используется MariaDB, в том числе и в Ubuntu. Мы будем рассматривать установку именно этой версии, но для совместимости она называется все еще MySQL. В этой статье мы рассмотрим как выполняется установка MySQL Ubuntu 16.04 или 16.10.

Установка MySQL в Ubuntu 16.04

Программа и все необходимые компоненты есть в официальных репозиториях, поэтому установить ее не составит труда. Для установки из официальных репозиториев сначала обновим списки пакетов:

sudo apt update

Затем установим необходимые пакеты:

sudo apt install mariadb-server mariadb-client

На данный момент в репозиториях Ubuntu 16.10 есть только версия MariaDB 10.0, но уже доступна стабильная версия MariaDB 10.1. Для ее установки нужно использовать официальный репозиторий разработчиков. Для добавления репозитория в Ubuntu 16.10 выполните:

sudo apt-get install software-properties-common
$ sudo apt-key adv —recv-keys —keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
$ sudo add-apt-repository ‘deb [arch=amd64,i386] http://mirror.klaus-uwe.me/mariadb/repo/10.1/ubuntu yakkety main’

А в Ubuntu 16.04:

sudo apt-get install software-properties-common
$ sudo apt-key adv —recv-keys —keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
$ sudo add-apt-repository ‘deb [arch=amd64,i386,ppc64el] http://mirror.klaus-uwe.me/mariadb/repo/10.1/ubuntu xenial main’

Затем, чтобы установить mysql Ubuntu 16.04 или 16.04 достаточно выполнить уже знакомую команду:

sudo apt update
$ sudo apt install mariadb-server mariadb-client

Во время установки нужно будет два раза ввести пароль для root пользователя базы данных:

После того как установка будет завершена, вы можете проверить все ли прошло успешно:

sudo systemctl status mysql

Вы должны увидеть зеленую надпись Active Running и версию программы, которую устанавливали.

Настройка mysql в Ubuntu

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

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

Дальше наберите Y чтобы установить пароль root:

Введите два раза новый пароль:

Введите Y для отключения анонимного доступа к mysql:

Еще раз Y чтобы запретить подключаться к базе от имени root удаленно:

Снова Y, чтобы удалить тестовую базу данных:

Последний шаг — это обновление привилегий для пользователей:

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

sudo mysql -u root -p

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

mysql> CREATE DATABASE testDB;

Далее создадим пользователя:

mysql> CREATE USER ‘my_user’@’localhost’ IDENTIFIED BY ‘password’;

Слова my_user и password нужно заменить на свои имя пользователя и пароль. Дальше нужно дать права пользователю на управление этой базой данных:

mysql> GRANT ALL ON testDB.* TO ‘my_user’@’localhost’;

Или вы можете дать права только на несколько инструкций:

mysql> GRANT SELECT,UPDATE,DELETE ON testDB.* TO ‘my_user’@’localhost’;

Если какую-либо инструкцию нужно запретить, удалите ее:

mysql> REVOKE UPDATE ON testDB.* FROM ‘my_user’@’localhost’;

После завершения работы с правами нужно их обновить:

mysql> FLUSH PRIVILEGES;

Чтобы убедиться что нет никого лишнего, вы можете вывести список пользователей:

mysql> SELECT user,host,password FROM mysql.user;

Также вы можете посмотреть полномочия для нужного пользователя:

mysql> SHOW GRANTS FOR ‘my_user’@’localhost’;

Теперь установка mysql ubuntu 16.04 полностью завершена и вы можете использовать эту базу данных для решения своих задач.

Удаление MySQL в Ubuntu

Чтобы удалить mysql Ubuntu 16.04 понадобиться немного больше команд чем для удаления простого пакета. После удаления основных пакетов в системе остается еще много файлов. Мы рассмотрим как удалить все.

Сначала остановите сервисы:

sudo service mysql stop
$ sudo killall -KILL mysql mysqld_safe mysqld

Удалите основные пакеты и их зависимости:

sudo apt -y purge mysql-server mysql-client
$ sudo apt -y autoremove —purge
$ sudo apt autoclean

Удалите пользователя mysql и остатки программы в системе:

deluser —remove-home mysql
$ sudo delgroup mysql
$ rm -rf /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/cache/usr.sbin.mysqld /etc/mysql /var/lib/mysql /var/log/mysql* /var/log/upstart/mysql.log* /var/run/mysqld
$ updatedb

Удалите все логи подключений к mysql из терминала:

sudo find / -name .mysql_history -delete

Теперь ваша система полностью очищена от MySQL.

Выводы

В этой статье мы рассмотрели как выполняется установка mysql ubuntu 16.04 или 16.10. Как видите, это не очень трудно, хотя и требует некоторых знаний и немного времени на то, чтобы со всем разобраться. Надеюсь, эта информация была для вас полезной.

Ссылка на основную публикацию
Adblock
detector