(0.2.5)Mysql安装——RPM方式安装

时间:2024-08-26 22:05:14

rpm安装mysql

卸载与安装服务端

一、安装服务端与客户端
#查看RPM包中所有的文件
shell> rpm -qpl mysql-community-server-version-distribution-arch.rpm

#卸载原有mysql
rpm -qa |grep mysql
rpm -e --nodeps mysql-libs-5.1.71-1.el6.x86_64
#服务端使用这种方式
sudo yum install mysql-community-{server,client,common,libs}-*
#更建议使用这种方式
rpm -ivh mysql-community-{server,client,common,libs}-* #客户端使用这种方式
sudo yum install mysql-community-{client,common,libs}-*
#更建议使用这种方式
rpm -ivh mysql-community-{server,client,common,libs}-*
如果在安装过程中如果出现如下错误
这里补充一下是 rpm -ivh mysql-community-libs-5.7.-.el7.x86_64.rpm --nodeps --force
后面要带 --nodeps --force
 
二、默认密码

错误日志在下列2个路径其中一个中。
/var/log/mysqld.log
/var/log/mysql/mysqld.log 三、初始化、开启与关闭 service mysqld start 四、修改密码
登录上去之后,运行下面任一即可。密码有策略请求,大写+小写+数字+符号
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
set password('new_password')

五、卸载 yun remove mysql* #查阅
rpm -qa |grep mysql


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

表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

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

  • 服务器已初始化。

  • 在数据目录中生成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节“安装后设置和测试”中的说明为其分配密码。“

PREV  HOME  UP  NEXT
 用户评论
顾名思义,本节中的用户注释由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到另一个文件夹并重新安装并在之后工作。

文字及绝大部分代码引用参考自官网Mysql5.7手册:https://dev.mysql.com/doc/refman/5.7/en/linux-installation-rpm.html