关于MariaDB
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区https://mariadb.org/在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。
MariaDB虽然被视为MySQL数据库的替代品,但它在扩展功能、存储引擎以及一些新的功能改进方面都强过MySQL。
(一) 实验环境准备
Workstations上开一台Linux虚拟机,配置如下:
系统:CentOS7.x 其他配置随意。NAT网卡,可以通外网即ping通百度。
拍快照:以后每次实验完之后都拍一个快照。
(二) 配置阿里云yum源——解决安装包的问题
#cd /etc/yum.repos.d/ 进入yum源配置目录
#yum repolist 加载yum源,看看是否可以加载到安装包,如果没有请继续>>>
#mkdir bak 创建备份目录
#mv .repo bak/ 把当前所有以repo结尾的文件移动到bak目录下
打开本地电脑任意浏览器进入阿里云镜像站地址:https://opsx.alibaba.com/mirror找到centos点击后面的帮助,找到自己对应的系统,复制curl那条命令到自己的虚拟机上运行即可下载我们需要的yum源repo文件了。命令如下:
#curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#cd /etc/yum.repos.d/ 进入yum源配置目录。
#ls 查看一下阿里云CentOS-Base.repo文件是否已经下载成功了
#less CentOS-Base.repo 查看文档里面是否是阿里云的地址,如www.aliyun.com等字样,有的话说明你下载的是可用的阿里云yum源,如果是一条乱码的话那就说明你下的源不可用,就可以考虑换用其他yum源了,使用q退出。
#yum clean all 清理旧的yum源配置环境。
#yum repolist 加载yum源,如果能加载到安装包,才说明成功。
#yum makecache 缓存yum源,这样下包就快一点。
阿里云yum源配置完成
(三) 安装mariadb-server服务
- 安包
yum install mariadb-server -y
- 修改配置文件——我们这里默认不修改。
- 启动服务
#systemctl start mariadb 启动Mariadb服务
#systemctl status mariadb 查看mariadb服务状态,为running即可。
#systemctl enable mariadb 设置Mariadb服务自启动。 - 验证
#mysql 可以进入数据库即算安装成功,exit退出数据库。
至此,Mariadb数据库就算安装成功了,接下来就是如何使用了>>>
拍一个快照,取名“数据库部署完成”
(四) Mariadb数据库简单应用即:增、删、改、查。
- 登录数据库
mysql -u root -p 回车,密码为空,再回车,进入数据库。
- 创建数据库
命令:create database <数据库名>
例如:
create database test;
- 显示数据库
show databases;
- 连接数据库
命令: use <数据库名>
例如:use test; #进入刚刚我们自己创建的test数据库。 -
命令:create table <表名> ( <字段名1> <类型1> [,…<字段名n> <类型n>]);创建数据表
例如,建立一个名为MyClass的表,
字段名 数字类型 数据宽度 是否为空 是否主键 自动增加 默认值
id int 4 否 primary key auto_increment
name char 20 否
sex int 4 否 0
degree double 16 是
在test数据库里面输入命令:
create table MyClass(
id int(4) not null primary key auto_increment,
name char(20) not null,
sex int(4) not null default ‘0’,
degree double(16,2)); - 查询表中的数据
1)、查询所有行
命令: select <字段1,字段2,…> from < 表名 > where < 表达式 >
例如:查看表 MyClass 中所有数据
select * from MyClass;
2)、查询前几行数据
例如:查看表 MyClass 中前2行数据
select * from MyClass order by id limit 0,2;
7. 表插入数据
命令:insert into <表名> [( <字段名1>[,…<字段名n > ])] values ( 值1 )[, ( 值n )]
例如:往表 MyClass中插入二条记录, 这二条记录表示:编号为1的名为Tom的成绩为96.45, 编号为2 的名为Joan 的成绩为82.99, 编号为3 的名为Wang 的成绩为96.5。
代码如下:
insert into MyClass values(1,‘Tom’,77,96.45),(2,‘Joan’,88,82.99), (2,‘Wang’,99, 96.59);
8. 修改表中数据
语法:update 表名 set 字段=新值,… where 条件
update MyClass set name=‘Mary’ where id=1;
9. 增加字段
命令:alter table 表名 add字段 类型 其他;
例如:在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0
alter table MyClass add passtest int(4) default ‘0’
10. 备份数据库
ctrl+d 退出数据库 ,cd回到家目录,进行一下操作。
- 导出整个数据库
命令: mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -uroot -p test > test.sql - 导出一个表
命令:mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u root -p test YouClass > YouClass.sql
然后,重新计入数据库mysql -u root -p,继续>>>
- 删除字段
删除我们刚新增加的字段。
use test;
alter table MyClass drop passtest; - 删除表中数据
命令:delete from 表名 where 表达式
例如:删除表 MyClass中编号为1 的记录
delete from MyClass where id=1;
查询验证一下:看看是否已经删除对应数据。
select * from MyClass; - 删除数据表
命令:drop table <表名>
例如:删除表名为 MyClass 的表
drop table MyClass;
验证一下
show tables; - 删除数据库
命令:drop database <数据库名>
例如:删除名为 test的数据库
drop database test;
show database; - 还原数据库
在家目录下执行
#mysql -u root -p test < test.sql
验证:
mysql -u root -p
show databases; 看到test数据库即可。
use test
show tables; 看到MyClass表即可。
参考博客:
https://www.cnblogs.com/bluealine/p/7832219.html