MySQL入门到精通.ppt

上传人:牧羊曲112 文档编号:5441053 上传时间:2023-07-07 格式:PPT 页数:152 大小:1.56MB
返回 下载 相关 举报
MySQL入门到精通.ppt_第1页
第1页 / 共152页
MySQL入门到精通.ppt_第2页
第2页 / 共152页
MySQL入门到精通.ppt_第3页
第3页 / 共152页
MySQL入门到精通.ppt_第4页
第4页 / 共152页
MySQL入门到精通.ppt_第5页
第5页 / 共152页
点击查看更多>>
资源描述

《MySQL入门到精通.ppt》由会员分享,可在线阅读,更多相关《MySQL入门到精通.ppt(152页珍藏版)》请在三一办公上搜索。

1、MySQL入门,课程总目标,MYSQL安装及配置有关数据库的DDL操作有关数据表的DDL操作数据库的CRUD操作索引、视图事务控制存储过程、触发器权限管理数据的导入、导出,目标,数据库介绍数据库相关的基本概念MYSQL简介MYSQL下载、安装及配置启动和停止MYSQL服务,为何使用数据库,存储数据的方法第一种方法:用大脑记住 数据第二种方法:写在纸上第三种方法:写在计算机的内存中第三种方法:写成磁盘文件,数据库能做什么,存储大量数据,方便检索和访问保持数据的一致、完整共享和安全通过组合分析,产生新的有用信息,数据库的发展,萌芽阶段-文件系统使用磁盘文件来存储 数据初级阶段-第一代数据库出现了网

2、状模型、层次模型的数据库中级阶段-第二代数据库关系型数据库和结构化查询语言高级阶段-新一代数据库“关系-对象”型数据库,当前数据库产品,Oracle-甲骨文DB2-IBMSQL Server-微软Sybase-赛贝斯My SQL-甲骨文,数据库和应用程序,数据库的基本概念,概念模型:基于客户的想法和观点所形成的认识和抽象实体(Entity):客观存在的、可以被描述的事物。如:员工、部门属性(Attribute):用于描述实体所具有的特性或特征。如:使用编号、姓名、部门、工资等属性来描述员工的特征关系(Relationship):实体之间的关系。如:部门和员工之间有一对多的关系,数据库的基本概念

3、,数据模型:也叫关系模型,是实体、属性、关系在数据库中的具体体现关系数据库:用于存储各种类型数据的“仓库”,是二维表的集合。表:实体的映射行和列:行代表一个具体的实体的数据。也叫一条记录。列是属性的映射,用于描述实体的。主键和外键:主键:是指定该列的值可以唯一的标识该条记录外键:是指定该行记录从属于主表中的一条记录,主要用于保证参照完整性。,数据库的基本概念,数据库管理系统(DBMS),My SQL是什么,My SQL是最流行的开放源码SQL数据库管理系统My SQL是一种关系数据库管理系统My SQL软件是一种开放源码软件My SQL数据库服务器具有快速、可靠和易于使用的特点My SQL服务

4、器工作在客户端/服务器模式下,或嵌入式系统中My SQL数据库软件是一种客户端/服务器系统,由支持,My SQL是什么,不同后端的1个多线程SQL服务器,数种不同的客户端程序和库,众多管理工具和广泛的应用编程接口API组成。有大量可用的共享My SQL软件,My SQL体系结构,My SQL的发展,My SQL最早起始于1979,开始是Michael.Monty.Widenius为瑞典的TcX公司创建的UNIREG数据库工具1996年5月My SQL 1.01996年10月以用于Linux和Solaris系统的二进制分发形式发布2003年3月My SQL 4.02004年6月My SQL 4.

5、12005年10月My SQL 5.0,My SQL的发展,2008年1月16日Sun出价10亿美元收购 了My SQL2011年,My SQL的特性,内部构件和可移植性使用C和C+编写,能够工作在众多不同的平台上列类型众多列类型,定长和可变长度记录语句和函数安全允许基于主机的验证可伸缩性和限制,My SQL 的特性,连接性在任何平台上,客户端可使用TCP/IP协议连接到My SQL服务器本地化客户端和工具,著名的My SQL用户,GoogleGoogle和My SQL建立了协议,它所有的数据库都建立在My SQL之上其收购的世界最大的视频网站YouTube也采用了My SQL数据库雅虎财经网

