从标准源代码分发安装 MySQL:
验证您的系统是否满足第 2.9.2 节“源安装先决条件”中列出的工具要求。
使用第 2.1.3 节“如何获取 MySQL” 中的说明获取分发文件 。
使用本节中的说明配置、构建和安装分发版。
使用第 2.10 节“安装后设置和测试” 中的说明执行安装后过程 。
MySQL在所有平台上都使用CMake作为构建框架。此处给出的说明应该使您能够生成工作安装。有关使用CMake构建 MySQL 的其他信息,请参阅 如何使用 CMake 构建 MySQL 服务器。
如果您从源 RPM 开始,请使用以下命令制作您可以安装的二进制 RPM。如果您没有 rpmbuild,请改用rpm。
$> rpmbuild --rebuild --clean MySQL-VERSION.src.rpm
结果是您安装的一个或多个二进制 RPM 包,如第 2.5.5 节“使用来自 Oracle 的 RPM 包在 Linux 上安装 MySQL”中所述。
从压缩的tar文件或 Zip 存档源分发 安装的顺序 类似于从通用二进制分发安装的过程(请参阅第 2.2 节,“使用通用二进制文件在 Unix/Linux 上安装 MySQL”),除了它用于所有平台,包括配置和编译发行版的步骤。例如,对于 Unix 上的压缩 tar文件源分发,基本安装命令序列如下所示:
# Preconfiguration setup
$> groupadd mysql
$> useradd -r -g mysql -s /bin/false mysql
# Beginning of source-build specific instructions
$> tar zxvf mysql-VERSION.tar.gz
$> cd mysql-VERSION
$> mkdir bld
$> cd bld
$> cmake ..
$> make
$> make install
# End of source-build specific instructions
# Postinstallation setup
$> cd /usr/local/mysql
$> scripts/mysql_install_db --user=mysql
$> bin/mysqld_safe --user=mysql &
# Next command is optional
$> cp support-files/mysql.server /etc/init.d/mysql.server
mysql_install_db创建一个my.cnf
在基本安装目录中命名的默认选项文件。该文件是根据分发包中包含的模板创建的,名为my-default.cnf
. 有关详细信息,请参阅
第 5.1.2.2 节 “使用示例默认服务器配置文件”。
下面显示了源构建特定说明的更详细版本。
此处显示的过程不会为 MySQL 帐户设置任何密码。执行该过程后,继续 第 2.10 节“安装后设置和测试”,进行安装后设置和测试。
在 Unix 上,设置mysql
用于运行和执行 MySQL 服务器的用户和组,并拥有数据库目录。有关详细信息,请参阅
创建 mysql 用户和组。然后以用户身份执行以下步骤mysql
,除非另有说明。
选择要将分发包解压到的目录,并将位置更改为该目录。
使用第 2.1.3 节“如何获取 MySQL” 中的说明获取分发文件 。
将发行版解压到当前目录:
要解压缩压缩的tar文件, tar可以解压缩和解压缩发行版,如果它有
z
选项支持:$> tar zxvf mysql-VERSION.tar.gz
如果您的tar不
z
支持选项,请使用 gunzip解压发行版并 使用tar解压:$> gunzip < mysql-VERSION.tar.gz | tar xvf -
或者,CMake可以解压缩和解包分发:
$> cmake -E tar zxvf mysql-VERSION.tar.gz
要解压缩 Zip 存档,请使用WinZip或其他可以读取
.zip
文件的工具。
解压缩分发文件会创建一个名为
.
mysql-
VERSION
将位置更改为解压缩分发的顶级目录:
$> cd mysql-VERSION
在源代码树之外构建以保持树的清洁。如果顶级源目录在您当前的工作目录下命名
,您可以在同级mysql-src
命名的目录中构建
。bld
创建目录并转到那里:
$> mkdir bld
$> cd bld
配置构建目录。最小配置命令不包括覆盖配置默认值的选项:
$> cmake ../mysql-src
构建目录不需要在源代码树之外。例如,您可以在
bld
顶级源代码树下命名的目录中构建。为此,从mysql-src
您当前的工作目录开始,创建该目录
bld
,然后转到那里:
$> mkdir bld
$> cd bld
配置构建目录。最小配置命令不包括覆盖配置默认值的选项:
$> cmake ..
如果您在同一级别有多个源代码树(例如,构建多个版本的 MySQL),则第二种策略可能更有优势。第一种策略将所有构建目录置于同一级别,这要求您为每个目录选择一个唯一的名称。使用第二种策略,您可以为每个源代码树中的构建目录使用相同的名称。以下说明采用第二种策略。
在 Windows 上,指定开发环境。例如,以下命令分别为 32 位或 64 位构建配置 MySQL:
$> cmake .. -G "Visual Studio 12 2013"
$> cmake .. -G "Visual Studio 12 2013 Win64"
在 macOS 上,要使用 Xcode IDE:
$> cmake .. -G Xcode
运行cmake时,您可能希望向命令行添加选项。这里有些例子:
-DBUILD_CONFIG=mysql_release
:使用 Oracle 使用的相同构建选项配置源代码,以生成官方 MySQL 版本的二进制分发版。-DCMAKE_INSTALL_PREFIX=
:配置分发以在特定位置安装。dir_name
-DCPACK_MONOLITHIC_INSTALL=1
: 导致make package生成单个安装文件而不是多个文件。-DWITH_DEBUG=1
:构建具有调试支持的发行版。
有关更广泛的选项列表,请参阅 第 2.9.7 节,“MySQL 源配置选项”。
要列出配置选项,请使用以下命令之一:
$> cmake .. -L # overview
$> cmake .. -LH # overview with help text
$> cmake .. -LAH # all params with help text
$> ccmake .. # interactive display
如果CMake失败,您可能需要通过使用不同的选项再次运行它来重新配置。如果重新配置,请注意以下事项:
如果CMake在之前运行之后运行,它可能会使用在之前调用期间收集的信息。此信息存储在
CMakeCache.txt
. 当 CMake启动时,它会查找该文件并读取其内容(如果它存在),前提是信息仍然正确。当您重新配置时,该假设无效。每次运行CMake时,都必须再次运行 make以重新编译。但是,您可能希望先从以前的构建中删除旧的目标文件,因为它们是使用不同的配置选项编译的。
为防止使用旧的目标文件或配置信息,请在重新运行CMake之前在 Unix 上的构建目录中运行这些命令:
$> make clean
$> rm CMakeCache.txt
或者,在 Windows 上:
$> devenv MySQL.sln /clean
$> del CMakeCache.txt
在
MySQL Community Slack上询问之前,检查
CMakeFiles
目录中的文件以获取有关失败的有用信息。要提交错误报告,请使用第 1.6 节“如何报告错误或问题”中的说明。
在 Unix 上:
$> make
$> make VERBOSE=1
第二个命令设置VERBOSE
为显示每个编译源的命令。
在您使用 GNU make并且它已安装为 gmake的系统上 使用gmake代替。
在 Windows 上:
$> devenv MySQL.sln /build RelWithDebInfo
如果您已进入编译阶段,但未构建分发版,请参阅
第 2.9.8 节“处理编译 MySQL 的问题”以获得帮助。如果这不能解决问题,请使用第 1.6 节“如何报告错误或问题”中给出的说明将其输入我们的错误数据库。如果您已经安装了所需工具的最新版本,并且它们在尝试处理我们的配置文件时崩溃,请同时报告。但是,如果您遇到command not
found
所需工具的错误或类似问题,请不要报告。相反,请确保安装了所有必需的工具并且PATH
正确设置了变量,以便您的 shell 可以找到它们。
在 Unix 上:
$> make install
这会将文件安装在配置的安装目录下(默认情况下为/usr/local/mysql
)。您可能需要以root
.
要在特定目录中安装,请在
DESTDIR
命令行中添加一个参数:
$> make install DESTDIR="/opt/mysql"
或者,生成您可以安装在您喜欢的位置的安装包文件:
$> make package
此操作会生成一个或多个.tar.gz
文件,这些文件可以像通用二进制分发包一样安装。请参阅第 2.2 节,“使用通用二进制文件在 Unix/Linux 上安装 MySQL”。如果您使用 运行
CMake,
-DCPACK_MONOLITHIC_INSTALL=1
该操作会生成一个文件。否则,它会生成多个文件。
在 Windows 上,生成数据目录,然后创建一个
.zip
存档安装包:
$> devenv MySQL.sln /build RelWithDebInfo /project initial_database
$> devenv MySQL.sln /build RelWithDebInfo /project package
您可以将生成的.zip
存档安装在您喜欢的位置。请参阅第 2.3.4 节,“使用
noinstall
ZIP 存档在 Microsoft Windows 上安装 MySQL”。
安装过程的其余部分包括设置配置文件、创建核心数据库和启动 MySQL 服务器。有关说明,请参阅 第 2.10 节 “安装后设置和测试”。
MySQL 授权表中列出的帐户最初没有密码。启动服务器后,您应该使用第 2.10 节“安装后设置和测试”中的说明为它们设置密码 。