MySQL
MySQL — это бесплатная популярная система для работы с реляционными базами данных. Она часто используется в сочетании с веб-приложениями (например, многими сайтами на PHP), но с момента начала разработки в 1994 году она получила и множество других возможностей. Также есть форк MariaDB.
Установка
USE-флаги
Перед установкой dev-db/mysql , тщательно рассмотрите USE-флаги, которые влияют на развертывание и возможности пакета. Следующая таблица показывает некоторые из поддерживаемых данным пакетом USE-флагов:
USE flags for dev-db/mysql Fast, multi-threaded, multi-user SQL database server
+perl
Add optional support/bindings for the Perl language
+server
Build the server program
cjk
Add CJK support for InnoDB fulltext search using app-text/mecab
cracklib
Support for cracklib strong password checking
debug
Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
jemalloc
Use dev-libs/jemalloc for memory management
latin1
Use LATIN1 encoding instead of UTF8
numa
Enable NUMA support using sys-process/numactl (NUMA kernel support is also required)
profiling
Add support for statement profiling (requires USE=community).
router
Build the MySQL router program
selinux
!!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur
tcmalloc
Use the dev-util/google-perftools libraries to replace the malloc() implementation with a possibly faster one
test
Install upstream testsuites for end use.
test-install
Install testsuite for manual execution by the user
verify-sig
Verify upstream signatures on distfiles
Emerge
Как только необходимые USE-флаги были установлены, установите MySQL:
root #emerge --ask dev-db/mysqlКонфигурация
Сервис
OpenRC
Чтобы база(ы) данных запускались автоматически при загрузке, добавьте init скрипт mysql на уровень запуска default (по умолчанию):
root #rc-update add mysql defaultПосле настройки базы данных, про которую будет написано далее в данном документе, запустите сервис mysql:
root #rc-service mysql startПредварительная настройка
Пакет dev-db/mysql выполняет предварительную настройку MySQL через параметр --config:
root #emerge --config dev-db/mysqlЭто приведет к созданию базы данных, установке на нее правильных разрешений, и помощи в выборе хорошего пароля для root (это для аккаунта пользователя root в MySQL, который не связан с аккаунтом root в Linux).
Чтобы убрать анонимных пользователей и тестовые базы данных из установки, запустите mysql_secure_installation после предварительной настройки:
root #mysql_secure_installationНастройка внутри базы данных
Когда база данных запущена, соединитесь с ней, используя клиентское приложение mysql.
user $mysql -u root -p -h localhostEnter root password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 5.5.1 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
После данного сообщения будет открыта сессия MySQL, позволяющая вводить запросы и административные команды.
Стирание истории команд
По умолчанию MySQL ведет лог каждого действия, включая незашифрованные пароли в своем файле истории.
Чтобы удалить файл истории:
root #rm /root/.mysql_historyЛибо вы можете полностью отключить запись истории с помощью следующей команды:
root #ln -sf /dev/null /root/.mysql_history