本文转载自微信公众号“JAVA日之录”,作者为单音。转载本文请联系JAVA日知录公众号。MySQL在日常的开发和学习中是必不可少的。本文将教大家如何在Centos7下使用RPM管理包安装MySQL。直接开始吧!本文中的MySQL版本为5.7.321。安装服务器,下载mysql服务器客户端rpm文件下载地址:https://downloads.mysql.com/archives/community/选择版本:mysql-community-server-5.7.32-1.el7。x86_64.rpm2。上传到服务器/app/soft3。安装mysqlyuminstalllibaio需要的组件(可选)4.安装mysqlServerrpm-ivhmysql-community-server-5.7.32-1.el7.x86_64.rpm--nodeps--force如果不加--nodeps--force,会提示Needtoinstallclientdependencies等错误warning:mysql-community-server-5.7.32-1.el7.x86_64.rpm:HeaderV3DSA/SHA1Signature,keyID5072e1f5:NOKEYerror:Faileddependencies:mysql-community-client(x86-64)>=5.7.9isneededbymysql-community-server-5.7.32-1.el7.x86_64mysql-community-common(x86-64)=5.7.32-1.el7isneededbymysql-community-server-5.7.32-1.el7.x86_64查看是否安装[root@review-devsoft]#rpm-qa|grepmysqlmysql-community-server-5.7.32-1.el7.x86_64启动mysql查看状态[root@review-devsoft]#systemctlstartmysqld.service--启动[root@review-devsoft]#systemctlstatusmysqld.service--查看状态mysqld.service-MySQLServerLoaded:loaded(/usr/lib/systemd/system/mysqld.service;enabled;vendorpreset:disabled)Active:active(running)sinceMon2021-01-1811:32:17CST;15sagoDocs:man:mysqld(8)http://dev.mysql.com/doc/refman/en/using-systemd.htmlProcess:7054ExecStart=/usr/sbin/mysqld--daemonize--pid-file=/var/run/mysqld/mysqld.pid$MYSQLD_OPTS(code=exited,status=0/SUCCESS)Process:6825ExecStartPre=/usr/bin/mysqld_pre_systemd(code=exited,status=0/SUCCESS)MainPID:7057(mysqld)CGroup:/system.slice/mysqld.service└─7057/usr/sbin/mysqld--daemonize--pid-file=/var/run/mysqld/mysqld.pid通过以上,我们已经安装好了MySQL的服务器端。这个时候用mysql命令登录是不行的,需要安装一个客户端!安装客户端1.在mysql客户端下载rpm文件。下载地址:https://downloads.mysql.com/archives/community/选择版本:mysql-community-client-5.7.32-1.el7.x86_64.rpm2。上传到服务器/应用程序/soft3。安装客户端rpm-ivhmysql-community-client-5.7.32-1.el7.x86_64.rpm--nodeps--force同样,如果不加--nodeps--force命令,还是会出现如下错误显示在[root@review-devsoft]#rpm-ivhmysql-community-client-5.7.32-1.el7.x86_64.rpmwarning:mysql-community-client-5.7.32-1.el7.x86_64.rpm:HeaderV3DSA/SHA1Signature,keyID5072e1f5:NOKEYerror:Faileddependencies:mysql-community-libs(x86-64)>=5.7.9isneededbymysql-community-client-5.7.32-1。el7.x86_64安装完Server和Client后,需要修改一些默认配置配置获取原始密码grep"password"/var/log/mysqld.log2021-01-18T03:32:13.444809Z1[注意]Atemporarypasswordisgeneratedforroot@localhost:r8G>.aGR,GaA2。使用原密码登录mysql服务器mysql-uroot-p,输入上面得到的密码回车登录3.修改密码ALTERUSER'root'@'localhost'IDENTIFIEDBY'newpassword'where'newpassword'replaces输入您要设置的密码。注意:密码必须由大小写字母、数字和特殊符号(、/';:等)组成,否则无法配置成功。3.1修改密码安全策略如果出现如下错误,说明新密码不符合密码策略ERROR1819(HY000):Yourpassworddoesnotsatisfythecurrentpolicyrequirements可以通过命令SHOWVARIABLESLIKE'查看安全策略validate_password%';可以通过命令修改相应的安全策略,比如密码级别设置为LOW:setglobalvalidate_password_policy=LOW;例如设置密码长度为8setglobalvalidate_password_length=6;mysql密码策略相关参数:1)validate_password_length为固定密码的总长度;2)validate_password_dictionary_file指定密码验证的文件路径;3)validate_password_mixed_case_count整个密码必须至少包含大小写字母的总数;4)validate_password_number_count整个密码必须至少包含阿拉伯数字的个数;5)validate_password_policy指定密码的强度验证级别,默认为MEDIUM;6)validate_password_special_char_count整个密码必须至少包含特殊字符的个数;关于validate_password_policy的值:LOW:只验证长度;MEDIUM:验证长度、数字、大小写、特殊字符;STRONG:校验长度、数字、大小写、特殊字符、字典文件;4.新建远程登录用户createuser'xxxxxx'@'%'identifiedby'password';GRANTALLPRIVILEGESON*.*TO'xxxxxx'@'%'identifiedbypassword';flushprivileges;语言为latinl,登录mysql服务时可以使用status命令查看。需要修改为主流的utf8mb4,先退出mysql,然后在/etc目录下的my.cnf文件中添加如下内容(见红框)vi/etc/my.cnfrepair修改完成后重启mysqlsystemctlrestartmysqld.service并重新登录mysql,再次查看状态。通过以上步骤,我们就可以使用MySQL进行开发和测试了,但是此时还不能直接使用MySQL进行生产。我们不得不修改MySQL服务器的配置参数,以提高其性能和吞吐量,具体参数可以参考以下文章进行优化:http://javadaily.cn/articles/2019/11/18/1574040329451.html
