折腾了半天终于把mysql安装并配置好了,以下是安装步骤和遇到问题的解决方式
1.查看机器上是否已经安装了mysql或其相关项
# yum list installed | grep mysql
如果安装的话命令执行完显示的结果类似于:
mysql-community-common.x86_64
5.7.21-1.el6 @mysql57-community-dmr
些时需要删除已经存在的mysql及其相关项,执行以下命令
# yum -y remove mysql-community-common.x86_64
2.获取mysql
wget http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
执行该命令如果报错话在以上命令的末尾加上“ --no-check-certificate”
3.通过rpm下载mysql安装文件
yum install mysql-community-release-el6-5.noarch.rpm
完成后执行以下命令
ls /etc/yum.repos.d
此时会多出两个文件
mysql-community-source.repo
mysql-community.repo
如果安装失败请手动修改 /etc/yum.repos.d/mysql-community.repo
使mysql57下的enable=1
4.安装mysql服务
yum install mysql-community-server
5.启动mysql 服务
service mysqld start
6.查看root 密码执行以下命令
grep "password" /var/log/mysqld.log
命令执行完显示如下
2018-04-05T11:03:02.200577Z 1 [Note] A temporary password is generated for root@localhost: IV~n79*.
IV~n79*.即为初始密码
7.重置mysql密码 ,如果无法进入mysql,可以使用以下命令强制进入
killall -TERM mysqld
mysqld_safe --skip-grant-tables&
然后ctrl+c 后热行
mysql -u root -p然后输入初始密码
然后切换到mysql数据库 "use mysql; " 注意最后的分号
然后热行 update user set authentication_string=password('新的密码') where user='root'; 注意命令最后的分号
执行完以上语句,需要执行 flush privileges; 然后再热行 quit; 然后使用使令 service mysqld restart;重启 mysql服务,些时本地访问大功告成
但是在使用场景中我们要使用远程访问,请继续往下看
8.设置mysql允许远程访问
设置允许远程访问请使用以下命令
grant all privileges on *.* to 'root'@'%' identified by '新的密码' with grant option;
该命令热行完,所有数据库的所有表都可以远程访问,因为用的是"*.*",做到这不不够,因为centos 默认情况下是不开放3306端口,需要手动打开一下
请看以下命令
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT 热行成功后执行 iptables -L -n 如果3306端口开发成功,会看到以下字样
state NEW tcp dpt:3306
参考:
https://www.cnblogs.com/lzj0218/p/5724446.html
https://www.cnblogs.com/xiangxi/p/6267378.html
如有不妥之外请直接留言或者通过邮箱 775463733@qq.com联系作者