centos7 安装mysql提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
- 安装 Mysql
- 查看是否已经安装 Mysql
- 1.离线安装或者在线安装
- 下载Yum Repository
- 在线安装
- 2.yum安装
- 开始安装MySQL服务器。
- 在这里插入图片描述
- MySQL数据库设置
- 1.启动mysql
- 2.找mysql密码
- 3.登录mysql
- 4.修改密码
- 4.开启远程连接
- 4.移除Yum Repository
- 问题记录及解决
- 问题1:
- 问题2:
安装 Mysql 查看是否已经安装 Mysql
rpm -qa | grep mysql
下面这样的是没有安装的
如果安装过,就用下面的指令进行删除(xxx文件名),
rpm -e xxx
centos默认安装mariadb,可以删除,也可以不删除,安装完Mysql之后可以直接覆盖掉MariaDB
rpm -qa | grep mariadb.*
yum remove mariadb.x86_641.离线安装或者在线安装 下载Yum Repository
下载链接: mysql80,然后上传到服务器
wget -i -c http://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm2.yum安装
yum -y install mysql80-community-release-el7-6.noarch.rpm
如下图
开始安装MySQL服务器。yum -y install mysql-community-serverMySQL数据库设置 1.启动mysql
service mysqld start service mysqld restart service mysqld stop
也可以用
systemctl start mysqld.service systemctl status mysqld.service2.找mysql密码
cat /var/log/mysqld.log | grep password
grep "password" /var/log/mysqld.log3.登录mysql
mysql -uroot -p4.修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
需要注意的是密码修改的太简单了会报错
查看MySQL完整的初始密码
SHOW VARIABLES LIKE 'validate_password%';
密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:
validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
可以通过如下命令修改:
set global validate_password_policy=0; set global validate_password_length=1;4.开启远程连接
use mysql; show tables; select host, user from user G update user set host="%" where Host='localhost' and user = "root";
注:G会格式化显示
更新权限
flush privileges;
或者直接重启服务:service mysqld restart
4.移除Yum Repository因为安装了Yum Repository,以后每次yum操作都会自动更新
yum -y remove mysql80-community-release.noarch问题记录及解决 问题1:
使用“yum -y install mysql-community-server”出现mysql-community-client-plugins-8.0.29-1.el7.x86_64.rpm 的公钥尚未安装
不解决也没啥影响的,引入公钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
也可以在安装的时候跳过验证
yum install mysql-community-server --nogpgcheck问题2:
MySQL错误:Can’t connect to MySQL server (10060)
解决方案:
1.确定网络可以ping通
2.mysql账户是否不允许远程连接
show databases; use mysql; select host,user from user
可以看到mysql已经设置允许远程连接
3.防火墙端口未开放
centOS7使用firewall-cmd来管理防火墙,firewall-cmd列出所有开放的端口信息
firewall-cmd --list-ports
查看某个具体端口是否开放
firewall-cmd --query-port=3306/tcp
表示查询3306端口是否开放了tcp协议,
如果开放会返回 yes
没有开放会返回 no
把3306端口加上
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
再使用“firewall-cmd --list-port”查看。
其他防火墙命令
#centos7查看防火墙所有信息 firewall-cmd --list-all #centos7查看防火墙开放的端口信息 firewall-cmd --list-ports #新增一个开放端口 firewall-cmd --zone=public --add-port=80/tcp --permanent #说明: #–zone #作用域 #–add-port=80/tcp #添加端口,格式为:端口/通讯协议 #–permanent 永久生效,没有此参数重启后失效 #新增多个端口: firewall-cmd --zone=public --add-port=80-90/tcp --permanent #删除 firewall-cmd --zone=public --remove-port=80/tcp --permanent #重新加载firewall-cmd --reload #查看本机已经启用的监听端口centos7以下使用netstat -ant,7使用ss ss -ant #centos7启动防火墙 systemctl start firewalld.service #centos7停止防火墙/关闭防火墙 systemctl stop firewalld.service #centos7重启防火墙 systemctl restart firewalld.service #设置开机启用防火墙 systemctl enable firewalld.service #设置开机不启动防火墙 systemctl disable firewalld.service



