找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
什么是数据库?
数据的电子仓库,以某种方式存储百万条、上亿条数据,供多个用户访问共享。

数据库数据如何进行保存?
每个数据库中的数据都是通过一个或多个api用于创建、访问、管理、复制所保存的数据。
系统中有很多动态的数据存在数据库中,需要通过访问数据库才能显示。

数据库的原理?
客户单查询,修改,删除,添加操作,通过sql语句对数据库服务器进行操作,然后将数据展现在客户端。
=============================================================================

数据库分类:
1、关系型数据库
数据库表与表之间存在某种关系,数据存储在不同的表中。如:db2、Oracle、MySQL
2、非关系型数据库
通常数据以对象的形式存储在数据库中,如:redis(键值对),hbase(列模型),mongodb(文档型)


关系型数据库特点
1.安全
2.保持数据的一致性
3.实现对表与表进行复杂的数据查询
非关系型数据库特点
1.效率高
2.容易扩展
3.使用更加灵活

=============================================================================

认识MySQL
MySQL是指MySQL数据库管理系统 术语关系型数据库
瑞典公司MYSQL db开发  oracle收购

MySQL是一种关系型数据库,将数据保存在不同的表汇总,而不是将所有的数据放在一个大仓库中,增加了速度和灵活性。
MySQL数据库是目前web端应用领域使用最广泛的,也是bs架构常用的数据库。

MySQL优点:
1、开源、免费
2、体积小、安装简单、维护成本低
3、支持多系统
4、支持多语言:python、java、php、c++等
5、支持多种存储引擎
6、与其他工具组合可以搭建免费的网站系统

lamp=linux+apache+mysql+php
lnmp=linux+nginx+MySQL+php

MySQL应用的架构:
单点数据,适用于小规模应用;
复制,适用于中小规模应用
集群,适合大规模应用
(mgr集群,三主三从,一主三从)

数据库的术语:
数据库


数据
冗余
单表
多表
临时表
视图
索引
存储
主键
外键
====================================================

linux安装mysql
rpm -qa|grep  mysql  查询linux中的数据库
yum  remove    服务名称     删除linux中的数据库指定的包
yum  remove  mysql  *    删除linux中所有的数据库包
yum   erase   数据库包     删除linux中的数据库
rpm  -e --nodeps   数据包   删除linux中的数据库
yum  install   mysql   安装数据库客户端
yum  install   mysql-server   安装数据库服务端
安装好后
service  mysqld   stop  关闭数据库服务
service  mysqld   start  开启数据库服务
service  mysqld   restart  重启数据库服务
service  mysqld   status  查看服务器状态
msyqladmin  -uroot    password   ‘123456’   设置登录密码
mysql  -u root -p     进入mysql操作界面

========================================

show databases                         显示所有的数据库
create database   库名               创建数据库
drop   database   库名               删除数据库
use  库名               使用库
show  tables   显示库里面所有的表
create table 表名(字段1  字符类型1(字符长度1),字段1  字符类型1(字符长度1))     建表语句
grant  all  privileges  on  *.* to  root@"%" identified  by "123456";    授权
flush  privileges ;  刷新权限

第三方工具连接数据库检查:
(1)防火墙关闭   service  iptables  stop
(2)数据库服务是否启动:  service    mysqld  start
(3)连接ip地址是否正确
(4)账号和密码是否正确
(5)是否设置权限,并刷新
grant  all  privileges  on  *.* to  root@"%" identified  by "123456";    授权
flush  privileges ;  刷新权限



=============================================================================



建表
步骤:
第一步 :新建一个库 create  databses  库名 ;
第二步:  use 库名    库(linux界面)或点击选择navicat中一个库
第三步:建  create  table 表名(字段名1   字符类型1(字符长度1),字段名2  字符类型2(字符长度2))
第四步:insert  into   插入数据
==============================================================
知识点:
一个汉字 占多少长度和编码有关(utf-8,gbk)

utf-8:一个汉字=3个字节
gbk:一个汉字=2个字节
认识字符类型:
int  数值类型
char     或varchar  字符类型
float    浮点型数据类型
data      时间类型
数值格式:
int   整数    2的负31次方~2的31次方     字节4
bigint      超大整数          字节:8
loat      浮点型数据     字节 :4


====================================
建表:
建表语句:
create  table  表名(字 段名1  字符类型1(字符长度),字段名2   字符类型2(字符长度),字段名3  字符类型3(字符长度))default  charset=utf8 ;
default  charset=utf8 ;默认编码格式,当插入中文数值显示???解决
案例:create  table  hz10(id  int(10),name char(20),age  int(10))default  charset=utf8 ;
desc   表名    查看结构 ;
建表约束:
表中的限制条件
作用:表在的时候加入约束的目的是为了保证表中的记录完整和有效。
(1)非空约束    (not   null)   非空,用于保证字段的值不能为空,
(2)唯一约束  (unique)         保证字段值具有唯一性(不能重复),可以为空,唯一约束可以有多个
(3)主键约束(primary  key) 保证字段值具有唯一性(不能重复),不能为空 ,一个表中只有一个主键
(4)外键约束 (forrign  key) 两个表之间的主键建立关系
(5)默认 :(default)          当字段不填数据,默认数据
(6)自增长 :auto _increment    当添加一条数据,自动增长+1

(1)  与主键约束一起使用,一般针对id
(3)每插入一条数据,指定的字段值+1



分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册