6、站的数据库维基百科腾讯大家所熟知的腾讯QQ就是采用Linux操作系统+My SQL数据库平台,My SQL数据库下载,帮助手册下载,My SQL安装,见操作演示。,启动和停止My SQL服务,以Windows服务方式启动从命令行启动服务器在命令行窗口下切换到My SQL安装目录bin目录下启动:Mysqld-nt-console-服务器在前台运行,需另开一个控制台窗口来运行客户端程序Net start mysql停止:Mysqladmin-u root p shutdown,总结,数据库介绍数据库相关概念My SQL简介My SQL下载、安装和配置启动和停止My SQL服务,MYSQL数据库表

7、管理,目标,数据库管理SQL简介有关数据库的DDL操作数据表的列类型有关数据表的DDL操作帮助的使用,客户端程序连接与断开服务器,连接:My sql h My SQL服务器地址-u 用户名-p-h(hostname)My SQL数据库主机地址-u(username)登录My SQL数据库服务器主机的用户-p(password)用户登陆My SQL服务器的密码本地登陆用:my sql u 用户名 p断开:在my sql提示符下输入quit(或q)随时退出,SQL语句概述,SQL:结构化查询语言(Structured Query Language)一般读作si:kju:或”ess-que-el”(

8、字母”S”、”Q”、”L”的发音)在关系型数据库上执行数据操作、数据检索以及数据维护的标准语言。,SQL分类,在My SQL数据库中,SQL语句主要可以划分为以下几类:DDL(Data Definition Language):数据定义语言,定义对数据库对象(库、表、列、索引)的操作Create、Drop、Alter、Rename等DML(Data Manipulation Language):数据操作语言,定义对数据库记录的操作Insert、Delete、Update、Select、Truncate等,SQL分类,DCL(Data Control Language):数据控制语言,定义对数据

9、库、表、字段、用户的访问权限和安全级别Grant、Revoke等Transaction Control:事务控制Start Transaction、Commit、RollBack、Savepoint等,SHOW DATABASES,语法:SHOW DATABASESLike wild;如果使用like wild部分,wild字符串可以是一个使用SQL的%”和”_”通配符的字符串。功能:列出在My SQL服务器主机上的数据库My SQL自带的数据库Information_schema:主要存储了系统中的一些数据库对象信息:如用户表信息、列信息、权限信息、字符集信息、分区信息等,SHOW DATA

10、BASES,My SQL自带的数据库:my sql:存储了系统的用户权限信息及帮助信息test:系统自动创建的测试数据库,任何用户都可以使用。,SQL语句语法,SQL语句可单行或多行书写,以”;”结尾用空格和缩进来提高语句的可读性。关键词不能跨多行或简写,大小写不敏感子句通常位于独立行,便于编辑,提高可读性例如:select*from emp;,SQL语句语法,注释:SQL标准从/*多行注释*/从-到行尾。注意:第2个破折号后面至少跟一个空格符(例如空格、tab、换行符等等)。该语法与标准SQL注释语法稍有不同。My SQL从”#”字符到行尾,Create Data Base,语法:Creat

11、e DataBase if not exists 数据库名;功能:用给定的名字创建一个数据库前提:需要获得数据库Create权限如果数据库已经存在,发生一个错误,Drop Data Base,语法:Drop DataBase if exists 数据库名;功能:删除数据库中的所有表和数据库前提:需要获得数据库Drop权限要小心使用这个命令,用USE选用数据库,语法:Use 数据库名;功能:把指定数据库作为默认(当前)数据库使用,用于后续语句。,列类型,My SQL支持多种列类型数值类型日期/时间类型字符串(字符)类型,数值数据类型整数,数值数据类型浮点数,注:M表示最大显示宽度;D表示小数点后

