腾讯云centOS7.4上安装mysql 遇到的坑

网上找了一大堆安装教程都不行,最后用这个成功了。

 

安装mysql有两种:

1-可以使用yum安装, 

2-可以自己下载安装包安装mysql,

腾讯云的centos系统自带了yum,所以用yum安装方便点

安装步骤

1-查看yum源中是否有mysql

yum list | grep mysql

 2-发现没有想要的mysql-server服务,只有php和其他的mysql安装包

 

3-下载mysql的repo源

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

 4-安装mysql-community-release-el7-5.noarch.rpm包

sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

 5-安装mysql服务

sudo yum install mysql-server

 6-登录mysql并修改mysql的密码

mysql -u root

 登录时有可能报这样的错:

ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),

原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

sudo chown -R mysql:mysql /var/lib/mysql #这里的mysql是用户名(需要设置用户组合用户)

 7-重启mysql

service mysqld restart

 8-重置密码

1

2

3

4

$ mysql -u root

mysql > use mysql;

mysql > update user set password=password('tiger') where user='root';

mysql > exit;

 

 

此时安装成功,但是navicat还是连接不上的:还要设置防火墙端口号

 

navicat连接虚拟机(centos)中的mysql

直接上方法:

首先配置CentOS下防火墙iptables规则:

# vim /etc/sysconfig/iptables

向其中加入下列规则:

  1. -A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
  2. -A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
  3. -A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

说明:防火墙开放http用的80端口和连接MySql的3306端口。

# service iptables restart

然后配置MySQL允许远程登陆:

先在CentOS中连接Mysql数据库

# mysql -uroot -proot

执行

> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY'123456' WITH GRANT OPTION;

再执行下

> flush privileges;

 

不用重启MySql服务。最后配置工作完成,打开Windows下的Navicat就可以直接连接到CentOS下的数据库了。

 

 

 

 

2019/04/23今天连接mysql突然出现这种情况,之前用的好好的,找了半天才解决,记录一下防止下次再遇到忘记。

Access denied for user 'root'@'localhost' (using password:yes)

解决如下:

1.停止mysql服务

systemctl stop mysqld.service

 

2.修改配置文件无密码登录

vim  /etc/my.cnf

在最后加上

skip-grant-tables

保存

3.启动mysql

systemctl  start  mysqld.service

 

4.登录mysql

mysql -u root

注意这里不要加-p

5.修改密码,mysql5.7用此语法

use mysql;

update mysql.user set authentication_string=password('123456') where user='root' ; 

6.回到第二部把刚加的那句删掉

保存,重启mysql就可以了

 

 

#########################################################################

其实默认安装完了mysql后或在日志中生成一个默认的密码 /var/log/mysqld.log 中

拿到默认密码后登录mysql  进行密码重新设置

set pssword=password('your password');

如果密码级别与默认的级别要求不符时候会报

Your password does not satisfy the current policy requirements 

此时需要修改级别与最小的默认密码位数

 

  1. set global validate_password_policy=0;  
  2. set global validate_password_length=4; 

然后在进行设置密码就好了

 

 

###################

远程连接时1130错误

  1. mysql;use mysql;    
  2. mysql;select 'host' from user where user='root';    
  3. mysql;update user set host = '%' where user ='root';    
  4. mysql;flush privileges;    
  5. mysql;select 'host'   from user where user='root'; 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值