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. 端口不通(服务器可能没开机)
解决:> 停掉防火墙/添加允许主机访问端口的权限/开启服务