(0.2.5)Mysql安装——RPM方式安装
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.25-1.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的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平台: 对于SLES: |
的价值 secure_file_priv |
/var/lib/mysql-files |
System V init脚本 |
对于RHEL,Oracle Linux,CentOS或Fedora平台: 对于SLES: |
系统服务 |
对于RHEL,Oracle Linux,CentOS或Fedora平台: 对于SLES: |
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软件包,则最好使用您的平台的软件包管理系统(yum,dnf或 zypper)从Oracle安装新的,直接下载的软件包,如上所述。该命令用旧的包替换旧包,以确保旧应用程序与新安装的兼容性; 例如,旧的 mysql-libs
包被替换为 mysql-community-libs-compat
package,为使用旧版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.5
libmysqlclient.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节“安装后设置和测试”中的说明为其分配密码。“
rpm -i MySQL-shared-compat- *
yum remove mysql-libs
rpm -i MySQL-server- *
rpm -i MySQL-client- *
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到另一个文件夹并重新安装并在之后工作。