在基于RPM的Linux发行版上安装MySQL的推荐方法是使用Oracle提供的RPM包。MySQL社区版有两个获取它们的来源:
从MySQL软件库:
MySQL Yum存储库(参见第2.5.1节,“使用MySQL Yum库在Linux上安装MySQL”详情)。
MySQL SLES存储库(参见第2.5.4节,“使用MySQL SLES库在Linux上安装MySQL”详情)。
其他供应商也提供了MySQL的RPM发行版。请注意,它们可能在特性、功能和约定(包括通信设置)方面与Oracle构建的版本有所不同,本手册中的安装说明不一定适用于它们。应参考供应商的指示。
如果您的系统上有这样一个MySQL的第三方发行版,并且现在想要使用从MySQL开发者专区下载的RPM包迁移到Oracle的发行版,请参阅博彩到10bet娱乐城兼容其他厂商的RPM包在下面。但是,迁移的首选方法是使用MySQL Yum资源库或MySQL SLES库.
MySQL 5.6的RPM包有两种:
较老的类型:它们的包名以
MYSQL -
.它们可以从MySQL下10bet手机中文版载页MySQL开发区域.本节给出的说明是用于使用这些包的。较新的类型:它们的包名称以
mysql社区-
或mysql-commercial -
.它们可以从MySQL Yum资源库而且MySQL SLES库.如果您不是将系统配置为直接从MySQL存储库安装这些RPM(这是推荐的),而是从存储库下载这些包,然后按不同的步骤手动安装它们,则使用中给出的MySQL 5.7 RPM的安装命令使用Oracle的RPM包在Linux上安装MySQL,但有关安装布局、服务器初始化、root密码等信息,请参考本节。
MySQL的RPM包如下表所示:
表2.9 MySQL社区版RPM包
包名 | 总结 |
---|---|
mysql服务器 |
数据库服务器及相关工具 |
mysql客户机 |
MySQL客户机应用程序和工具 |
MySQL-devel |
MySQL数据库客户端应用程序的开发头文件和库 |
MySQL-shared |
MySQL数据库客户端应用程序的共享库 |
MySQL-shared-compat |
用于以前MySQL安装的共享兼容性库 |
MySQL-embedded |
MySQL嵌入式图书馆 |
MySQL-test |
MySQL服务器的测试套件 |
一些包之间存在依赖关系。如果您计划安装许多软件包,您可能希望下载RPM包焦油它包含上面列出的所有RPM包,所以您不需要单独下载它们。
rpm的全名有以下语法:
packagename-版本-分布-拱rpm程序
的分布
而且拱
值指示为其构建包的Linux发行版和处理器类型。分布标识符列表见下表:
表2.10 MySQL Linux RPM包分发标识符
分布 价值 |
预期用途 |
---|---|
el6 ,el7 |
Red Hat Enterprise Linux/Oracle Linux/CentOS 5、6、7 |
sles11, sles12 |
SUSE Linux Enterprise Server 11或12 |
linux_glibc2.5 |
分配独立的;在任何基于rpm的Linux发行版上运行 |
要查看RPM包中的所有文件(例如,mysql服务器
),使用如下命令:
rpm -qpl MySQL-server-版本-分布-拱rpm程序
在大多数情况下,您需要安装mysql服务器
而且mysql客户机
以获得一个功能性的、标准的MySQL安装。要执行这样一个标准的、最小的安装,请转到包含所有这些包的文件夹(最好不要有其他名称类似的RPM包),并发出以下命令(replace . sh . sh百胜与zypperSLES系统):
shell> yum安装MySQL-{服务器,客户端}-*
而更可取的做法是使用高级包管理工具,如百胜要安装软件包,用户喜欢直接安装rpm命令可以代替yum安装命令rpm -Uvh命令;然而,使用rpm -Uvh相反,会使安装过程更容易失败,因为安装过程可能会遇到潜在的依赖关系问题。
如果只安装客户端程序,可以跳过安装mysql服务器
包;发出以下命令(替换百胜与zypperSLES系统):
安装MySQL-client-* . shell
使用RPM包标准安装MySQL会在系统目录下创建文件和资源,如下表所示。
表2.11 MySQL开发区Linux RPM包安装布局
文件或资源 | 位置 |
---|---|
客户端程序和脚本 | 工作 |
mysqld服务器 | /usr/sbin |
数据目录 | /var/lib/mysql |
错误日志文件 | 对于RHEL、Oracle Linux或CentOS: SLES的: |
System V初始化脚本 |
|
Systemd服务 |
|
Pid文件 |
|
Unix手册页 | /usr/share/man |
包括(头)文件 | /usr/include/mysql |
库 | /usr/lib/mysql |
套接字 | /var/lib/mysql/mysql.sock |
其他支持文件(例如,错误消息和字符集文件) | /usr/share/mysql |
安装过程还会创建一个名为mysql
还有一个名为mysql
在系统上。
MySQL在安装结束时不会自动启动。使用如下命令启动MySQL:
Shell >服务mysql启动
在服务器初始启动时,如果服务器的数据目录为空,则对服务器进行初始化。mysql_install_db调用——随机密码
选项,它为MySQL分配一个随机密码根
帐户和设置”密码过期”标记这些账户。安装后需要启动服务器,连接为根
使用初始随机密码,并分配一个新的根
密码。在这之前,根
别的什么都做不了。每个人都必须这样做根
您打算使用的帐户。如果要修改密码,可以使用设置密码
语句(例如,使用mysql客户端)。您还可以使用mysqladmin或mysql_secure_installation.有关其他详细信息(包括在哪里找到分配的随机根
密码),看第4.4.3节," mysql_install_db -初始化MySQL数据目录".(使用rpm for Unbreakable Linux Network的安装操作不受影响,因为它们不会运行mysql_install_db.)
使用RPM包进行升级时,如果升级时MySQL服务器正在运行,则会停止MySQL服务器,升级完成后重新启动MySQL服务器。有一个例外:如果版本在升级过程中也发生了变化(比如社区升级到商业版本,或者反之亦然),那么MySQL服务器不会重新启动。
如果在安装过程中出现错误,您可能会在错误日志文件中找到调试信息/var/lib/mysql/
.host_name
.err
兼容其他厂商的RPM包。如果你已经从你的Linux发行版的本地软件资源库中安装了MySQL的软件包,那么最好使用你的平台的软件包管理系统(百胜或zypper),如上文所述。该命令用新包替换旧包,以确保旧应用程序与新安装的兼容性;例如,老年人MySQL-shared
包被替换为MySQL-shared-compat
软件包,它为使用旧MySQL安装的应用程序提供了一个替换兼容的客户端库。如果有更老的版本MySQL-shared-compat
在系统中,它也会被替换。
如果您安装了非来自Linux发行版本地软件资源库的第三方MySQL包(例如,从Oracle以外的供应商直接下载的包),那么在安装从Oracle直接下载的新包之前,应该卸载所有这些包。这是因为这些供应商的RPM包和Oracle的RPM包之间可能会产生冲突:例如,供应商关于哪些文件属于服务器,哪些属于客户端库的约定可能与Oracle包使博彩到10bet娱乐城用的约定不同。尝试安装Oracle RPM可能会导致消息说,要安装的RPM中的文件与安装包中的文件冲突。
调试方案。MySQL服务器的一种特殊变体调试方案已包含在服务器的RPM包中。它执行调试和内存分配检查,并在服务器运行时生成跟踪文件。要使用调试版本,请使用/usr/sbin/mysqld-debug
,而不是将其作为服务启动/usr/sbin/mysqld
.看到第5.8.3节,“DBUG包”用于您可以使用的调试选项。
用于调试构建的默认插件目录更改为/usr/lib64/mysql/plugin
来/usr/lib64/mysql/plugin/debug
在5.6.39。以前,改变是必要的plugin_dir
来/usr/lib64/mysql/plugin/debug
为调试构建。
从源srpm重建rpm。可以下载用于MySQL的源代码SRPM包。它们可以按原样使用,以标准重新构建MySQL rpmrpmbuild工具链。
NDB集群的rpm。由MySQL构建的标准MySQL服务器rpm不提供对NDBCLUSTER
存储引擎。关于从rpm安装NDB集群的更多信息,请参见第18.2节,“NDB集群安装”.