虚拟机中MySQL启动时一些常见的报错和解决办法

1.

问题:

仅下载了客户端而没下载服务端

解决:

下载客户端:yum install mariadb -y

下载服务端:yum install mariadb -y

下载之后得进行启动服务,开机服务,然后再输入mysql -uroot -y进入MySQL

启动服务:systemctl start mariadb

开机服务:systemctl enable mariadb

首先确定你是要下载mysql还是mariadb,二选一,如果都下载的话容易出现服务抢占问题

这里选择下载mariadb为例:

如果都下载了则删除冲突的包

可以用以下命令来删除(删除所有的包括mysql和mariadb):

yum remove mysql-server mysql-common mysql-libs mysql

然后重新下载mariadb的服务端yum install mariadb-server -y ,下载客户端yum install mariadb -y

# 查看服务状态 systemctl status mariadb

2.

问题:

ERROR 1130:HOST 'x.x.x.x' is not allowed to connect to this MariaDB

server

原因:没有给ip做授权

解决:做授权

# 允许root用户在任意主机访问任意数据库的任意表

MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

Query OK, 0 rows affected (0.00 sec)

# 刷新授权表

MariaDB [(none)]> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

3.

问题:

# 密码错误

ERROR 1045: Access denied user 'root'@'ip'(using password:YES)

root管理用户:root 12345678

解决:

#授权用户:root ->这里的root并不是真的系统级别的root,而仅仅是一个用户名

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

这个命令的意思是:创建一个可以从任何地方(即任何IP地址)以 root 用户名和 123456 密码登录的账户,并且赋予这个账户对数据库的所有权限。这意味着拥有用户名 root 和密码 123456 的任何人都可以访问并管理你的数据库服务器,包括读取、写入、删除数据等所有操作。

> FLUSH PRIVILEGES;->更改权限,刷新一下

Query OK, 0 rows affected (0.00 sec)

4.

问题:

# 无法连接到指定的IP连接MySQL服务(访问不到服务器的3306端口)

ERROR 2003 :Can't connect to MySQL server on 'x.x.x.x'

原因:

1. 防火墙不允许你的主机访问3306端口

2. 服务未启动

3. 端口不通(服务器可能没开机)

解决:> 停掉防火墙/添加允许主机访问端口的权限/开启服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值