CentOS 7.6 安装 MySQL-5.7.31(RPM方式安装)


准备工作: 注:5.7.31版本安装步骤及初始化和之前版本有较大区别 CentOS 7.6 系统: 带GUI的服务器 默认安装 MySQL 5.7.31 安装包: 1.RPM安装包(rpm/yum方式安装): mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar(RPM打包文件,包含以下RPM包)     mysql-community-client-5.7.31-1.el7.x86_64.rpm (客户端)【必装】     mysql-community-server-5.7.31-1.el7.x86_64.rpm (服务端)【必装】     mysql-community-libs-5.7.31-1.el7.x86_64.rpm (共享库)【推荐】【依赖必要】     mysql-community-devel-5.7.31-1.el7.x86_64.rpm (开发库)【推荐】     mysql-community-common-5.7.31-1.el7.x86_64.rpm (通用库)【推荐】【依赖必要】 ...... (其他的根据自己需要选装) 2.源码安装包(编译方式安装) mysql-5.7.31-el7-x86_64.tar.gz mysql官方网站下载即可,国内的搜狐、阿里镜像站也可下载   安装环境检查: 1.卸载mariadb/mysql [root@localhost ~]# rpm -qa | gerp [软件名称] ## 查询软件是否被安装 检查是否有默认安装的数据库,如果有请卸载(通常情况会默认安装MariaDB数据库) [root@localhost ~]# rpm -qa | grep -i mariadb 卸载方式1:[root@localhost ~]# rpm -ev --nodeps mariadb-libs ## 强制卸载 卸载方式2:[root@localhost ~]# yum remove mariadb-libs.x86_64 ## 推荐   2.检查安装mysql的依赖包 [root@localhost ~]# rpm -qa | grep ncurses [root@localhost ~]# rpm -qa | grep libaio ********************************************************* RPM方式安装: 1、安装RPM文件 解压打包文件: [root@localhost ~]# tar -xvf mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar   安装MySQL(注意安装顺序,否则有依赖告警): [root@localhost ~]# rpm -ivh mysql-community-common-5.7.31-1.el7.x86_64.rpm [root@localhost ~]# rpm -ivh mysql-community-libs-5.7.31-1.el7.x86_64.rpm [root@localhost ~]# rpm -ivh mysql-community-client-5.7.31-1.el7.x86_64.rpm [root@localhost ~]# rpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm ## -i是安装,-v是列出更多详细信息,-h是在安装时列出hash标记   2、启动数据库 [root@localhost ~]# systemctl start mysqld [root@localhost ~]# systemctl status mysqld [root@localhost ~]# systemctl enable mysqld   检查是否启动,端口是否监听: [root@localhost ~]# netstat -lntup | grep mysql     3、本地账户默认密码 mysql 安装完成之后,生成的默认密码在 /var/log/mysqld.log 文件中。使用 grep 命令找到日志中的密码 [root@localhost ~]# grep 'password' /var/log/mysqld.log     4、登陆并修改密码 [root@localhost ~]# mysql -u root -p mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Ab@123456'; 或者 mysql> set password for 'root'@'localhost'=password('Ab@123456');   以后通过 update set 语句修改密码 mysql> use mysql; mysql> update user set password=PASSWORD('Ab@456789') where user='root'; mysql> flush privileges; ## 刷新权限   注:mysql 5.7 默认安装了密码安全检查插件(validate_password),策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位,否则会报错,如下: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements mysql> set global validate_password_policy=0; ## 修改密码策略0级     5、添加远程登录用户 默认情况下MySQL只允许root账户在本地登录,如果要在其它机器上连接mysql,必须添加一个允许远程连接的帐户。或者修改 root 为允许远程连接(不推荐)   查询用户: mysql> select User,Host from user;   添加远程连接账户: mysql> GRANT ALL PRIVILEGES ON *.* TO 'andy'@'%' IDENTIFIED BY 'Andy@123' WITH GRANT OPTION;   修改 root 为允许远程连接(不推荐): mysql> use mysql; mysql> UPDATE user SET Host='%' WHERE User='root'; mysql> flush privileges;     6、谁知默认编码为UTF-8 mysql 安装后默认不支持中文,需要修改编码。 修改 /etc/my.cnf 配置文件,在相关节点(没有则自行添加)下添加编码配置 [mysqld] character-set-server=utf8 [client] default-character-set=utf8 [mysql] default-character-set=utf8   修改完成后重启mysql服务 [root@localhost ~]# systemctl restart mysqld [root@localhost ~]# mysql -u root -p mysql> show variables like 'character%';     7、默认配置文件路径 配置文件:/etc/my.cnf 日志文件:/var/log/mysqld.log 服务启动脚本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid  备注: