- Установка и первоначальная настройка MySQL в linux
- Установка MySQL из репозитория
- Установка сервера MySQL из репозитория
- Установка клиента MySQL из репозитория
- Установка библиотек MySQL для поддержки компиляции (MySQL development) из репозитория
- Первоначальная настройка MySQL
- Задать пароль MySQL root
- Настройка MySQL для работы в производственной среде
- Создать необходимую базу данных и пользователя для нее
- Sergey Danielyan
- Правильная установка и настройка MySQL в Linux
- Установка MySQL
- Настройка сервера
- Запуск mysqld ос linux осуществляется как
- 2.4.3 Автоматический запуск и остановка MySQL
- User Comments
- Установка MySQL Linux — настройка и запуск
- Установка 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>_
Это командная строка 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
Проверяем, установлен ли 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):
Если кто забыл соответствие цифрового значения runlevel‘а символьному:
Стартуем демон mysql:
Настройка сервера
Теперь пора настроить сервер. Начнем с пользователей.
Вот состояние таблицы 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) можно установить таким образом:
Близится финал нашего действия. Осталось две вещи:
- открыть порты для 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
Источник
Запуск mysqld ос linux осуществляется как
2 Установка MySQL
2.4 Послеустановочные настройка и тестирование
- 2.4.1 Проблемы при запуске mysql_install_db
- 2.4.2 Проблемы при запуске сервера MySQL
- 2.4.3 Автоматический запуск и остановка MySQL
Buy this Reference Manual in softcover from Barnes & Noble!
2.4.3 Автоматический запуск и остановка MySQL
Скрипты mysql.server и safe_mysqld могут применяться для автоматического запуска сервера во время загрузки операционной системы. Скрипт mysql.server можно также использовать для остановки сервера.
Чтобы применять скрипт mysql.server для запуска или остановки сервера, его следует вызывать с аргументами start или stop соответственно:
mysql.server можно найти в подкаталоге `share/mysql' инсталляционного каталога MySQL или в каталоге `support-files' набора исходных кодов MySQL.
Перед тем как скрипт mysql.server запустит сервер, он изменяет данный каталог на инсталляционный каталог MySQL, затем вызывает safe_mysqld . Возможно, понадобится отредактировать скрипт mysql.server , если бинарный дистрибутив установлен вами не в стандартном месте. Модифицируйте его, указав cd в соответствующий каталог перед тем, как он запустит safe_mysqld . Если вы хотите запустить сервер от определенного пользователя, то добавьте соответствующую строку user к файлу `/etc/my.cnf' как показано далее в этом разделе.
mysql.server stop останавливает сервер путем посылки ему сигнала. Можно остановить сервер вручную — при помощи команды mysqladmin shutdown .
Вам следует добавить эти команды запуска и остановки в соответствующее место в файлах `/etc/rc*', если вы хотите автоматически запускать MySQL на вашем сервере.
На современных поставках Linux, достаточно скопировать файл mysql.server в каталог `/etc/init.d' (или `/etc/rc.d/init.d' на более старших системах Red Hat). После этого, выполните такую команду, чтобы включить автоматический запуск MySQL при загрузке системы:
В качестве альтернативы, в некоторых ОС также используются `/etc/rc.local' или `/etc/init.d/boot.local' для запуска дополнительных сервисов при загрузке. Для того, чтобы MySQL стартовал с использованием этого метода, вы можете добавить нечто вроде этого к указанным файлам:
Можно также добавить опции для скрипта mysql.server в глобальный файл `/etc/my.cnf'. Типовой файл `/etc/my.cnf' может выглядеть следующим образом:
Скрипт mysql.server понимает следующие опции: datadir , basedir и pid-file .
В таблице представлены группы опций, которые каждый из перечисленных запускающих скриптов читает из файлов опций:
Скрипт | Группы опций |
mysqld | mysqld и server |
mysql.server | mysql.server , mysqld , и server |
safe_mysqld | mysql.server , mysqld , и server |
User Comments
Posted by Matt Warren on Thursday September 26 2002, @1:40pm | [Delete] [Edit] |
The comments in mysql.server say
# Usually this is put in /etc/init.d (at least on machines
SYSV R4 based
# systems) and linked to /etc/rc3.d/S99mysql and /etc/
rc0.d/S01mysql.
This last link should be rc0.d/K01mysql
The K prefix does a «stop» and the S prefix does a «start»
agrument for the script. One wouldn’t want to start mysql at
the «shutdown» run level of zero.
Источник
Установка MySQL Linux — настройка и запуск
Система управления базами данных MySQL является очень универсальным программным продуктом. На ее основе можно создать движок для сайта, подключить имеющуюся базу данных, брать оттуда данные и вносить изменения.
В ОС Linux система работает в качестве демона — запущенного сервера.
Установка MySQL Linux производиться из консоли, минуя графические интерфейсы, во-первых надо знать подобную программу хорошо, если уж возникла потребность ей пользоваться, во-вторых нужно произвести базовые настройки, которые потом может придется корректировать.
Думается, аргументов хватит.
В различных дистрибутивах установка и запуск MySQL Linux производится немного по-разному, а настройка MySQL сервера одинакова.
Все действия производится от имени суперпользователя.
Установка MySQL в трех популярных дистрибутивах
Сейчас Gentoo нормально тянет нужные пакеты, если в выводе этой команды потребуется добавить что то и MySQL не установится, нужно добавить строки, подсвеченные зеленым шрифтом в файл /etc/portage/package.use, сохранить его и снова произвести установку.
Далее производим начальную настройку, генерируя конфигурацию по умолчанию
Запуск MySQL Linux:
добавляем его в автозагрузку:
Далее запускам демона и создаем первичную конфигурацию добавляем его в автозапуск:
Debian подобные системы, тоже устанавливаем, запускаем сервер, делаем его автоматически стартуемым, только первичная конфигурация создается не отдельной командой, а в процессе всей установки
Установка MySQL Linux закончена, но в процессе выполнения приведенных команд при запуске скрипта настройки конфигурации по умолчанию потребуется ввести несколько параметров. Вот достаточно безопасная настройка MySQL Linux сервера:
первый вопрос пропускаем, нажимаем Enter, на втором устанавливаем пароль для root – администратора сервиса, на третьем удаляем анонимного пользователя (жмем букву Y), на 4-м разрешаем соединения с удаленными серверами, на 5-м — оставляем пока тестовую базу, и в завершении перезагружаем привилегии (опять жмем Y).
Затем смотрим таблицу пользователей командой:
Выйдет табличка в псевдографике, в ней должен остаться один пользователь root.
Если на компьютере настроен файрволл, то откроем на нем tcp-порт 3306 для MySQL на входящие и исходящие соединения.
Запуск MySQL Linux сервера после окончательной настройки
Далее надо сделать заново запуск MySQL Linux сервера, и уже можно работать.
Вводим в консоль MySQL, в консоли появится приглашение
Далее, вводя команды (сервис работает со стандартным языком MySQL-запросов), можно:
- SHOW DATABASES; -посмотреть существующие базы данных;
- CREATE DATABASE test2; — создать новую базу данных с именем test2;
- USE test2; — использовать для текущих изменений базу test2;
Можно составлять таблицы, заполнять их содержимым, настраивать связи, создавать запросы для извлечения данных, т.е. уже полноценно работать с базами данных.
Такая установка MySQL Linux довольно примитивна, обычно ставится сразу три пакета — php, веб-сервер и MySQL, так как они тесно взаимосвязаны. Такой метод позволяет управлять базами данных и веб-приложениями уже не в консоли, а в окне браузера.
Также рекомендуем Вам к прочтению статьи, имеющие к этой процедуре отношение:
Источник