![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
В этой главе описывается, как получить и установить MySQL Router.
Загрузки доступны с https://dev.mysql.com/downloads/router. Есть двоичные дистрибутивы MySQL Router, доступные для нескольких
вариантов Linux, включая Fedora, Oracle Linux, Red Hat и Ubuntu. Опции инсталляции включают:
Скачать официальные пакеты MySQL
: Загрузки доступны с https://dev.mysql.com/downloads/router.
Загрузите и установите с использованием вашего
предпочтительного диспетчера пакетов. Альтернативно, MySQL Router включен в исходные тексты MySQL Server
и монолитные двоичные сборки MySQL Router 8.0.13. Скачайте и соберите исходные тексты
: исходный код доступен с
https://dev.mysql.com/downloads/router как пакеты
Для получения информации о компилировании MySQL Router см.
здесь. Процедура установки на Linux зависит от вашего дистрибутива Linux. Установка MySQL Router, используя официальный пакет DEB или RPM создает
местного пользователя системы и группу, названную "mysqlrouter" на хосте,
на котором работает по умолчанию MySQL Router.
Для получения дополнительной информации посмотрите опцию настройки
В Ubuntu и других системах, которые используют схему пакета Debian, можно
загрузить и установить .deb пакеты или использовать диспетчер пакетов APT.
Установите репозитарий MySQL APT как описано в
документации MySQL APT Repository: Загрузите пакет конфигурации APT с
https://dev.mysql.com/downloads/repo/apt/.
Включите на экране конфигурации "MySQL Tools & Connectors". Обновите свое хранилище APT:
Установите MySQL Router:
Можно также загрузить .deb пакет и установить его из командной строки:
На основанных на RPM системах можно загрузить и установить пакеты RPM или
использовать Yum package manager. Во-первых, установите хранилище MySQL Yum, как описано в
документации MySQL Yum Repository:
Загрузите пакет конфигурации Yum
отсюда.
Затем установите MySQL Router:
Процедура деинсталляции MySQL Router в Linux
зависит от пакета, который вы используете. Чтобы деинсталлировать пакет Debian, используйте эту команду:
Эта команда не удаляет конфигурационные файлы. Чтобы также удалить их и
каталог данных, используйте:
Альтернативно, можно использовать
Чтобы деинсталлировать пакет RPM, используйте эту команду:
Точно так же можно использовать
Эта команда не удаляет конфигурационные файлы. Если не производить чистку, процесс деинсталляции не удаляет ваши
конфигурационные файлы. На системах Debian это могло бы включать
такие файлы, как:
Загрузите архив DMG с
https://dev.mysql.com/downloads/router/ и выполните его, чтобы
установить MySQL Router. Альтернативно, загрузите, распакуйте и вручную установите
файл MySQL Router для Windows может быть установлен, используя MySQL Installer,
который устанавливает и обновляет все продукты MySQL в Windows, или
загружая архив ZIP. Для версии Community MySQL Router:
Нужен Visual C++ Redistributable для Visual Studio 2015 (доступно на
Microsoft Download Center). Установите его прежде, чем установить
MySQL Router в Windows. Общая загрузка MySQL Installer доступна с
https://dev.mysql.com/downloads/windows/installer/. MySQL Installer
может установить, модернизировать и управлять большинством продуктов MySQL,
включая MySQL Router. MySQL Installer также включает возможность
автонастройки MySQL Router с кластером MySQL InnoDB. Управление всеми вашими продуктами MySQL, включая MySQL Router, с
MySQL Installer является рекомендуемым подходом. Это работает со всеми
требованиями, предпосылками, процедурами конфигурации и модернизациями. Используя MySQL Installer, можно выбрать MySQL Router
в качестве одного из продуктов, чтобы установить или модернизировать. MySQL Router, как правило, устанавливается в
Для получения информации об установке и старте роутера как службы
Windows см.
раздел 5.1. Загрузка прхива ZIP доступна с
https://dev.mysql.com/downloads/router/. В отличие от установки с MySQL Installer, распаковка архива MySQL Router
ZIP не проверяет зависимости в вашей системе, такие как необходимый
VC++ 2015 runtime. Устанавливая MySQL Router, используя архив ZIP, загрузите
и установите Visual C++ Redistributable for Visual Studio 2015
перед использованием MySQL Router. После установки VC++ 2015 runtime распакуйте архив ZIP и выполните
Для получения информации об установке и использовании MySQL Router как
сервиса Windows см.
раздел 5.1. MySQL Router написан, используя C++. По сути, необходимо собрать код
прежде чем можно будет установить его. Компиляция типична для большинства
приложений C++, как продемонстрировано ниже. CMake обеспечивает контроль над тем, как вы формируете исходный
дистрибутив MySQL Router. Как правило, вы делаете это использованием опций
в командной строке CMake. Для получения информации об опциях, поддержанных
CMake, выполните любую из этих команд в исходном каталоге MySQL Router:
По умолчанию инсталляционные префиксы используются.
Это отличается для каждой платформы, но для большинства подобных Unix
платформ это " Заметьте, что мы используем опцию
Опции CMake не описаны здесь, но они подобны опциям CMake для MySQL
Server. См. MySQL Source-Configuration Options. Загрузите и распакуйте исходные файлы, затем выполните шаги, определенные
для вашей платформы. Как только это выполнено, надо сконфигурировать и собрать MySQL Router с
помощью cmake. Наши примеры используют местоположение стандартной установки
Установка MySQL Router производит файл, названный
Однако, есть
предпосылки для компилирования исходного кода MySQL Router. Следующие компоненты и библиотеки требуются, чтобы собрать
MySQL Router в Linux:
Системы в качестве примера, которые включают эту поддержку, являются
Ubuntu 14.04 и позже, Oracle Linux 7 и macOS 10.10 и выше. Enterprise Linux 6: компиляция работает, но требует Библиотеки
Software Collection Library 1.2. Для Oracle Linux см.
Docs и
Downloads. Для RedHat и CentOS см.
Docs и
Downloads. MySQL Server 5.5 и позже библиотеки клиента и заголовочные файлы.
Например, на Ubuntu это пакет Инструменты разработки кода включая gcc, make и различные утилиты для
C++ 11, включая GCC 4.8 и позже, glibc 2.17 и позже и clang 3.3 и позже.
SLES 12 considerations: с MySQL 8.0.13 эти двоичные модули собраны
GCC 7, самая низкая поддержанная версия GCC на этой платформе теперь 5.3.
Это изменение означает, что хранилище GCC Devel требуется. Например:
CMake 2.8.9 или выше. Protobuf 3.0. Если ваша установка MySQL Server не включает заголовочные файлы и
собранные библиотеки клиента, то вы, возможно, должны загрузить исходный код
для MySQL Server. Чтобы собрать исходный код, необходимо создать папку, чтобы хранить
собранные файлы, управлять cmake, чтобы создать make-файл, затем собрать код.
Следующее демонстрирует шаги, необходимые на машине с Ubuntu.
Другие платформы подобны. Для некоторых платформ, таких как Oracle Enterprise Linux 6,
вы, возможно, также должны установить
devtoolset software collection. Если вы получаете ошибку, что библиотеки MySQL не могут быть найдены, то
проверьте перечисленные пути. Если библиотеки клиента или каталог
Например, на платформах Debian и RPM
были бы нужны пакеты, которые содержат библиотеки и файлы заголовков.
Если бы вы установили MySQL от определенного для платформы хранилища,
необходимо было бы установить пакеты
Если вы изменяете что-нибудь и должны повторно собрать с нуля,
несомненно, удалите файл Начните с запуска Затем соберите код. Для этого нам нужна только команда
Как только исходный код собран, можно установить MySQL Router
на системе следующей командой. Обратите внимание на то, что вам, возможно,
понадобятся большие привилегии (например, sudo), чтобы установить.
Можно гарантировать установку следующей командой.
Необходимо видеть подобный вывод в системе. Пример установки роутера для
простого направления доступен в
разделе 3.2. Наш пример предполагает, что
mysqlrouter
находится в PATH системы. В этом случае PATH включает
Используйте команду
Глава 2. Установка MySQL Router
2.1. Установка MySQL Router в Linux
tar.gz
или RPM. Альтернативно, исходный код
также
есть на GitHub.user
.Установка пакетов DEB
Использование APT Package Manager
shell> sudo dpkg -i mysql-apt-config_0.8.8-1_all.deb
shell>
sudo apt-get update
shell>
sudo apt-get install mysql-router
Установка пакета вручную
shell>
sudo dpkg -i
package
.deb
это имя пакета MySQL Router, например,
package
.debmysql-router-
, где
version
-1ubu1604-amd64.debversion
номер версии MySQL Router.
Установка пакетов RPM
Применение Yum Package Manager
shell> sudo rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
shell>
sudo yum install mysql-router
Ручная установка пакета RPM
shell>
sudo rpm -i
package
.rpm
это имя пакета MySQL Router, например,
package
.rpmmysql-router-
, где
version
-el7.x86_64.rpmversion
номер версии MySQL Router.
Деинсталляция
Деинсталляция пакетов DEB
shell>
sudo dpkg -r mysql-router
shell>
sudo dpkg --purge mysql-router
apt-get remove mysql-router
или
apt-get purge mysql-router
.Деинсталляция пакетов RPM
shell>
sudo rpm -e mysql-router
yum remove mysql-router
.Что не удалено
/etc/init.d/mysqlrouter
/etc/mysqlrouter/mysqlrouter.conf
/etc/apparmor.d/usr.sbin.mysqlrouter
2.2. Установка MySQL Router в macOS
.tar.gz
.2.3.
Установка MySQL Router в Windows
Требования для Windows
Установка через MySQL Installer
Рекомендуемый подход
C:\
, где
%PROGRAMFILES%
\MySQL\MySQL Router 8.0%PROGRAMFILES%
каталог по умолчанию для программ. Каталог
%PROGRAMFILES%
определяется как
C:\Program Files\
на большинстве систем.
Установка архива ZIP
bin/mysqlrouter.exe
.2.4.
Установка MySQL Router из исходных текстов
shell>
cmake . -LH
shell> ccmake .
/usr/local
".
Возможно изменить инсталляционный путь переменной
CMake "CMAKE_INSTALL_PREFIX":
shell>
mkdir build && cd build
shell> cmake .. -DINSTALL_LAYOUT=STANDALONE -DCMAKE_INSTALL_PREFIX=/opt/mysql/router8.0
-DINSTALL_LAYOUT=STANDALONE
, чтобы
использовать то же самое инсталляционное расположение, как используется для
пакетов .tar.gz и .zip. Это рекомендуемое значение для сборки.Linux и macOS
shell>
tar xzf mysql-router-8.0.14-src.tar.gz
shell> cd mysql-router-8.0.14-src
/usr/local
.install_manifest.txt
, который
перечисляет все файлы (с путями), установленные в системе. Этот файл полезен
для удаления MySQL Router.2.4.1. Требования
libmysqlclient-dev
.
shell> cd /etc/zypp/repos.d/
shell> wget https://download.opensuse.org/repositories/devel:/gcc/SLE-12/devel:gcc.repo
2.4.2. Компилирование исходного кода
include
не существуют, вы, возможно, должны
сослаться на собранную копию исходного кода MySQL Server при помощи опции
-DWITH_MYSQL=<path to server code>
.
Более определенно компилятор должен быть в состоянии найти библиотеки клиента
MySQL и включаемые файлы. Если libmysqlclient сохранен в другом месте, то
-DMySQL_CLIENT_LIB=/path/to/libmysqlclient.so
может также использоваться. У собранного дерева исходного кода сервера
будут эти файлы.mysql-community-libs
и
mysql-community-devel
.CMakeCache.txt
перед выполнением cmake
.cmake
, чтобы создать
make-файл. Следующие командаы выполняются от корня дерева исходного кода
MySQL Router. Необходимо видеть подобные результаты с соответствующими
путями для системы.
shell>
mkdir build
shell> cd build
shell> cmake ..-DWITH_MYSQL=<path to binaries and libraries>
-- The C compiler identification is GNU 4.9.2
-- The CXX compiler identification is GNU 4.9.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Loading internal repository
-- Installation layout set to DEFAULT
-- Adding MySQL Harness from /home/cbell/source/git/mysql-router-2.0.2/mysql_harness
-- Harness will install plugins in lib/mysqlrouter
-- MySQL Harness CPU Descriptor is x86_64
-- MySQL Harness OS Descriptor is linux
-- MySQL Harness Compiler Descriptor is gnu-3
-- MySQL Harness Runtime Descriptor is *
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.9.1")
-- Performing Test COMPILER_SUPPORTS_CXX11
-- Performing Test COMPILER_SUPPORTS_CXX11 - Success
-- Performing Test COMPILER_SUPPORTS_CXX0X
-- Performing Test COMPILER_SUPPORTS_CXX0X - Success
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Performing Test support_11
-- Performing Test support_11 - Success
-- Performing Test support_0x
-- Performing Test support_0x - Success
-- Found MySQL Libraries 5.6.27; using <path to server code>/lib/libmysqlclient.so
-- Loading module 'router'
-- Loading module 'routing'
-- Configuring done
-- Generating done
-- Build files have been written to: <path to router code>/build
make
как показано. Снова необходимо видеть
подобные результаты в системе.
shell>
make
Scanning dependencies of target harness-archive
[2%] Building CXX object harness/harness/CMakeFiles/harness-archive.dir/src/loader.cc.o
[5%] Building CXX object harness/harness/CMakeFiles/harness-archive.dir/src/utilities.cc.o
[8%] Building CXX object harness/harness/CMakeFiles/harness-archive.dir/src/config_parser.cc.o
[ 11%] Building CXX object harness/harness/CMakeFiles/harness-archive.dir/src/designator.cc.o
[ 14%] Building CXX object harness/harness/CMakeFiles/harness-archive.dir/src/filesystem-posix.cc.o
Linking CXX static library libmysqlharness.a
[ 14%] Built target harness-archive
Scanning dependencies of target harness-library
[ 17%] Building CXX object harness/harness/CMakeFiles/harness-library.dir/src/loader.cc.o
[ 20%] Building CXX object harness/harness/CMakeFiles/harness-library.dir/src/utilities.cc.o
[ 22%] Building CXX object harness/harness/CMakeFiles/harness-library.dir/src/config_parser.cc.o
[ 25%] Building CXX object harness/harness/CMakeFiles/harness-library.dir/src/designator.cc.o
[ 28%] Building CXX object harness/harness/CMakeFiles/harness-library.dir/src/filesystem-posix.cc.o
Linking CXX shared library libmysqlharness.so
[ 28%] Built target harness-library
Scanning dependencies of target logger
[ 31%] Building CXX object harness/plugins/logger/CMakeFiles/logger.dir/logger.cc.o
Linking CXX shared library ../../../stage/lib/mysqlrouter/logger.so
[ 31%] Built target logger
Scanning dependencies of target keepalive
[ 34%] Building CXX object harness/plugins/keepalive/CMakeFiles/keepalive.dir/src/keepalive.cc.o
Linking CXX shared library ../../../stage/lib/mysqlrouter/keepalive.so
[ 34%] Built target keepalive
Scanning dependencies of target router_lib
[ 37%] Building CXX object src/router/src/CMakeFiles/router_lib.dir/router_app.cc.o
[ 40%] Building CXX object src/router/src/CMakeFiles/router_lib.dir/arg_handler.cc.o
[ 42%] Building CXX object src/router/src/CMakeFiles/router_lib.dir/utils.cc.o
[ 45%] Building CXX object src/router/src/CMakeFiles/router_lib.dir/datatypes.cc.o
[ 48%] Building CXX object src/router/src/CMakeFiles/router_lib.dir/plugin_config.cc.o
Linking CXX shared library ../../../stage/lib/libmysqlrouter.so
[ 48%] Built target router_lib
Scanning dependencies of target mysqlrouter
[ 51%] Building CXX object src/router/src/CMakeFiles/mysqlrouter.dir/main.cc.o
Linking CXX executable ../../../stage/bin/mysqlrouter
[ 51%] Built target mysqlrouter
Scanning dependencies of target routing
[ 77%] Building CXX object src/routing/CMakeFiles/routing.dir/src/routing_plugin.cc.o
[ 80%] Building CXX object src/routing/CMakeFiles/routing.dir/src/plugin_config.cc.o
[ 82%] Building CXX object src/routing/CMakeFiles/routing.dir/src/mysql_routing.cc.o
[ 85%] Building CXX object src/routing/CMakeFiles/routing.dir/src/utils.cc.o
[ 88%] Building CXX object src/routing/CMakeFiles/routing.dir/src/destination.cc.o
[ 94%] Building CXX object src/routing/CMakeFiles/routing.dir/src/dest_first_available.cc.o
[ 97%] Building CXX object src/routing/CMakeFiles/routing.dir/src/uri.cc.o
[100%] Building CXX object src/routing/CMakeFiles/routing.dir/src/routing.cc.o
Linking CXX shared library ../../stage/lib/mysqlrouter/routing.so
[100%] Built target routing
2.4.3. Установка из исходного кода
shell>
sudo make install
[ 14%] Built target harness-archive
[ 28%] Built target harness-library
[ 31%] Built target logger
[ 34%] Built target keepalive
[ 48%] Built target router_lib
[ 51%] Built target mysqlrouter
[100%] Built target routing
Install the project...
-- Install configuration: ""
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/loader.h
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/filesystem.h
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/plugin.h
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/config_parser.h
-- Installing: /usr/local/lib/libmysqlharness.a
-- Installing: /usr/local/lib/libmysqlharness.so.0
-- Up-to-date: /usr/local/lib/libmysqlharness.so
-- Set runtime path of "/usr/local/lib/libmysqlharness.so.0" to "$ORIGIN/../lib"
-- Installing: /usr/local/lib/mysqlrouter/keepalive.so
-- Set runtime path of "/usr/local/lib/mysqlrouter/keepalive.so" to "$ORIGIN"
-- Installing: /usr/local/lib/mysqlrouter/logger.so
-- Set runtime path of "/usr/local/lib/mysqlrouter/logger.so" to "$ORIGIN"
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/logger.h
-- Up-to-date: /usr/local/share/doc/mysqlrouter/README.txt
-- Up-to-date: /usr/local/share/doc/mysqlrouter/License.txt
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/plugin_config.h
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/utils.h
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/datatypes.h
-- Installing: //var
-- Installing: //var/local
-- Installing: //var/local/mysqlrouter
-- Installing: //var/local/mysqlrouter/log
-- Installing: //var
-- Installing: //var/local
-- Installing: //var/local/mysqlrouter
-- Installing: //var/local/mysqlrouter/run
-- Installing: /usr/local/etc
-- Installing: /usr/local/etc/mysqlrouter
-- Installing: /usr/local/bin/mysqlrouter
-- Set runtime path of "/usr/local/bin/mysqlrouter" to "$ORIGIN/../lib"
-- Installing: /usr/local/lib/libmysqlrouter.so.1
-- Up-to-date: /usr/local/lib/libmysqlrouter.so
-- Set runtime path of "/usr/local/lib/libmysqlrouter.so.1" to "$ORIGIN/../lib"
-- Installing: /usr/local/lib/mysqlrouter/routing.so
-- Set runtime path of "/usr/local/lib/mysqlrouter/routing.so" to "$ORIGIN"
-- Up-to-date: /usr/local/include/mysql/mysqlrouter/routing.h
2.4.4. Тестирование установки
/usr/local/bin
.
shell>
mysqlrouter --help
MySQL Router v8.0.14 on Linux (64-bit) (GPL community edition)
Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of
their respective owners.
Start MySQL Router.
Configuration read from the following files in the given order (enclosed
in parentheses means not available for reading):
(/etc/mysqlrouter/mysqlrouter.conf)
/home/philip/.mysqlrouter.conf
...
mysqlrouter --version
,
чтобы проверить версию.
Найди своих коллег! |
Вы можете
направить письмо администратору этой странички, Алексею Паутову.