(0.2.5)RPM方式安装

Posted gered

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(0.2.5)RPM方式安装相关的知识,希望对你有一定的参考价值。

转自:https://dev.mysql.com/doc/refman/5.7/en/linux-installation-rpm.html

MySQL 5.7参考手册 

MySQL的RPM包列在下表中:

表2.8 MySQL Community Edition的RPM包

包裹名字摘要
mysql-community-server 数据库服务器和相关工具
mysql-community-client MySQL客户端应用程序和工具
mysql-community-common 服务器和客户端库的公共文件
mysql-community-devel 用于MySQL数据库客户端应用程序的开发头文件和库
mysql-community-libs MySQL数据库客户端应用程序的共享库
mysql-community-libs-compat 以前的MySQL安装的共享兼容库
mysql-community-embedded MySQL嵌入式库
mysql-community-embedded-devel MySQL的开发头文件和库作为可嵌入库
mysql-community-test MySQL服务器的测试套件

表2.9 MySQL企业版的RPM包

包裹名字摘要
mysql-commercial-server 数据库服务器和相关工具
mysql-commercial-client MySQL客户端应用程序和工具
mysql-commercial-common 服务器和客户端库的公共文件
mysql-commercial-devel 用于MySQL数据库客户端应用程序的开发头文件和库
mysql-commercial-libs MySQL数据库客户端应用程序的共享库
mysql-commercial-libs-compat 以前的MySQL安装的共享兼容库
mysql-commercial-embedded MySQL嵌入式库
mysql-commercial-embedded-devel MySQL的开发头文件和库作为可嵌入库
mysql-commercial-test MySQL服务器的测试套件

RPM的全名具有以下语法:

packagename-version-distribution-arch.rpm

distribution和 arch值表示Linux分发和的量,包建处理器类型。有关分发标识符的列表,请参阅下表:

表2.10 MySQL Linux RPM包分发标识符

分配价值有可能的使用
el6, el7 红帽企业Linux / Oracle Linux / CentOS 6或7
fc28 和 fc29 Fedora 28和29
sles12 SUSE Linux Enterprise Server 12

要查看RPM包中的所有文件(例如 mysql-community-server),请使用以下命令:

shell> rpm -qpl mysql-community-server-version-distribution-arch.rpm

本节其余部分的讨论仅适用于使用直接从Oracle下载的RPM软件包而不是通过MySQL存储库的安装过程。

某些包之间存在依赖关系。如果您计划安装许多软件包,您可能希望下载RPM软件包tar文件,其中包含上面列出的所有RPM软件包,因此您无需单独下载它们。

在大多数情况下,你需要安装 mysql-community-server, mysql-community-client, mysql-community-libs, mysql-community-common,和 mysql-community-libs-compat包获得的功能,标准的MySQL安装。要执行这样的标准基本安装,请转到包含所有这些软件包的文件夹(最好不要包含其他具有相似名称的RPM软件包),并为Red Hat Enterprise Linux / Oracle Linux / CentOS 以外的平台发出以下命令 

shell> sudo yum install mysql-community-{server,client,common,libs}-*

zypper 替换yum用于SLES,用dnf替换Fedora。

对于Red Hat Enterprise Linux / Oracle Linux / CentOS系统:

shell> sudo yum install mysql-community-{server,client,common,libs}-* mysql-5.*-

虽然这是很最好使用像一个高层次的包管理工具百胜安装的软件包,谁喜欢直接用户命令可以更换 百胜安装使用命令RPM -Uvh命令; 但是,使用rpm -Uvh 会使安装过程更容易出错,因为安装过程可能会遇到潜在的依赖性问题。

要仅安装客户端程序,可以跳过 mysql-community-server要安装的软件包列表; Red Hat Enterprise Linux / Oracle Linux / CentOS 以外的平台发出以下命令 

shell> sudo yum install mysql-community-{client,common,libs}-*

zypper 替换yum用于SLES,用dnf替换Fedora。

对于Red Hat Enterprise Linux / Oracle Linux / CentOS系统:

shell> sudo yum install mysql-community-{client,common,libs}-* mysql-5.*

使用RPM软件包的MySQL标准安装会导致在系统目录下创建的文件和资源,如下表所示。

表2.11来自MySQL Developer Zone的Linux RPM软件包的MySQL安装布局

