MySQL

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page MySQL and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎français • ‎русский • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어
Resources

MySQL это бесплатная популярная система для работы с реляционными базами данных. Она часто используется в сочетании с веб-приложениями (например, многими сайтами на PHP), но с момента начала разработки в 1994 году она получила и множество других возможностей. Также есть форк MariaDB.

Установка

USE flags

Перед установкой dev-db/mysql, тщательно рассмотрите USE-флаги, которые влияют на развертывание и возможности пакета. Следующая таблица показывает некоторые из поддерживаемых данным пакетом USE-флагов:

USE flags for dev-db/mysql A fast, multi-threaded, multi-user SQL database server

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
libressl Enable SSL connections and crypto functions using dev-libs/libressl
numa Enable NUMA support using sys-process/numactl (NUMA kernel support is also required)
perl Add optional support/bindings for the Perl language
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
server Build the server program
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.

Emerge

Как только необходимые USE-флаги были установлены, установите dev-db/mysql:

root #emerge --ask mysql

Конфигурация

Service

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 localhost
Enter 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

Смотрите также