Centos7 yum安装mysql

本文介绍如何在CentOS系统上安装MySQL 5.7版本,并解决安装过程中可能遇到的依赖问题。此外,还提供了配置密码强度验证插件的方法、基本的数据库操作指南以及MariaDB的安装步骤。
1.安装最新版mysql
从MySQL开发者网站下载Yum仓库文件,导入Yum库: http://dev.mysql.com/downloads/repo/yum/
这里获取的是mysql  5.7.12

安装yum 仓库列表:
yum -y   localinstall mysql57-community-release-el6-8.noarch.rpm 
查看:
yum list | grep mysql
安装mysql
yum -y install mysql-community-server
如报如下错误:
--> Finished Dependency Resolution
Error: Package: 2:postfix-2.10.1-6.el7.x86_64 (@anaconda)
           Requires: libmysqlclient.so.18()(64bit)
           Removing: 1:mariadb-libs-5.5.44-2.el7.centos.x86_64 (@anaconda)
               libmysqlclient.so.18()(64bit)
           Obsoleted By: mysql-community-libs-5.7.16-1.el6.x86_64 (mysql57-community)
              ~libmysqlclient.so.20()(64bit)
           Updated By: 1:mariadb-libs-5.5.50-1.el7_2.x86_64 (updates)
               libmysqlclient.so.18()(64bit)
           Available: 1:mariadb-libs-5.5.47-1.el7_2.x86_64 (updates)
               libmysqlclient.so.18()(64bit)
Error: Package: 2:postfix-2.10.1-6.el7.x86_64 (@anaconda)
           Requires: libmysqlclient.so.18(libmysqlclient_18)(64bit)
           Removing: 1:mariadb-libs-5.5.44-2.el7.centos.x86_64 (@anaconda)
               libmysqlclient.so.18(libmysqlclient_18)(64bit)
           Obsoleted By: mysql-community-libs-5.7.16-1.el6.x86_64 (mysql57-community)
               Not found
           Updated By: 1:mariadb-libs-5.5.50-1.el7_2.x86_64 (updates)
               libmysqlclient.so.18(libmysqlclient_18)(64bit)
           Available: 1:mariadb-libs-5.5.47-1.el7_2.x86_64 (updates)
               libmysqlclient.so.18(libmysqlclient_18)(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
包依赖兼容问题,先删除mysql依赖
yum remove mysql-libs 
再安装.
安装完成,启动
service mysqld start
查看日志: /var/log/mysqld.log
2016-05-07T05:38:34.581931Z 1 [Note] A temporary password is generated for  root@localhost: kkw%vi&)A2*&
默认为mysql生成一个临时密码:kkw%vi&)A2*&
使用这个密码登录,并修改root密码:
SET PASSWORD = PASSWORD('1Q! 2w@3E#4r$');     需要满足密码强度检查
注:
mysql 5.6增加了密码强度验证插件validate_password,相关参数设置的较为严格,密码强度可由validate password strength()函数评估(返回0至100之间的数)

默认策略。
--validate-password=ON/OFF/FORCE/FORCE_PLUS_PERMANENT:决定是否使用该插件(及强制/永久强制使用)。
validate_password_dictionary_file:插件用于验证密码强度的字典文件路径。
validate_password_length:密码最小长度。
validate_password_mixed_case_count:密码至少要包含的小写字母个数和大写字母个数。
validate_password_number_count:密码至少要包含的数字个数。
validate_password_policy:密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。
validate_password_special_char_count:密码至少要包含的特殊字符数。
其中关于validate_password_policy-密码强度检查等级:
0/LOW:只检查长度。
1/MEDIUM:检查长度、数字、大小写、特殊字符。
2/STRONG:检查长度、数字、大小写、特殊字符字典文件。
插件的安装启用:
插件对应的库对象文件需在配置选项plugin_dir指定的目录中。
可使用--plugin-load=validate_password.so在server启动时载入插件,或者将plugin-load=validate_password.so写入配置文件。
mysql>select VALIDATE_PASSWORD_STRENGTH('123456'); 查看密码强度
也可以通过如下语句在server运行时载入插件(会注册进mysql.plugins表)mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.so';
为阻止该插件在运行时被删除可在配置文件中添加:
[mysqld]
plugin-load=validate_password.so
validate_password_policy=2
validate-password=FORCE_PLUS_PERMANENT
临时调整参数
show variables like '%validate_password%';

