centos安装mysql
1,下载安装 mysql 源安装包命令: wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm,最新版 wget http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm2,安装 mysql 源 yum localinstall
1,下载安装 mysql 源安装包命令: wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm,最新版 wget http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
2,安装 mysql 源 yum localinstall mysql57-community-release-el7-8.noarch.rpm
3,检查 mysql 源是否安装成功 yum repolist enabled | grep "mysql.*-community.*"
4,可以修改 vim /etc/yum.repos.d/mysql-community.repo 源,改变默认安装的mysql版本。比如要安装5.6版本,将5.7源的 enabled=1 改成 enabled=0。然后再将5.6源的 enabled=0 改成 enabled=1 即可
5,安装 mysql 使用命令 yum install mysql-community-server
6,启动 mysql 使用命令 systemctl start mysqld ,使用命令 systemctl status mysqld 进行查看状态
设置 mysql 开机启动 使用命令 systemctl enable mysqld 刷新配置 systemctl daemon-reload
7,查看默认生成的密码,可以使用这个密码登录 grep 'temporary password' /var/log/mysqld.log
修改密码 命令 ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!'; 也可以使用 set password for 'root'@'localhost'=password('MyNewPass4!');
注意:mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 错误,如下图所示:
通过msyql环境变量可以查看密码策略的相关信息
validate_password_policy:密码策略,默认为 MEDIUM 策略
validate_password_dictionary_file:密码策略文件,策略为 STRONG 才需要
validate_password_length:密码最少长度
validate_password_mixed_case_count:大小写字符长度,至少1个
validate_password_number_count :数字至少1个
validate_password_special_char_count:特殊字符至少1个
上述参数是默认策略 MEDIUM 的密码检查规则。
共有以下几种密码策略:
策略 检查规则
0 or LOW Length
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file
MySQL官网密码策略详细说明:
http://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html#sysvar_validate_password_policy
修改密码策略在 /etc/my.cnf 文件添加 validate_password_policy 配置,指定密码策略
# 选择 0(LOW),1(MEDIUM),2(STRONG) 其中一种,选择2需要提供密码字典文件
validate_password_policy=0如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可:
validate_password = off
重新启动mysql服务使配置生效:
systemctl restart mysqld
8,添加远程登录用户
默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户
*如果需要使用root用户进行远程登录的话,可以添加一个远程root用户
ip为客户端的地址,一般如果本机为192.168.236.128则host机ip为192.168.236.1,所以这里的ip要改为192.168.236.1
9,配置默认编码为utf8,修改 /etc/my.cnf 配置文件,在 [mysqld] 下添加编码配置,如下所示:
重新启动数据库,查看默认编码 show variables like '%variables%'
可能会出现远程连接失败
这需要设置一下防火墙新增3306端口远程访问
命令 iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT,
设置完之后查看是否可以通过 iptables -L -n ,
如果要限制访问 iptables -D INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
设置之后可以访问成功。
默认配置文件路径:
配置文件:/etc/my.cnf
日志文件:/var/log//var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)