MySQL介绍

MySQL数据库权限体系

能不能连接:用户名 用户密码以及来源主机
能不能执行操作: 操作权限 
权限级别:
  全局 数据库 表 列 程序,授权主要通过GRANT

MySQL的配置

1、mysql 配置文件<Option Files>,在MYSQL文件系统中已经有所介绍了。
Windows平台下配置文件的扩展名既可以是 .ini 也可以使 .cnf 
默认会扫描以下路径中的文件,并使用找到的第一个匹配的文件,不同平台的默认路径是不一样的,也可以
自己设定路径,只要告诉MySQL命令行文件路径,主要是通过defaults-file 和default-extra-file 这两个参数确定
my.ini         真正的配置信息
my-default.ini 存放一些默认配置信息
配置选项的语法,以及指定配置的选项
# :注释符
[] :用于定义对应命令行的选项
    [mysqld] 服务器端的配置
    [client] 客户端的配置作用于所有命令行程序
    [mysql] [mysqladmin]、[mysqldump] [mysqlhotcopy] [myisamchk]
Option_name = Option_

2、字符和字符集
    show character set

3、对象的存储引擎
    插件式 常见的 MyISAM  Innodb Federated

4、用于数据分析的数据表,当<1>查询比删除和更新多,<2>数据量比较大的情况下,可以使用增加索引等进行多表查询

MySQL常见命令

打开数据库  mysql -u root -p

查看命令 status

        show databases;
        use   your_database;
        show tables;
        DESC your_table;
        select * from your_table limit 3;
        select count(*) from your_table ;

创建命令

    创建用户
    创建数据库 create  database  your_database;
    创建表   use your_database; create table your_table(  
                item bigint NOT NULL);

查询语句

单表查询: from group  where order  in
子查询
多表查询--连接 内连接和外连接
多表查询--集合操作 union

数据的导入和导出

导入数据

<>导入数据方式
   mysqlimport命令行工具导入数据
   SQL语句导入数据 load data infile
        load  data local infile  __ into table  your_table fields terminated by ,lines terminated by;
   利用CSV存储引擎加载数据<所有列值不能为空>
<> 导入sql文件
    source   d:/myprogram/database/db.sql;
<> 导入数据库
  进入mysql数据库控制台,           mysql -u root -p
  指定当前数据库                     mysql>use 数据库
  使用source命令,后面参数为脚本文件 source d:wcnc_db.sql

导出数据

几个常用用例:
1.导出整个数据库
 mysqldump -u 用户名 -p 数据库名 > 导出的文件名    
 mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.导出一个表
 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
 mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.导出一个数据库结构
  mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
 -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table 
mysqldump -u root -p adatabase > d:\adatabase.sql
 mysqldump -u root -p adatabase  t_arab_repn2 >  d:\t_arab_repn2.sql
mysqldump -u root -p relation  graduate >  d:\graduate.sql
mysqldump -u root -p relation  university >  d:\university.sql
导出的常用格式 .sql        .txt     .csv

MySQL数据类型

MySQL支持所有标准SQL数值数据类型。
这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。
BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。
作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT,
日期和时间类型:表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。
字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。
有4种TEXT类型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。这些对应4种BLOB类型,有相同的最大长度和存储需求

MySQL的存储对象

索引
视图
触发器
过程
函数

帮助系统

help
help content
? contents

性能调优

关键性指标: IOPS QPS TPS
数据库参数配置优化-连接相关参数,文件相关参数,缓存控制参数,引擎专用参数

blogroll

social