12、面的位数。定点数DECIMAL在内部以字符串形式存放,适合于表示货币等精度高的数据。一定要指定M和D。,日期/时间类型,注:TIMESTAMP跟时区相关,插入日期时,会先转换为本地时区后存放,而取出时,也会将日期转换为本地时区后显示。,字符串类型,SHOW,语法:Show tables from 数据库名 like wild功能:显示当前数据库中已有的数据表的信息,DESCRIBE,语法:DESCRIBE|DESC 表名列名功能:查看数据表中各列的信息用”show create table 表名;”可以查看更全面的表定义信息,用Create table创建数据表,简单语法:Create tab

13、le 表名(列名 列类型,列名 列类型,.);功能:在当前数据库中创建一张表前提:必须拥有表Create权限,关于识别符,数据库名、表名、索引名、列名和别名是识别符:操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性Windows系统大小写不敏感,Linux、Unix系统大小写敏感,建表示例,Create table dept(dept_id int,name varchar(20);Create table emp(emp_id int,name varchar(20),gender char,address varchar(100);,删除数据表,语法:Drop table if e

14、xists 表名;功能:删除指定的表,用Alter Table语句修改表的结构,修改列类型Alter table 表名 modify 列名 列类型;增加列Alter table 表名 add 列名 列类型;删除列Alter table 表名 drop 列名;,用Alter Table语句修改表的结构,列改名Alter table 表名 change 旧列名 新列名 列类型;更改表名Alter table 表名 rename 新表名;Rename table 表名 to 新表名;,My SQL帮助的使用,安装自带的文档安装目录Docsmanual.chm命令行帮助?contents 显示所有可供

15、查询的分类?类别名称 如:?Data types;?关键字 如:?Create table;,总结,有关数据库的DDL操作Show databases;Create database 数据库名;Drop database if exists 数据库名;Use 数据库名;有关数据表的DDL操作Show tables from 数据库名;Desc 表名;Create table 表名(.);Drop table if exists 表名;Alter table 表名;,总结,数据表的列类型数值类型日期类型字符串类型帮助的使用manual.chm?,作业,有一Blog系统使用的数据库是myblog,

16、现在有几个要求:创建好数据库My blog.根据实际应用情况在my blog中创建好以下两张表帐号、文章类别帐号(account)编号(category_id)、用户名(username)、密码(password)、邮箱号(email)、性别(gender)、博客名(title)通过alter table 给此表添加两个字段:昵称(nickname)、头像(headlmg),作业,文章类别表(category)编号(category_id)、帐户编号(account_id)、类别名(title)、描述(description)、文章数(articleNum)、可访问性(visible)、创建时

17、间(createdTime),常用运算符和函数,目标,常用运算符算术运算符比较运算符逻辑运算符常用函数字符串函数数值函数日期和时间函数流程函数其他常用函数,算术运算符,比较运算符,逻辑运算符,字符串常用函数,数值常用函数,日期和时间常用函数,流程函数,其他常用函数,总结,常用运算符算术运算符比较运算符逻辑运算符常用函数字符串函数数值函数日期和时间函数流程函数其他常用函数,My SQL 数据表DML操作,目标,有关数据表的DML操作Insert intoDelete、TruncateUpdate Select条件查询查询排序聚合函数分组查询,Insert语句,语法:Insert into 表名(

18、列名1,列名n)values(值1,.值n);功能:向指定的表添加指定值的记录一次性插入多条记录:Insert into 表名(列名1,列名n)values(值1,.值n),(值1,.值n),.;,Delete 语句,语法:Delete from 表名 where 条件;功能:用于删除满足指定条件的记录注:所有SQL语句的条件子句中都可以使用运算符和函数,Truncate语句,语法:Truncate table table name;功能:用于完全清空一张表,Update 语句,语法:Update 表名 set 列名1=值1,.列名n=值nwhere 条件;,Select 语句,基本语法:Se

19、lect selection_list 选择哪些列 from table_list 从何处选择行 where primary_constraint 行必须满足什么条件 group by grouping_columns 怎样对结果分组 having secondary_constraint 行必须满足的第二条件 order by sorting_columns 怎样对结果排序 limit offset_start,row_count 结果限定,普通查询,查询所有的记录的所有列Select*from employees;查询特定行Select*from emp where name=张三;查询特

20、定列Select name,age form emp;去掉重复的值Select distinct dept_id from emp;给列取别名Select name as 姓名 from emp;,条件查询,语法:Select 列名,.from 表名 where 条件;Where子句中的条件表达式可以包括运算符可以使用圆括号将一个表达式分成几个部分可以使用常量、列和函数来完成运算Where 子句中不能出现组函数,查询排序,语法Select 列名,from 表名 where 条件 order by 排序列名1asc|desc,排序列名2asc|desc,;Asc:升序,缺省;Desc:降序,查询

21、排序,例:Select*from emp order by dept_id,sal desc;Select*from emp order by rand();,分组查询,语法:Select 列名,from 表名 where 条件 group by 分组的列;Group by 子句的真正作用在于与各种聚合函数配合使用。它用来对查询出来的数据进行分组,分组后的数据执行组函数计算,最终结果自动按分组列进行升序排序。,常用聚合函数,聚合函数对一组值执行计算,并返回单个值。也叫组函数。除了count()以外,聚合函数都会忽略空值。聚合函数不能和非分组的列混合使用。,示例,Select count(*)a

22、s 总数 from emp;Select dept_id,count(*),sum(sal),avg(sal)from emp group by dept_id;查询分组中一个非常重要的规则:出现在select 列表中的列,如果出现的位置不是在组函数中,那么必须出现在group by 子句中。,Having,Having 子句用来对分组后的结果再进行条件过滤。例如:Select dept_id,avg(sal)from emp where sal between 2500 and 8000 group by dept_id having count(*)1;,Having 与Where的区别,

23、Where 子句是在分组前进行的条件过滤,所以where子句中不能使用聚合函数。Having 子句是分组后进行的条件过滤,所以having子句中可以使用聚合函数。,查询结果限定,在select语句的最后可以用limit来限定查询结果返回的起始记录和总数量。(my sql特有的)语法:Select from emp limit start_row,row_count;Start_row:起始点,默认为0Row_count:记录数例如:Select*from emp limit 6;/*检索前5条记录*/Select*from emp limit 6,10;-检索记录行7-16*,总结,有关数据表

24、的DML操作Insert into、Delete、Update、Select 条件查询查询排序聚合函数分组查询,Create Table深入,目标,Create table深入为表增加约束Not nullUnique Primary keyForeign keyCheck设置自增长及默认值选择表的存储引擎,约束,约束是在表上强制执行的一些数据校验规则,被插入、修改或删除的数据必须符合在相关字段上设置的这些约束条件。五类完整性约束Not null 非空Unique 唯一Primary key 主键Foreign key 外键Check 检查,约束定义语法,列级约束:在定义列的同时定义约束语法:列

25、定义约束类型表级约束:在定义了所有列之后定义的约束语法:列定义.,constraint 约束名 约束类型(列名)约束名的取名规则 推荐采用:表名_列名_约束类型简写约束可以在创建表时就定义,也可以在创建完表后再添加。,非空约束,Not null该列的值不能为空列级约束Create table dept(dept_id int,name varchar(20)not nul,age int);,唯一约束,Unique 要求该列的值唯一,允许为空,但只能出现一个空值列级约束、表级约束取名:表名_列名_uk例如Create table dept(dept_id int,name varchar(20

26、)Unicode not null,age int);,主键约束,Primary key用来唯一标识这行记录。一张表中只能有一个主键。功能上相当于非空且唯一。列级约束、表级约束取名:表名_列名_pk例如:Create table dept(dept_id int primary key,Name varchar(20),age int);,外键约束,Foreign key用于两表间建立关系,需要指定引用主表的那列列级约束、表级约束取名:主表名_子表名_fk语法:constraint 约束名 foreign key(子表外键列名)references 主表名(主表主键列名);My SQL中的外键

27、关系只对innodb型表有效,检查约束,Check 表达式对某列的值进行范围限制,格式限制等列级约束、表级约束取名:表名_列名_ck注意:目前My sql的check约束并不起作用。,删除约束,删除Not null约束Alter table 表名 modifiy 列名 类型删除unique约束Alter tabel 表名 drop index 唯一约束名;删除primary key约束Alter table 表名 drop primary key;删除foreign key 约束Alter table 表名drop foreign key 外键名;,自增长和默认值,Auto_increment

28、:自动增长为新的行产生唯一的标识一个表只能有一个auto_increment属性,且该属性必须为主键的一部分。Auto_increment属性可以是任何整数类型Default 默认值:指定默认值例如:create table test(id int primary key auto_increment,name varchar(20),sex varchar(6)default 默认值;,总结,约束设置自增长及默认值完整的建表语句,Select深入,目标,Select 深入多表连接查询子查询记录联合,多表连接查询,使用单个select语句从多个表中取出相关的数据,通过多表之间的关系,构建相关数

29、据的查询。多表连接通常是建立在相互关系的父子表上的。语法:Select from join_table Join type join_tableOn join_condition where where_conditionJoin_table 参与连接的表Join_type 连接类型:内链接、外连接、交叉连接、自连接,内链接,语法:Select from join_table inner join join_table2 on join_condition where where_definition只列出这些连接表中与连接条件相匹配的数据行例如:select*from emp inner j

30、oin dept on emp.deptno=dept.deptno;,外连接,语法:Select from join_table(left|right|full)outer join join_table2On join_condition where where_definition不仅列出与连接条件相匹配的行,还列出左表(左外连接)、右表(右外连接)或两个表(全外连接)中所有符合where过滤条件的数据行。分类:左外连接右外连接全外连接,交叉连接,语法:Select.From join_table cross join join_table2;没有on子句和where子句,它返回连接表中

31、所有数据行的笛卡尔积其结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。相当于:Select from table1,table2;,子查询,某些情况下,当进行查询的时候,需要的条件是另外一个select 语句的结果,这个时候,就要用到子查询。为了给主查询(外部查询)提供数据而首先执行的查询(内部查询)被叫做子查询。用于子查询的关键字主要包括in、not in、=、等MySQL从4.1开始才支持SQL的子查询一般说子查询的效率低于连接查询。表连接都可以用子查询替换,但反过来说却 不一定,总结,多表连接查询Inner joinOuter joinCro

32、ss join子查询记录联合,索引、视图,目标,索引视图,索引,索引是数据库中用来提高查询性能的最常用工具所有My SQL列类型都可以被索引,对相关列使用索引是提高select操作性能的最佳途径。My SQL提供 多种索引类型供选择:普通索引唯一性索引主键全文索引,索引,My SQL中多数索引都以Btree的形式保存。在使用以下操作符时,都会用到相关列上的索引:、=、in、betweenLike pattern(pattern不能以通配符开始),普通索引,这是最基本的索引类型,而且它没有唯一性之类的限制普通索引可以通过以下几种方式创建:直接创建索引语法:Create index 索引名 on

33、表名(列名);修改表时添加索引:语法:Alter table 表名 add index 索引名(列名);创建表的时候指定索引语法:Create table 表名(,index索引名(列名);,唯一性索引,这种索引和前面的”普通索引”基本相同,但有一个区别:索引列的所有值都只能出现一次,即必须唯一。唯一性索引可以用以下几种方式创建:创建索引语法:Create unique index 索引名 on 表名(列名);修改表时添加索引语法:alter table 表名 add unique index 索引名(列名);创建表的时候指定索引语法:create table 表名(.,unique inde

34、x 索引名(列名);,主键索引,主键是一种特殊的唯一索引,一般在创建表的时候指定语法:Create table 表名(.,primary key(列);在My SQL中,当你建立主键时,主键索引同时也已经建立起来了。不必重复设置。注:一张表只能有一个主键,即也只能有一个主键索引。也可以通过修改表的方式加入主键索引:语法:alter table 表名 add 主键索引名 primary key(列);,全文索引,My SQL中,全文索引的索引类型为fulltext。My SQL中全文索引只限于char、Varchar和text类型的列上创建。全文索引可以用以下几种方式创建:创建索引语法:Crea

35、te fulltext index 索引名 on 表名(列名);修改表时添加索引语法:alter table 表名 add fulltext index 索引名(列);创建表的时候指定索引语法:Create table 表名(,fulltext(char、varchar、text类型的字段);,删除、禁用索引,语法:Drop index 索引名 on 表名;禁用索引:alter table 表名 disable keys;打开索引:alter table 表名 enable keys;,设计索引的原则,最适合索引的列是出现在where子句中的列,或连接子句中指定的列,而不是出现在select后

36、的列。索引列的值越多不相同的,索引的效果越好不要过度索引,视图,视图(view):从一张或几张基本表中根据用户需要而生成一张虚表。视图是虚表,它在存储时只存储视图的定义,而没有存储对应的数据视图只在使用时才从基本表中搜集数据,再展现给用户。使用视图优点:简单安全:防止未经许可的用户访问敏感数据数据独立:降低数据库的复杂程度视图可以间接对表进行更新,创建视图,创建的常用语法Create or replace view 视图名 as select语句;若给定了or replace,则表示当已具有同名的视图时,将覆盖原视图。创建视图需要有Create view的权限,并且对于查询涉及的列有selec

37、t权限。,查看视图,Show tables;不仅显示当前所有的表,还会显示当前所有的视图。Desc 视图名;显示视图的结构Show Create view 视图名;显示视图的详细信息,修改、删除视图,修改的常用语法Alter view 视图名 as select语句;要有该视图的drop权限语法:Drop view if exists 视图1,视图2;,总结,索引视图,事务控制,目标,事务介绍事务的特性My SQL中的事务控制,事务介绍,事务是一个不可分割的工作单元用户定义的一个操作序列,这些操作要么都执行成功,要么都失败。数据库事务是对现实生活中事务的模拟,它由一组在业务逻辑上相互信赖的SQ

38、L语句组成。,数据库事务的特性,原子性(atomic)指整个数据库事务是不可分割的工作单元。原子性确保在事务中的所有操作要么都发生,要么都不发生。一致性(Consistency)一旦一个事务结束了(不管成功与否),系统所处的状态和它的业务规则是一致的。即数据应当不会被破坏。隔离性(lsolation)指多个事务同时操作同一数据时,每个事务都有各自的完整数据空间。,数据库事务的特性,持久性(Durability)一旦事务完成,事务的结果应该持久化数据库管理系统采用重执行日志来保证原子性、一致性和持久性。数据库管理系统采用数据库锁机制来实现隔离性。,My SQL中的事务控制,My SQL中,默认事

39、务是自动提交的。事务操作:Set Autocommit=1(默认)自动提交事务Set Autocommit=0手动提交事务Start Transaction启动新事务(特有)Commit 提交事务RollBack回滚事务Savepoint设置回滚点,总结,什么是数据库事务事务的特性My SQL中的事务控制,存储过程和触发器,目标,存储过程创建、调用、查看、删除的语法触发器,存储过程是什么,存储过程是事先经过编译并存储在数据库中的一段SQL语句的集合存储过程没有返回值,存储过程的参数可以是in、out、inout类型,存储过程的优点,存储过程只在创建时进行编译,以后每次执行存储过程都不需再重新编

40、译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。当对数据库进行复杂操作时(如对多个表进行update、insert、select、delete),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。,存储过程的优点,存储过程可以重复使用,可减少数据库开发人员的工作量。安全性高,可设定只有某此用户才具有对指定存储过程的使用权。,创建和调用存储过程,创建语法:Create procedure 存储过程名(参数列表)过程体;存储过程的参数形式:in|out|inout参数名 类型In 输入参数Out 输出参数Inout 输入输出参数调用:Call 存储

41、过程名(实际参数列表),存储过程格式,Delimiter/create procedure 存储过程名(参数列表)begin 有效的SQL语句.;end/delimiter;,查看存储过程,语法:Show Create procedure 存储过程名;查看存储过程的定义Show procedure status;查看存储过程的状态,删除存储过程,语法:Drop procedure if exists 存储过程名;一次只能删除一个存储过程。,触发器,在数据库中为响应一个特殊表格中的某些事件而自动执行的程序代码是触发器它是在一个特殊的数据库事件,如insert、update、delete等发生时,

42、自动激活的一段代码。,创建触发器,语法:Create trigger 触发器名before|after#触发时间insert|update|delete#触发事件On 表名 for each row 要触发的SQL语句;触发器只能定义在永久表上,不能对临时表创建。My SQL对同一张表相同触发时间的相同触发事件,只能定义一个触发器。,查看和删除触发器,查看所有的触发器Show trigger;只能一次查看所有的触发器的信息。语法:Drop trigger 触发器名;,总结,存储过程创建、调用、查看、删除的语法触发器,权限管理及数据导入导出,目标,帐号管理数据的导入导出,帐号的管理,创建帐号:第

43、一种方式是使用grant语句:grant 权限类型 on 对象类型 to 用户 identified by 密码第二种方法是直接操作授权表:User表-不安全,参数说明,权限类型Select、insert、update、Create等All privileges表示所有的权限类型对象类型Table、procedure*.*表示所有的对象类型用户用户名和host的组合如:root localhost,帐号的管理,查看帐号权限语法:show grants for 用户;如:show grants for itany;更改帐号权限使用grant可以新增权限是Revoke可以回收权限语法:Revoke

44、 权限类型 on 对象类型 from 用户;,帐号的管理,修改帐号密码用mysqladmin.exe命令:Mysqladmin-u 用户名 password 新密码;用set password for 用户名=password(新密码);删除帐号语法:drop user 用户名;例如:drop user itany;,数据的导入和导出,数据导出My SQL提供的mysqldump.exe客户端命令是My SQL中最常用的备份工具数据导入My SQL 提供的mysql.exe客户端连接命令可以做数据导入Mysql-u 用户名-p-D 数据库sql文件名用SQL语句:source sql文件名;,

45、Mysqldump.exe,在客户端命令行有以下3种方式来调用mysqldump.exeMysqldump 选项 数据库名 表名备份单个数据库或库中部分数据表Mysqldump 选项-database 数据库1,数据库2备份指定的一个或多个数据库Mysqldump 选项-all database备份所有数据库常用选项连接选项-u 用户名-p 密码-h 服务器IP或域名 P连接端口,Mysqldump.exe,常用选项输出内容选项-add-drop-database 每个数据库创建语句前面加上drop database语句-add drop table 在每个表创建语句前加上drop table

46、语句以上两个参数在默认情况下会自动加上-n 不包含数据库的创建语句-t 不包含数据表的创建语句-d 不包含数据示例:mysqldump-u root p d testd:test.sql,Mysqldump.exe,常用选项输出格式选项-compact 输出结果不包括默认选项中的各种注释示例:mysqldump uroot p compact d testd:test.sql-c 使得输出文件中的insert语句包括字段名称,默认不包括。示例:mysqldump uroot p compact c testd:test.sql字符集选项-default Character-set=字符集名 设置导出的客户端字符集例:mysqldump uroot p c default-character-set=gbk testd:test.sql,数据导入,数据导入Mysql-u 用户名 p D 数据库名sql文件名数据库必须已经存在选定指定数据库后执行:source sql文件名例如:在命令行执行:mysql uroot p Dtestd:test.sql在My SQL客户端执行:source d:test.sql,总结,Grant新增用户或权限Show grant for 用户;查看帐号权限Revoke回收权限数据导出数据导入,谢 谢,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号