CentOS 7.x安装 MariaDB
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
CentOS 7.x安装 MariaDB
MySQL的创始人麦克尔·维德纽斯主导开发早前曾以10亿美元的价格将自己创建的公司MySQL卖给了SUN此后随着SUN被甲骨文收购MySQL的所有权也落入Oracle的手中。甲骨文公司收购了MySQL后有将MySQL闭源的潜在风险因此社区采用分支的方式来避开这个风险。
MariaDB数据库管理系统是MySQL的一个分支主要由开源社区在维护采用GPL授权许可MariaDB的API和协议兼容MySQL另外又添加了一些功能以支持本地的非阻塞操作和进度报告。
这意味着所有使用MySQL的连接器、程序库和应用程序也将可以在MariaDB下工作。
Mysql 和 Mariadb 简单的版本兼容、对应关系
Mariadb | Mysql |
---|---|
10.4~10.5 | 8.0 |
10.2~10.3 | 5.7 |
10.0~10.1 | 5.6 |
5.5 | 5.5 |
5.1~5.3 | 5.1 |
对应关系比较重要不然可能出现一些问题。比如sql语句的datetime类型使用错误会建表失败比如在Web项目中使用mysql的jdbc.driver连接pom.xml里要选择合适的版本否则会jdbc连接失败等等。
新建repo源
执行yum update
命令进行更新
repo文件是Fedora中yum源软件仓库的配置文件通常一个repo文件定义了一个或者多个软件仓库的细节内容例如我们将从哪里下载需要安装或者升级的软件包repo文件中的设置内容将被yum读取和应用
进入/etc/yum.repos.d
目录下使用vim
命令编辑文件新建Mariadb repo源
cd /etc/yum.repos.d
vim Mariadb.repo
在 Mariadb.repo下添加镜像地址为了下载速度快些这里使用了腾讯云镜像
按 i
键 进入输入模式将下方内容复制到文件中按 Esc
键 返回命令模式按 :
键 进入末行模式下输入 wq保存并退出
# MariaDB 10.5 CentOS repository list - created 2023-01-19 06:12 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
baseurl = http://mirrors.tencent.com/mariadb/yum/10.5/centos7-amd64
gpgkey = http://mirrors.tencent.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 1
安装并配置Mariadb
安装Mariadb服务
yum -y install mariadb-server
启动MariaDB服务并设置为开机自启
systemctl start mariadb
systemctl enable mariadb
连接数据库让输入密码时敲回车就行一开始没密码
mysql -u root -p
如果出现Mariadb的命令行说明数据库连接成功
设置密码
进入mysql数据库
use mysql;
设置root用户数据库密码设置成功后需要执行flush privileges;
命令刷新权限
如果Mariadb的版本在10.4.4之前,可以使用如下命令设置密码
UPDATE mysql.user SET password = PASSWORD('你要设置的密码') WHERE user = 'root';
如
UPDATE mysql.user SET password = PASSWORD('bobo@123456') WHERE user = 'root';
如果Mariadb的版本在10.4.4以上,可以使用如下命令重置密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你要设置的密码';
如
ALTER USER 'root'@'localhost' IDENTIFIED BY 'bobo@123456';
flush privileges;
exit;
执行exit;
命令退出后执行mysql -u root -p
命令输入设置的root账号密码若数据库连接成功则说明密码设置成功
开启远程连接
新增bobo用户并赋予bobo用户开启远程连接权限
create user '用户名'@'IP地址' identified by '密码';
如:
create user 'bobo'@'%' identified by 'bo@123456';
GRANT ALL PRIVILEGES ON *.* TO 'bobo'@'%'IDENTIFIED BY 'bo@123456' WITH GRANT OPTION;
flush privileges;
执行flush privileges;
命令刷新权限后可通过Navicat等数据库连接软件进行测试若连接成功则说明bobo用户成功开启远程连接权限
开启3306端口号重启防火墙
开启3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙
firewall-cmd --reload
检验端口开启是否成功
firewall-cmd --zone=public --query-port=3306/tcp