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常见命令
查看命令 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
数据库参数配置优化-连接相关参数,文件相关参数,缓存控制参数,引擎专用参数