一、什么是数据库

一般而言,数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。所以,使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

RDBMS即关系数据库管理系统(Relational Database Management System)的特点:

1.数据以表格的形式出现

2.每行为各种记录名称

3.每列为记录名称所对应的数据域

4.许多的行和列组成一张表单

5.若干的表单组成database



二、基本术语

数据库: 数据库是一些关联表的集合。.

数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的网格表。

列: 一列(数据元素) 包含了相同类型的数据, 例如姓名,年龄等。

行:一行(元组,或记录)是一组相关的数据,例如一个学生的相关信息。

冗余:存储两倍数据,冗余可以使系统速度更快。

主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。

外键:外键用于关联两个表。

复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。

索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。

参照完整性: 参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性。





三、mysql简介

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

1、mysql的下载和安装

可以根据不同的操作系统寻找相关教程。

2、设置root用户密码

Mysql安装成功后,默认的root用户密码为空,你可以使用以下命令来创建root用户的密码。

mysqladmin -u root password "*******"; ******就是设置的新密码。

3、登录mysql

通过mysql -u root -p命令,回车输入密码登录。

4、管理mysql服务

对于linux而言,使用如下命令开启或关闭mysql服务

service mysql start/stop

对于windows而言,使用如下命令开启或关闭mysql服务

net start/stop mysql

或者在windows 服务中找到mysql启动即可。

5、添加 MySQL 用户

通过在 mysql 数据库中的 user 表添加新用户来实现。

例如添加一个用户名为chen,密码为chen的用户,并授权用户可进行 SELECT, INSERT 和 UPDATE操作权限。

1)登录mysql     mysql -u root -p

2)选中数据表    use mysql;

3)插入用户数据  

INSERT INTO user 

(host, user, password, select_priv, insert_priv, update_priv) 

VALUES ('localhost', 'chen', PASSWORD('chen'), 'Y', 'Y', 'Y');

4)重新载入授权表或者重启mysql服务   FLUSH PRIVILEGES;

5)查看是否添加成功  SELECT host, user, password FROM user WHERE user = 'chen';

你可以在创建用户时,为用户指定权限,在对应的权限列中,在插入语句中设置为 'Y' 即可。

可以看出MySQL的SQL语句以分号 (;) 作为结束标识。

6、常用命令

1)USE 数据库名:

选择要操作的Mysql数据库,必须先指定操作那个数据库。使用该命令后所有Mysql命令都只针对选中的数据库。

2)SHOW DATABASES: 

列出当前MySQL中的所有数据库列表。

3)SHOW TABLES:

显示指定的数据库中的所有表,使用该命令前需要使用 use 命令来选择要操作的数据库。

4)SHOW COLUMNS FROM 数据表:

显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息。

5)SHOW INDEX FROM 数据表:

显示数据表的详细索引信息,包括PRIMARY KEY(主键)。

6)SHOW TABLE STATUS LIKE [FROM db_name] [LIKE 'pattern'] \G: 

该命令将输出Mysql数据库管理系统的性能及统计信息。

SHOW TABLE STATUS  FROM MYTEST;   # 显示数据库 MYTEST 中所有表的信息

SHOW TABLE STATUS from MYTEST LIKE 'test%';     # 表名以runoob开头的表的信息

SHOW TABLE STATUS from MYTEST LIKE 'test%'\G;   # 加上 \G,查询结果按列打印

mysql学习之基础知识的更多相关文章

  1. jQuery学习笔记 - 基础知识扫盲入门篇

    jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...

  2. Ant学习-001-ant 基础知识及windows环境配置

    一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...

  3. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  4. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  5. 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))

    关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...

  6. 学习Python3基础知识过程中总结

    print()中end==""的用法 例子:用Python3输出九九乘法表: for i in range(1,10): for j in range(1,i+1): s=i*j ...

  7. three.js学习笔记--基础知识

    基础知识 从去年开始就在计划中的three.js终于开始了 历史介绍 (摘自ijunfan1994的转载,感谢作者) OpenGL大概许多人都有所耳闻,它是最常用的跨平台图形库. WebGL是基于Op ...

  8. MySQL系列(一)--基础知识(转载)

    安装就不说了,网上多得是,我的MySQL是8.0版本,可以参考:CentOS7安装MySQL8.0图文教程和MySQL8.0本地访问设置为远程访问权限 我的MySQL安装在阿里云上面,阿里云向外暴露端 ...

  9. SQLServer学习笔记<>.基础知识,一些基本命令,单表查询(null top用法,with ties附加属性,over开窗函数),排名函数

    Sqlserver基础知识 (1)创建数据库 创建数据库有两种方式,手动创建和编写sql脚本创建,在这里我采用脚本的方式创建一个名称为TSQLFundamentals2008的数据库.脚本如下:   ...

随机推荐

  1. 关于Metadata Client Object Model 的一些操作

    一.查询指定的Termset及子项 <script type="text/javascript" src="/Style%20Library/aaaa/Script ...

  2. 【NOIP2016】愤怒的小鸟(状压DP)

    题意: Kiana最近沉迷于一款神奇的游戏无法自拔. 简单来说,这款游戏是在一个平面上进行的. 有一架弹弓位于(0,0)处,每次Kiana可以用它向第一象限发射一只红色的小鸟,小鸟们的飞行轨迹均为形如 ...

  3. delphiIDE 把 window 桌面改慢后的 还原方法

    在开始搜索框中键入services.msc,然后按回车键,打开服务列表. 重启这个服务就可以了.

  4. 搭建redis集群时所遇问题及解决方法

    单独一台虚拟机(系统CentOS 7) 问题1 创建redis集群环境时,输入以下命令 [root@localhost redis-cluster]# ./redis-trib.rb create - ...

  5. LeetCode OJ--Binary Tree Level Order Traversal

    http://oj.leetcode.com/problems/binary-tree-level-order-traversal/ 树的层序遍历,使用队列 由于树不是满的,还要分出每一层来,刚开始给 ...

  6. WCF的学习之旅

    一.WCF的简单介绍  Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口,它是MS为SOA (S ...

  7. js-html音乐播放

    <img src="images/music.png" id="music" class="rotate"> <audio ...

  8. 计蒜客 微软大楼设计方案(RMQ)

    题目链接 微软大楼设计方案 中文题就不说题意了~ 首先是简单版本 满足$1 <= n, m <= 50$ 那么设$c[i][j]$为从第$i$幢楼到第$j$幢楼的最低的那幢楼的高度 计算两 ...

  9. 洛谷——P1988 火炬

    P1988 火炬 题目描述 2008北京奥运会,你想成为四川汶川的一名火炬手,经过层层选拔,终于到了最后一关,这一关是一道很难的题:任意给定一个正整数N(N<=100000),求一个最小的正整数 ...

  10. Oracle8i Internal Services

    http://d.hatena.ne.jp/yohei-a/20091017/1255791152 第1回 Oracle8i Internal Services 1人読書会 Oracle 読んだところ ...