文件或资源地点
客户端程序和脚本 /usr/bin
mysqld服务器 /usr/sbin
配置文件 /etc/my.cnf
数据目录 /var/lib/mysql
错误日志文件

对于RHEL,Oracle Linux,CentOS或Fedora平台:/var/log/mysqld.log

对于SLES: /var/log/mysql/mysqld.log

的价值 secure_file_priv /var/lib/mysql-files
System V init脚本

对于RHEL,Oracle Linux,CentOS或Fedora平台: /etc/init.d/mysqld

对于SLES: /etc/init.d/mysql

系统服务

对于RHEL,Oracle Linux,CentOS或Fedora平台: mysqld

对于SLES: mysql

Pid文件 /var/run/mysql/mysqld.pid
插座 /var/lib/mysql/mysql.sock
密钥环目录 /var/lib/mysql-keyring
Unix手册页 /usr/share/man
包含(标题)文件 /usr/include/mysql
图书馆 /usr/lib/mysql
其他支持文件(例如,错误消息和字符集文件) /usr/share/mysql
 

安装还会创建一个名为的用户mysql和一个mysql在系统上命名 的组 

注意

使用较旧的软件包安装以前版本的MySQL可能会创建一个名为的配置文件 /usr/my.cnf强烈建议您检查文件的内容并将所需的设置迁移到文件/etc/my.cnf文件中,然后删除/usr/my.cnf

MySQL不会在安装过程结束时自动启动。对于Red Hat Enterprise Linux,Oracle Linux,CentOS和Fedora系统,请使用以下命令启动MySQL:

shell> sudo service mysqld start

对于SLES系统,命令相同,但服务名称不同:

shell> sudo service mysql start

如果操作系统已启用systemd,则应使用标准 服务命令(如 停止启动, 状态重新启动)来管理MySQL服务器服务。mysqld默认情况下启用该 服务,并在系统重新启动时启动。请注意,某些事情在systemd平台上可能会有所不同:例如,更改数据目录的位置可能会导致问题。有关其他信息请参见 第2.5.10节“使用systemd管理MySQL服务器”

在使用RPM软件包进行升级安装期间,如果MySQL服务器在升级时运行,则MySQL服务器停止,升级发生,MySQL服务器重新启动。一个例外:如果版本在升级过程中也发生了变化(例如社区变为商业版,反之亦然),则MySQL服务器不会重新启动。

在服务器初始启动时,如果服务器的数据目录为空,则会发生以下情况:

  • 服务器已初始化。

  • 在数据目录中生成SSL证书和密钥文件。

  • validate_password 已安装并已启用。

  • ‘root‘@‘localhost‘创建一个超级用户帐户设置超级用户的密码并将其存储在错误日志文件中。要显示它,请对RHEL,Oracle Linux,CentOS和Fedora系统使用以下命令:

    shell> sudo grep ‘temporary password‘ /var/log/mysqld.log

    对SLES系统使用以下命令:

    shell> sudo grep ‘temporary password‘ /var/log/mysql/mysqld.log

    下一步是使用生成的临时密码登录并为超级用户帐户设置自定义密码:

shell> mysql -uroot -p
mysql> ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘MyNewPass4!‘;
注意

validate_password 默认安装。实现的默认密码策略validate_password要求密码包含至少一个大写字母,一个小写字母,一个数字和一个特殊字符,并且总密码长度至少为8个字符。

如果在安装过程中出现问题,您可能会在错误日志文件中找到调试信息 /var/log/mysqld.log

对于某些Linux发行版,可能需要增加mysqld可用的文件描述符数量限制 请参见 第B.6.2.17节“找不到文件和类似错误”

