摘要:CentOS 7 开始,MariaDB 成为 yum 源中默认的数据库安装包。在 CentOS 7 及以上的系统中使用 yum 安装 MySQL 包将无法使用 MySQL。可以选择使用完全兼容的 MariaDB,或卸载MariaDB重新安装 MySQL。
yum list installed | grep mariadb
yum -y remove mariadb*
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
yum repolist enabled | grep "mysql.*-community.*"
yum repolist all | grep mysql
yum-config-manager --disable mysql56-community # 禁用MySQL5.6的源
yum-config-manager --enable mysql57-community # 启用MySQL5.7的源
yum install mysql-community-server
安装的过程中有可能出错:
解决方法:
修改vim /etc/yum.repos.d/mysql-community.repo 源文件红色部分
[mysql57-community]
name=MySQL 5.7 Community Server
## baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
systemctl start mysqld
mysql -uroot,发现连接出错
解决方法:
开启防火墙后,远程访问 MySQL,需要开放 3306 端口
防火墙加入3306端口
firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --permanent --zone=public --add-port=3306/udp
firewall-cmd --reload
CentOS 7,还需要将 MySQL 服务加入防火墙,然后重启
firewall-cmd --zone=public --permanent --add-service=mysql
systemctl restart firewalld
如果防火墙未开启,会报错 'FirewallD is not running'
解决方法:
如果当前系统默认的是Python3环境,也会报错,因为firewall使用的是python2
解决方法:
修改文件内容,即首行指定的Python版本:
/usr/sbin/firewalld
/usr/bin/firewall-cmd
修改内容:
将#!/usr/bin/python env修改为/usr/bin/python2
连接数据库:mysql -uroot -p
授权任意ip访问:grant all privileges on *.* to root@"%" identified by '0';
刷新权限:flush privileges;
MySQL 默认只允许 root 帐户在本地登录,如果要在其它机器上连接 MySQL,必须修改 root 允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,添加一个新的帐户:
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY 'passwd123456' WITH GRANT OPTION;TION;
问题:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
方法:安装后,需要进入Mysql重置密码
mysql> SET PASSWORD = PASSWORD('your_new_password');
MySQL 相关:
systemctl start mysqld #启动mysql
systemctl stop mysqld #停止mysqld
systemctl restart mysqld #重启mysqld
systemctl enable mysqld #设置开机启动
systemctl status mysqld #查看 MySQL Server 状态
防火墙相关:
systemctl status firewalld #查看防火墙状态
systemctl start firewalld #打开防火墙
systemctl stop firewalld #关闭防火墙
systemctl restart firewalld #重启防火墙
CentOS7yum安装mysql+需要:libsasl2.so.2()(64bit)
CentOS 6 下 Yum 安装 MySQL 5.7 备忘
关于ModuleNotFoundError: No module named ‘gi’
收藏