数据库

    #1、下载:MySQL Community Server 5.7.16
    http://dev.mysql.com/downloads/mysql/
    
    #2、解压
    如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:C:mysql-5.7.16-winx64
    
    #3、添加环境变量
    【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】
     
    #4、初始化
    mysqld --initialize-insecure
    
    #5、启动MySQL服务
    mysqld # 启动MySQL服务
    
    #6、启动MySQL客户端并连接MySQL服务
    mysql -u root -p # 连接MySQL服务器
      
    Linux版本
      http://www.cnblogs.com/linhaifeng/articles/7126847.html

  2,加环境变量
  3,把mysqld软件做成系统服务
    注意:制作之前先把mysqld关掉
    C:Windowssystem32>tasklist |findstr mysqld
    mysqld.exe                    8372 Console                    2    454,916 K

    C:Windowssystem32>taskkill /F /PID 8372
    成功: 已终止 PID 为 8372 的进程。


    制作:
        mysqld --install

        查看:
            windows+r
            输入services.msc

1、在mysql安装目录下新建my.ini文件
    2、修改my.ini
        [mysqld]
        character-set-server=utf8
        collation-server=utf8_general_ci

        [client]
        default-character-set=utf8

        [mysql]
        default-character-set=utf8

    3、重启mysqld
    4、客户端登录,输入s查看结果

1、文件夹(库)
    增
        create database db1 charset utf8;
    改
        alter database db1 charset gbk;
    查
        查看所有库的库名
        show databases;
        单独查看某一个库的信息
        show create database db1;
    删
        drop database db1;

2、文件(表)
    首先切换文件夹:
        use db1;
        select database(); #查看当前所在的文件夹
    增
        create table t1(id int,name char);
    改
        alter table t1 modify name char(16);
    查
        查看当前库下所有的表名
        show tables;
        查看t1表的详细信息
        show create table t1;
        查看表结构
        desc t1;

    删
        drop table t1;

3、文件的一行内容(记录)
    增
        insert into db1.t1 values
        (1,'egon'),
        (2,'alex'),
        (3,'lxx');
    改
        update db1.t1 set name='sb' where id > 1;
    查
        select id,name from db1.t1;
    删
        delete from db1.t1 where name = "SB" ;




create table t1(id int)engine=innodb;
create table t2(id int)engine=myisam;
create table t3(id int)engine=blackhole;
create table t4(id int)engine=memory;

information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等
performance_schema: MySQL 5.5开始新增一个数据库:主要用于收集数据库服务器性能参数,记录处理查询请求时发生的各种事件、锁等现象 
mysql: 授权库,主要存储系统用户的权限信息
test: MySQL数据库系统自动创建的测试数据库

1 语法(help create database)
CREATE DATABASE 数据库名 charset utf8;
2 数据库命名规则:
可以由字母、数字、下划线、@、#、$
区分大小写
唯一性
不能使用关键字如 create select
不能单独使用数字
最长128位

1 查看数据库
show databases;
show create database db1;
select database();
2 选择数据库
USE 数据库名
3 删除数据库
DROP DATABASE 数据库名;
4 修改数据库
alter database db1 charset utf8;

来自 <http://www.cnblogs.com/linhaifeng/articles/7211690.html> 

什么是存储引擎?
存储引擎说白了就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方
法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)
SQL 解析器、SQL 优化器、缓冲池、存储引擎等组件在每个数据库中都存在,但不是每 个数据库都有这么多存储引擎。MySQL 的插件式存储引擎可以让存储引擎层的开发人员设 计他们希望的存储层,例如,有的应用需要满足事务的要求,有的应用则不需要对事务有这 么强的要求 ;有的希望数据能持久存储,有的只希望放在内存中,临时并快速地提供对数据 的查询。 
一种类型表明的是一种存储方式
存储引擎:就是表的类型,不同的类型就会对应不同的处理机制去处理他
事务:就是要么同时成功,要么同时不成功
使用存储引擎
方法1:建表时指定
存储引擎
1.create table t1(id int) engine = innodb 会出现2个文件
2.create table t2(id int) engine = myisam 会出现3个文件(速度比上面的快),但是我们还是用innodb存储 
3.create table t3(id int) engine = memory 只有表结构没有表数据,是创建到内存中的
4.create table t4(id int) engine = blackhole  黑洞,吃数据(数据存进去就没有了,存进去就没有了)
方法2:在配置文件中指定默认的存储引擎
/etc/my.cnf
[mysqld]
default-storage-engine=INNODB
innodb_file_per_table=1



http://www.cnblogs.com/haiyan123/p/7476241.html  (数据库具体描述)
  http://www.cnblogs.com/haiyan123/p/7476241.html (基本操作和存储引擎)
http://www.cnblogs.com/haiyan123/p/7482040.html  (数据库的数据操作)
原文地址:https://www.cnblogs.com/maojiang/p/9005492.html