在CentOS中默认安装有MariaDB(MySQL的一个分支),可先移除/卸载MariaDB。
yum remove mariadb
// 查看是否存在mariadb
rpm -qa|grep -i mariadb
// 卸载 mariadb
rpm -e --nodeps rpm -qa|grep mariadb
yum安装
下载rpm
// 5.6版本
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
// 或者下载5.7版本
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
安装rpm
rpm -ivh mysql57-community-release-el7-10.noarch.rpm
检查是否安装成功,如下图安装成功:
ls -1 /etc/yum.repos.d/mysql-community*
安装MySQL服务器
yum -y install mysql-community-server
启动MySQL
systemctl start mysqld.service
查看运行状态
systemctl status mysqld.service
找到MySQL root用户的初始密码:
grep "password" /var/log/mysqld.log
使用临时密码连接客户端(如果mysqld.log中没有临时密码,可能密码为空):
mysql -uroot -p:E+,Y_Dp_35j
修改密码安全限制,否则不能使用简单密码
临时修改:
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
永久修改:
MySQL默认的配置文件:
vim /etc/my.cnf
validate_password_policy=0
validate_password_length=1
修改后重启MySQL
service mysqld restart
修改密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
授权远程访问:
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';
如果需要远程连接,注意开放3306端口或者关闭防火墙。
MySQL默认的数据文件目录:
show variables like ‘datadir’;
/var/lib/mysql/
MySQL默认错误日志文件:
show variables like ‘log_error’;
/var/log/mysqld.log
如果忘记了root密码或者用临时密码无法登录:
vim /etc/my.cnf
在配置文件中加一行skip-grant-tables
[mysqld]
skip-grant-tables
重启数据库服务
service mysqld restart
然后使用mysql命令登录,使用以下密码修改密码。
mysql> update user set authentication_string=password('123456') where Host='localhost' and User='root';
修改以后,在配置文件中去掉skip-grant-tables,重启数据库服务。
再使用 mysql -uroot -p123456登录。修改密码安全限制和授权远程访问依然要做。