与其他供应商的RPM包兼容。  如果您已从Linux发行版的本地软件存储库安装了MySQL软件包,则最好使用您的平台的软件包管理系统(yumdnf或 zypper从Oracle安装新的,直接下载的软件包,如上所述。该命令用旧的包替换旧包,以确保旧应用程序与新安装的兼容性; 例如,旧的 mysql-libs包被替换为 mysql-community-libs-compatpackage,为使用旧版MySQL安装的应用程序提供替换兼容的客户端库。如果系统上有旧版本 mysql-community-libs-compat,它也会被替换。

如果您安装的MySQL第三方软件包不是来自Linux发行版的本地软件存储库(例如,直接从Oracle以外的供应商下载的软件包),则应在安装新的,直接下载的软件包之前卸载所有这些软件包。来自Oracle。这是因为这些供应商的RPM软件包与Oracle之间可能会发生冲突:例如,供应商关于哪些文件属于服务器以及哪些文件属于客户端库的约定可能与用于Oracle软件包的文件不同。然后,尝试安装Oracle RPM可能会导致消息表明要安装的RPM中的文件与已安装软件包中的文件冲突。

从多个MySQL版本安装客户端库。  可以安装多个客户端库版本,例如,您希望保持与以前库链接的旧应用程序的兼容性。要安装较旧的客户端库,请使用rpm--oldpackage 选项例如,要安装 MySQL 5.7 的EL6系统上,请使用如下命令: mysql-community-libs-5.5libmysqlclient.20

shell> rpm --oldpackage -ivh mysql-community-libs-5.5.50-2.el6.x86_64.rpm

调试包。  使用调试包编译的MySQL Server的特殊变体 已包含在服务器RPM包中。它执行调试和内存分配检查,并在服务器运行时生成跟踪文件。要使用该调试版本,请启动MySQL/usr/sbin/mysqld-debug,而不是将其作为服务启动或使用/usr/sbin/mysqld有关可以使用的调试选项请参见第28.5.3节“DBUG包”

注意

调试版本的默认插件目录从5.7.21 更改 /usr/lib64/mysql/plugin为 /usr/lib64/mysql/plugin/debug此前,有必要改变 plugin_dir,以/usr/lib64/mysql/plugin/debug建立调试。

从源SRPM重建RPM。  源代码MySQL的SRPM包可供下载。它们可以按原样用于使用标准rpmbuild工具链重建MySQL RPM 

root GA前版本的密码。  对于MySQL 5.7.4和5.7.5,初始随机 root密码将写入环境变量.mysql_secret指定的目录中的 文件HOME尝试访问该文件时,请记住,根据操作系统,使用sudo命令可能会导致值HOME引用root系统用户的主目录.mysql_secret使用模式600创建,只能由创建它的系统用户访问。在MySQL 5.7.4之前,帐户(包括 root)在MySQL安装表中创建的RPM安装最初没有密码; 启动服务器后,应使用第2.10节“安装后设置和测试”中的说明为其分配密码。“

 用户评论
顾名思义,本节中的用户注释由MySQL用户提供。MySQL文档团队不对此处提供的任何信息负责,也不认可。
 BahadirMalko?   发表 于2013年7月2日
对于Centos 6,RPM可能会抱怨由于crontabs而你可能拥有版本5.1的mysql-libs。您可以执行以下操作来解决此问题:

rpm -i MySQL-shared-compat- * 
yum remove mysql-libs 
rpm -i MySQL-server- * 
rpm -i MySQL-client- *
   由 Santosh Das 发表 于2016年2月23日
尝试在RHEL7 
shell 上安装时使用> yum install mysql-community- {server,client,common,libs} - * 

我在minimal-server和server之间有很多兼容性错误(见下文)
事务检查错误:
文件/ etc / my.cnf在mysql-community-server-minimal-5.7.11-1.el7.x86_64和mysql-community-server-5.7.11-1.el7.x86_64 
文件/ usr / bin / my_print_defaults之间的安装冲突之间发生冲突尝试安装mysql-community-server-minimal-5.7.11-1.el7.x86_64和mysql-community-server-5.7.11-1.el7.x86_64 
<snip> </ snip> 

我的修复:
移动了mysql- community-server-minimal-5.7.11-1.el7.x86_64.rpm到另一个文件夹并重新安装并在之后工作。



















以上是关于(0.2.5)RPM方式安装的主要内容,如果未能解决你的问题,请参考以下文章

linux应用程序基础及安装方式(RPM,YUM和源代码编译)!

Linux系列Linux操作系统rpm包安装方式步骤

centos软件是有四种安装方式吗?yum,rpm,二进制和源代码?

MySQL 源代码scr.rpm安装的一点注意事项

Linux ubuntu 3.11.0-12-generic 下oracle12c的基础rpm安装包,具体版本往下看

centos安装软件方式及命令