【后端部署】安装mysql
检查工作1
-
检查是否有系统自带的 mariadb
rpm -qa | grep mariadb -
有的话需要按名字卸载,例如:
yum erase -y mariadb-libs-5.5.60-1.el7_5.x86_64
检查工作2
-
检查是否安装有旧版mysql
rpm -qa|grep mysql -
查看运行状态
service mysqld status -
停止服务
service mysqld stop -
卸载旧版
- 普通卸载
rpm -ev [需要移除组件的名称] - 强制卸载
rpm -e --nodeps [需要移除组件的名称]
- 普通卸载
安装工作
由于centos7默认安装是Mariadb数据库,因此要先获取rpm包再安装
-
获取rpm包
wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm -
安装包
rpm -ivh mysql80-community-release-el7-1.noarch.rpm -
正式安装
yum install -y mysql-community-{server,client,common,libs}-* -
检查是否开机启动
systemctl list-unit-files|grep mysqld -
设置为开机启动
systemctl enable mysqld -
查看是否启动
ps -ef|grep mysql -
手动启动
systemctl start mysqld -
查看运行状态
systemctl status mysqld -
初始化mysql
mysqld --initialize -
查看默认初始密码
grep 'temporary password' /var/log/mysqld.log -
更改密码
- 用初始密码进入数据库
mysql -u root -p - 先降低安全等级
set global validate_password.policy=0; set global validate_paddword.length=1; - 再更改
ALTER USER USER() IDENTIFIED BY '12345678';
- 用初始密码进入数据库
-
(可选但不建议)开启远程连接
use mysql;- 修改root账户的可访问主机的权限
update user set host = '%' where user = 'root'; - 刷新权限
flush privileges;
- 修改root账户的可访问主机的权限
-
离开mysql
\q -
密码方式重新进入
mysql -u root -p- 参数
-u root表示 用“root用户”进入 - 参数
-p表示 用“需要密码模式”进入
- 参数
-
对于mysql8来说,有个sql_mode的问题
- 会导致group by错误
this is incompatible with sql_mode=only_full_group_by - 需要在
mysql >后面执行下面语句set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
- 会导致group by错误