Linux(centos7)下安装mariadb10详解

目录

问题

1.旧版本删除

2.创建MariaDB.repo文件

3.安装mariadb10

4.初始化配置

5.设置密码

6.测试

7.其他

配置字符集


MariaDB 和 MySQL 之间存在紧密的关系。
起源:MariaDB 最初是作为 MySQL 的一个分支而创建的。它的初始目标是保持与 MySQL 的兼容性,并提供额外的功能和性能改进。

共同的代码基础:MariaDB 使用了 MySQL 的代码基础,并在此基础上进行了修改和扩展。因此,MariaDB 和 MySQL 在语法和功能上有很大的相似性,许多 MySQL 的应用程序可以直接在 MariaDB 上运行。

开发和社区:MariaDB 有自己的开发团队和社区,他们致力于对 MariaDB 进行改进、维护和支持。尽管有许多共享的开发者和贡献者,但现在 MariaDB 和 MySQL 已经成为两个相对独立的项目。

功能增强:MariaDB 在保持与 MySQL 兼容的同时,也添加了一些新的功能和改进。例如,它支持更多的存储引擎,如 XtraDB(一个 InnoDB 的分支)、Aria、MyRocks 等,以及其他性能和安全性的增强。

开源社区:MariaDB 和 MySQL 都是开源的,拥有活跃的社区支持和贡献者。这些社区致力于解决问题、提供支持、发布更新版本,并推动数据库的发展。

尽管 MariaDB 是作为 MySQL 的一个分支而起步的,但随着时间的推移,它已经发展成为一个独立的数据库管理系统,并在许多方面超越了 MySQL。然而,两者之间仍然存在相似性和兼容性,使得用户能够在 MariaDB 和 MySQL 之间进行无缝迁移和互操作。

问题

前面说了些废话,在centos7中安装mariadb时,会默认版本为5.5或5.6的,这会导致一个问题,在建表时

createtime timestamp default current_timestamp,
updatetime timestamp default current_timestamp,

以上两个会冲突,也就是说这种格式在老版本中只能存在一个,当然有一种简单的方式解决,如下:

createtime timestamp  default '0000-00-00 00:00:00' ,
updatetime timestamp default current_timestamp,

为了防止还有其他问题,这里建议直接将mariadb升级到10,以绝后患。

1.旧版本删除

先查出旧版文件,旧版必须得删除,不然麻烦很多

rpm -qa | grep mariadb

再逐个删除(文件名可能不同,按自己的来)

yum remove mariadb-server-5.5.68-1.el7_5.x86_64
yum remove mariadb-5.5.68-1.el7_5.x86_64
yum remove mariadb-libs-5.5.68-1.el7_5.x86_64

2.创建MariaDB.repo文件

在目录 /etc/yum.repos.d/ 下创建文件 MariaDB.repo

vim /etc/yum.repos.d/MariaDB.repo

将以下代码复制进去(这里用了阿里云镜像,不是国外服务器,原网站无法用)

[mariadb]
 
name = MariaDB
 
baseurl = http://mirrors.aliyun.com/mariadb/yum/10.3/centos7-amd64/
 
gpgkey =  http://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
 
gpgcheck = 1
 

按5次(esc ) + (:wq) + 按下(enter) 保存文档并返回

3.安装mariadb10

sudo yum install MariaDB-server MariaDB-client

4.初始化配置

启动MariaDB

systemctl start mariadb

开启自启动

systemctl enable mariadb

查看状态

systemctl status mariadb

5.设置密码

进入密码设置页

mysql_secure_installation

首次没有密码,直接多次回车,跳过以下提示
Enter current password for root (enter for none):<–初次运行直接回车

设置密码

Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
Y

设置密码时,是不可见的,直接盲打,然后回车就行

New password: 

Re-enter new password: 
Remove anonymous users? [Y/n] 
是否删除匿名用户,Y,回车
Disallow root login remotely? [Y/n]
是否禁止root远程登录,N,回车,
Remove test database and access to it? [Y/n]
是否删除test数据库,N,回车
Reload privilege tables now? [Y/n] 
是否重新加载权限表,直接回车

6.测试

-u 后接用户名,这里是root
-p 后接密码,这里是123456

mysql -uroot -p123456

在这里插入图片描述

7.其他

配置字符集
vi /etc/my.cnf

文件中写入以下

[mysqld]
 
init_connect='SET collation_connection = utf8_general_ci'
 
init_connect='SET NAMES utf8'
 
character-set-server=utf8
 
collation-server=utf8_general_ci
 
skip-character-set-client-handshake
vi /etc/my.cnf.d/client.cnf

文件中写入以下

default-character-set=utf8
vi /etc/my.cnf.d/mysql-clients.cnf

文件中写如以下

default-character-set=utf8

重启

systemctl restart mariadb

验证

mysql> show variables like "%character%";show variables like

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值