可以根据自己的需求调整策略
set global validate_password_length=6;
set global validate_password_policy=0;
并添加到到配置文件my.cnf中
set password = password('abc123');

查看授权用户:
 select host,user,authentication_string from mysql.user;
grant all privileges on *.* to 'root'@'%' identified by 'abc123' with grant option;
flush privileges;

创建数据并授权
create database user DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
grant all privileges on  user .* to ' user '@'%' identified by '123456';
flush privileges;

注:
centos 7 安装mysql  mariadb版本
yum -y install  mariadb*

systemctl start mariadb  #启动MariaDB

systemctl stop mariadb  #停止MariaDB

systemctl restart mariadb  #重启MariaDB

systemctl enable mariadb  #设置开机启动


<think>好的,我现在需要在CentOS 7上通过yum安装MySQL,但之前听说默认仓库可能没有。用户提供的引用里提到需要先添加MySQL社区仓库,所以步骤应该是先配置仓库再安装。首先得确认系统是否安装了其他MySQL版本,避免冲突。然后下载MySQL的repo文件,放到/etc/yum.repos.d/目录下。接着用yum安装mysql-community-server。安装完成后启动服务,设置开机启动,再运行安全脚本设置root密码。可能还需要验证安装是否成功,检查版本信息。过程中需要注意可能出现的依赖问题或者GPG密钥验证失败的情况,这时候可能需要更新GPG密钥或者手动导入。还有防火墙和SELinux的配置,确保3306端口开放。最后可能需要测试远程连接,创建用户和授权。如果有错误的话,查看日志文件,比如/var/log/mysqld.log。另外,用户引用里提到默认仓库没有MySQL社区版,所以必须添加正确的repo源,否则安装会失败。记得在安装前更新yum缓存,确保能正确识别新添加的仓库。安装完成后,初始密码可能在日志里,需要用grep命令查找。安全脚本会提示修改密码和一些安全选项,比如移除匿名用户等。整个过程需要按照步骤仔细操作,避免遗漏。</think>在CentOS 7上通过yum安装MySQL 8的步骤如下: ### 1. 添加MySQL官方仓库 由于CentOS 7默认仓库不包含MySQL社区版,需手动添加MySQL Yum Repository: ```bash wget https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm sudo rpm -ivh mysql80-community-release-el7-6.noarch.rpm ``` 完成后会生成`/etc/yum.repos.d/mysql-community.repo`文件[^4]。 ### 2. 安装MySQL服务 ```bash sudo yum clean all # 清除旧缓存 sudo yum makecache # 生成新缓存 sudo yum install mysql-community-server -y ``` ### 3. 启动服务并设置开机自启 ```bash sudo systemctl start mysqld sudo systemctl enable mysqld ``` ### 4. 获取初始密码 ```bash sudo grep 'temporary password' /var/log/mysqld.log ``` 输出类似:`A temporary password is generated for root@localhost: 初始密码`[^3] ### 5. 安全配置 ```bash sudo mysql_secure_installation ``` 按提示操作:修改root密码、移除匿名用户、禁用远程root登录等[^1]。 ### 6. 验证安装 ```bash mysql --version # 应显示MySQL 8.x版本 sudo systemctl status mysqld # 检查服务状态 ``` ### 注意事项 1. 若出现GPG密钥验证失败,执行: ```bash sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023 ``` 2. 防火墙需开放3306端口: ```bash sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cmd --reload ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值