设为首页 收藏本站
查看: 565|回复: 0

[经验分享] mariadb简单配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-1-9 16:18:55 | 显示全部楼层 |阅读模式
创建缘由就不详细说明了,直奔主题。
记录下需要了解的命令。


首先要了解概念:
MariaDB是基于mysql的,所以命令通用语mysql。
流程大致如下:

如图
登录数据库后,可以用SHOW  DATABASES; 查询数据库[1,2,3]
可以使用use 数据库1;进入该数据库
show tables; #查询该数据所有表。
select * from 表名 #查询表中所有数据

     命令行快捷键编辑

     Ctrl+a: 快速移动光标至行首

     Ctrl+e: 快速移动光标至行尾

     Ctrl+w: 删除光标之前的单词

     Ctrl+u: 删除行首至光标处的所有内容

     Ctrl+y: 粘贴使用Ctrl+w或Ctrl+u删除的内容




讲了太多废话,咱们开始吧!


创建名字为:rexhome的数据库


现在我们已经知道了下面两天命令了:
CREATE DATABASE 数据库名
DROP DATABASE 数据库名


选项                                   说明
AUTO_INCREMENT   定义自增序列
varchar(#)                 定义可变长字符
char(#)                       定义字符长,占用量固定
DEFAULT ‘默认值’        定义列的默认值
INDEX                             定义索引
[NOT]NULL                   允许/禁止NULL值
PRIMARY KEY              定义列主键
UNIQUE                         定义唯一性
CHECK                            定义可以输入值的范围/选项

1、最简单的:
CREATE TABLE t1(
id int not null,
name char(20)
);
2、带主键的:
a:
CREATE TABLE t1(
id int not null primary key,
name char(20)
);
b:复合主键
CREATE TABLE t1(
id int not null,
name char(20),
primary key (id,name)
);
3、带默认值的:
CREATE TABLE t1(
id int not null default 0 primary key,
name char(20) default '1'
);
CREATE TABLE MYHOME (
id int not null default 1,
name varchar(20) not null,
sex  char(50)
);


DESC MYHOME;  #查询该表
CREATE TABLE `test`.`table1` (
##于test数据库中创建table1表
`id` INT(3) NOT NULL ,
#行1 为id 整型(3个字符),not null 非空
`name` VARCHAR(20) NOT NULL ,
#行2为name varchar可变长字符(20个) 非空
`sex` SET('man','women') NOT NULL ,
#行3为sex,set(‘man’,‘women')只允许添加这两种文本
PRIMARY KEY  (`id`),
#主键为id行
INDEX  `name` (`name`)
#索引为name行
) ENGINE = InnoDB;
#存储引起为innodb

这是从phpmyadmin建立的表数据,咱们可以按照命令来学习对面mysql语句,这里补充点常用的。




插入数据
INSERT INTO `test`.`table1` (`id`, `name`, `sex`) VALUES ('1', 'rex', 'man');

##于test数据库的table1表中对应(id、name、sex)的值(1、rex、man)

SELECT * FROM `table1` WHERE `id` = 1

##于table1表中所有类型查询id号为1的数据

ALTER TABLE `table1` DROP PRIMARY KEY, ADD PRIMARY KEY(`sex`);

##删除table1主机,并更新sex字段为新主键

INSERT INTO `test`.`table1` (`id`, `name`, `sex`) VALUES (ASCII('2'), ASCII('111'), 'women');

##于test数据库的插入id,name,sex对应数据(ASCII类型为2,1,11,women)

UPDATE `test`.`table1` SET `id` = '1' WHERE `table1`.`sex` = 'women';

##于test数据库查找table1表中,sex为women的行,并将id更新为1

DELETE FROM `test`.`table1` WHERE `table1`.`sex` = \'man\'

##于test数据库的table1表中,删除sex=man的行(注意,因为sex字段为主键,固删除行会按照主键来查找删除的)

主键是唯一索引的一种,一个表只能有一个主键,但可以有多个唯一索引。唯一索引很好理解,就是唯一性嘛,可以通过身份证查找到你,那身份证就是主键。

但除了身份证可以找到你,还可以通过你公司的哪个部门的哪个工号找到你,这个就是唯一索引。

唯一索引内容是不可重复的,我的年龄,和你的年龄。

一般索引就是没有限制条件,但对于大数据查询时很有帮助。
比如你查11月份你的信用卡消费记录,银行的数据库里有几千万条记录,如果不建索引可能查询一下就花1,2分钟,效率太慢,建了索引数据库根据索引查效率会提高很多,0.几毫秒就能查出来。

外键呢,其实用的不多,就是两个表中的某些字段的关联关系、


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-326074-1-1.html 上篇帖子: mysql半同步复制 下篇帖子: Centos 6.8 下 Amoba 3.0 实现mysql 读写分离
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表