数据库学习入门数据库基础

上传人:痛*** 文档编号:67768120 上传时间:2022-04-01 格式:DOC 页数:29 大小:151KB
返回 下载 相关 举报
数据库学习入门数据库基础_第1页
第1页 / 共29页
数据库学习入门数据库基础_第2页
第2页 / 共29页
数据库学习入门数据库基础_第3页
第3页 / 共29页
点击查看更多>>
资源描述
数据库基础入门数据库得作用:数据就是数据库中存储得基本对象包括:文字、图形、图像、声音有组织得、可共享得数据集合常用得D BMSMYSQL (oracle、Sun)oracle(oracle)SQL Serve r (Mi c r o s o f t )DB2(IBM)、如何学习数据库管理系统O程序员1、标准语言:s QL(结构化查询语言)SQL就是用于访问 数据库得最常用标准化语言,她就是由ANS 1/ I S 0 SQL标准定义得SQL得分类DML:数据操作语言(用于检索或者修改数据)D D L :数据定义语言(用于定义数据得结构,比如创建、修改或者删除 数据库得对象)DCL:数据控制语言(用于定义数据库用户得权限)DML:selec t :用于检索数据insert:用于增加数据到数据库update :用于从数据库中修改现存得数据dele te:用于从数据库中删除数据DDL :create table 创建表alter /修改表drop table /删除表c r eat e index /创建索引dro p index / /删除索引ere a te view /创建视图dr o p view 删除视图D CL:grant /授权revo k e /撤销授权s et 设置2、不同数据库得独特管理方式.DBA ( D ata b ase A d m i ni s trator)1、标准语言:SQL (结构化查询语言)2、不同数据库得独特管理方式3、数据库得调优4、精通数据库得备份、回复机制MYSQL得安装与配置安装:选择普通安装类型、配置1、选择配置类型:D et a i 1 e d Configu ratio n2、选择服务器类型:D ev e 1 op e r M a c hi n e3、选择数据库得就是使用情况:多功能数据库(Mult i f u n ctional D a ta b a s e )只就是事务处理数据库(Tr a n s a c t iona i Databa s e Only)只就是非事务处理数据库(No nT r ans a c tio n a 1 Da t a b a se Only)4、I nnoD B表空间文件存储得盘符,默认在c: 5、数据库并发连接数配置:Decision s uppo r t6、MYSQL服务器端口 :默认:3 3 0 67、E nab 1 e S trie t M o de :就是否允许严格样式检查:取消8、选择字符编码:手工选择:gb23 12, windows下中文支持9、服务器默认安装到windows系统服务中,默认服务自启动,选择自 动配置环境变量10、填写数据库管理系统得管理员密码一在mySQL中数据库管理员得用户名为:root11、就是否允许使用root用户远程登录数据库12、测试配置就是否正确 c:c: m y sqlbinmysqlsho wMYSQL得登录、开始一运行-一 c md输入:mys q 1 uroot p,然后输入密码o 或者:mys q 1u r oot 一p 密码、退出qui t或者q不必全在一个行内给出一个命令,较长命令可以输入到多个行中。 m y s ql通过寻找终止分号而不就是输入行得结束来决定语句在哪儿结 束-等待多行命令得下一行等待下一行,等待以单引号开始得字符串结束如果您决定不想执行正在输入过程中得一个命令,输入c取消它能够以大小写输入关键词,结果就是等价得基本得SQL语句创建数据库c r e a t e database sc h o ol:查瞧有哪些数据库s how da t abas e s ;删除数据库d r op d a tab a se sc h ool;向数据库中存储数据1、首先进入数据库use dbname;u se类似quit,不需要一个分号,写也无碍use必须在一个单行上给出2、查瞧数据库中得表s h ow tabl e s ;3、在数据库中创建表create tab 1 e student(n a me varch a r(2 0), a ge int,sex char (2);4、 向表中插入数据inser t i nt o d bname v a lue s (张 三,18,男,);5、查瞧表中所有得数据s e lect * from st u dent;只查瞧姓名与年龄一一 s elect name, ag e fr o m student;常用得数据类型char (M)固定长度字符用来表示固定长度字符串,字符串得长度就是1一2 5 5VARC H AR (M)可变长度字符具有灵活性得字符数据类型,范围:I -255处理cha r类型得数据比varchar类型得数据要快,有时会快5 0 % (char类型存储得数据得长度就是声明变量时得固定长度,而不管数 据得实际长度,varchar存储得就是按数据得实际长度,从而减小了数 据文件得大小)int整数 有符合得范围:-2 1 4 7 4 836 4 8到2147483647,无符号范 围:0 到 429496 7 29 5其她常用得数据类型DATE日期类型,显示YYYYMM-DDDATETIME日期与时间得组合,显示,YYYYMMDDS,TEXT/BLOB 文本与大对象TEXT可以保存字符串得长度在255- 6 5 5 3 5字节内。BLOB就是一 个能保存二进制数据得大对象,区别就是TEXT不区分大小写,而BLOB区 分大小写。SQL语句得导入1、编写SQL脚本(.sql)2、导入 my s q 1 uuser n ame p * * *。s ql&练习:&老师表:te a c h e r&姓名,性别,年龄,课程导出 s q 1 脚本mys Q 1 d ump stu -uro o t 一p) a b c。sql查瞧表得结构d esc t abl e name修改表中得数据up d at e tab 1 ename s et c olname=valu ewhere条件删除数据delete fr o m t e a ch e r where a g e =?删除表中所有数据de 1 ete f r om teach e r;删除表drop t a b le tab 1 ename根据条件进行过滤查找s elect *f r om table name where 条件查找出版社为“清华出版社”得所有书籍-一-se 1 ect *from books where p u b=清华出版社;查找出库存大于50得所有书籍selec t * f r om b ook s w her e s t ore) 50;查找出西游记得库存量se 1 ect titl e , store from b ooks where title二西游记;SQL运算符大于小于 冶大于等于 =小于等于!二,不等于查瞧数据库得信息smysq 1常用函数1、查瞧数据库版本s e lect ve r s in();计算机得时间就是存在BIOSO2、 查瞧当前数据库得日期select c u rrent_d a te();3、查瞧当前数据库时间sei e ct n o w();4、查瞧当前连接数据库得用户selec t user() ; 1 oca 1 host:代表就是本机ere ate ta b le user ( i d i n t, name v a rchar ( 2 0), b i r date,dea d a t etime);in s ert into user valu e s (1, zh a ngsa n , now(), n o w();or与a nd查询or (满足一个条件)and (都需要满足)查找学生EQ为8 0分或90分得学生select * from s t u wher e EQ二80 o r EQ二 9 0;查找学生E Q为9 0分并且性别为女得学生select * fr o m stu wh e re E Q = 9 0 an d sex二女;in(x, x)返回条件中得记录与or作用相似select * from ta b 1 e n ame whe r e 条件 in(,);b e tween and返回两者之间得记录查询年龄在20-30之间得所有学生select * from s t u w h ere a ge be t we e n 20 and 30;1 ike与通配符(粉一起使用,模糊查询查找出姓张得学生se 1 e ct * fr o m s tu wh e r e n a me 1 ik e “张 ;查询出使用163邮箱得所有学生se 1 ect * f r om stu where email 1 ike 3 c o m;查询出邮箱里面含有a得所有学生s elect * f r om stu whe r e email like 4%a%;o r d er b y实现排序(从小到大)a s c将学生得年龄从拓到低排列s e lect * f r om st u ord e r b y age de s c;(降序)将学生得年龄从低到高排列sei e ct * f rom stu o r der by age a s c ;(升序)数据默认为升序(从低到高)se 1 ect * f r om s tu ord e r by age ;as为查询得列起别名I、查询所有学生只列出姓名,年龄,性别s ele c t name as 姓名,&ge a s 年龄,sex a s 性别 from stu;group by对于查询出得数据结果进行分类(分组)2、将学生按性别进行分类s e 1 e c t * from s t u gro u p b y s ex;将学生按年龄进行分类s e 1 e ct * from stu gr o u p b y a g e ;3、havi n g子查询:对 where查询出得结果再次进行查询查找出年龄大于20岁学生,并且在其中找出姓名等于x x x得学生sel e ct * fr o m st u wh e re age 2 0 having n a me= xxx 或select * from st u w h ere a ge) 2 0 and name=, xxx4、distinct过滤查询得重复型记录,只显示唯一得记录将学生性别过滤s e 1 ect d is t inct ( s ex) f r om stu;count查瞧表中有儿条数据select coun t (*) fr o m s tu;s elec t count (di s t inct ( s e x) fr o m stu;lim i t限制查询结果得输出数量同时也可以实现数据得分页查询EQ前三名得学生se 1 ect 玄 from stu o rd e r by EQ d esc limit 3;实现查询记录得分页select * f r om stu lim i t 0,3;select * from s tu 1 imit 3, 3 ;约束定义了表级得强制规则、数据得完整性非空约束(not null) crea t e tab 1 e test (id in t not null) ; in s e r t into te s t va 1 ue s ();inn o db会报错,mylSAM会整形默认以0填充唯一约束(UNI QU E)不允许列中得数据重复crea t e tab 1 e test (id int, uni q u e (id):in s e r t into te s t v a 1 ues (1);默认约束(defau 1 t ) c r eate tabl e tes t (id i n t not null defaultf 1 1 1 111); ins ert into t e st v a 1 ues ();主键约束(prim a ry key)就是一个字段或一组字段(组合键),用于唯一 标识表中得记录,它可以确保每个记录就是唯一得。cr e a t e table t est (id int, p rimary key (id);in s e r t i nto t est v a 1 u s e(l);i d主键自增,减ere a te ta b le t e st (id int, n a me v a r cha r (20), pri m ary key(i d);i n s e rt into tes t v al u es (1, 张安f );auto_ i n c r ement得特点自增值 当删除某一值时,她不会自动填充,而就是继续自增1create table tes t (id int not null auto_increment, nam e v a rchar (20), p rimary key (id):i n s er t into tes t (name) v a lu e s ( xx x );创建一个有合理约束得表create table pe o p le(id i nt not null a uto_in c rement, name var c h a r (2 0 ) not n u 11, a ge int not n u 11, s ex c ha r (2) not n ull, pco d e v a rch a r (5 0 ), tel varch a r ( 5 0), emai 1 varchar ( 5 0), p r imar y k ey (id);i ns e r t in to p e o pie (n a me, age, sex, emai 1 ) v alues (张 三,2 8,男;,);查询出所有学生得档案信息s e lect * fr o m s tudent, s c hool whe r e student da i h=scho ol、 i d;或s e lec t * from stu d ent as a, scho o 1 a s b where a daih=b. id;查询所有学生档案信息 只需显示:学生姓名,年龄。毕业学校,学校地 址s e 1 ec t st u d ent。name, st u den t、age, s ch o ol nam e , s c h o olo ad d res s from stude nt, s cho o 1 where stu d ent d a ih=scho o 1 i d ;或s e I e c t ao n a m e , a. a g e, b name, bo a d dress f r om s tu d en t a s a, scho o 1 a s b w h ere a。dai h 二b i d ;外键约束(fo r e i gn ke y )如何创建外键f ore i gn k e y:定义子中得列为外键r e fer e nc e s :标记外键所要参考得父表与列on delete cascade:允许在删除父表得列得同时,删除子表得列/ 在Inn o DB中支持ere ate date b ase fo r d b ;use fordb;创建父表c r eate table scho o 1 (id in t n o t nu 1 1 a u to_ i n c remen t , n a me varchar (20), p rimary k e y (i d ) e n gine=inn o d b ;i n se r t into s ch o ol (nam e ) values (z 紫琅学院);创建子表create table stu d ent (id i n t not null auto increme n t, n a me v arch a r ( 2 0 ), school i d int, pr i m a ry key (id), f o reign key (sc h oolid) refer e n c e s sch o ol ( i d ) on d elete casca d e );insert i nto s t uden t (n a me, s c ho o 1 id) va 1 ue s (7 张三 1);E-R模型概述:设计数据库时,通常采用实体关系模型“ER模型软件开发流程:需求调研(设讣功能,收集数据)与最终用户进行确定数据库得设计控制多余数据那么在最后,数据库设计者确定表、不同表之间得关系以及每个表之 间得关系,通常使用” E-R模型“,它将整个系统瞧作彼此相关得实体组 成实体:通常用于表示能够被清晰识别得人、地点、事物、对象、事件实体关系图:如果需要 基于E-R,模型建立数据库模型,需要标识 实体,实体得属性、以及实体之间得关系。那么通常用E-R图来表示实体之间得三种类型:1:1 1:N或X :1 M:N数据库设讣员确定得实体被转换为表,而其属性则成为相应表中得字 段(列)如何控制冗余数据:一般来说通过数据库得范式理论设讣数据库得范式来控制冗余共有五个范式,一般达到第三范式即可第一范式:对于表中得每一行,必须且仅仅有唯一得行值,在一行中得 每一列仅有唯一得值并且具有原子性第二范式:要求非主键列就是主键得子集,非主键列活动必须完全 依赖整个主键。主键必须有唯一性得元素,一个主键可以由一个或更多得 组成唯一值得列组成、一旦创建,主键 无法改变,外键关联一个表得主 键、主外键关联意味着一对多得关系、笫三范式:要求非主键列互不依赖笫四范式:禁止主键列与非主键列一对多关系不受约束第五 范式:将表分割成尽可能小得块,为了排除在表中所有得冗余MYSQL得聚合函数1、最大值找出EQ最高得学生s e 1 e ct nam e , eq from s tuden t where eq= (select max (EQ) f rom s tudent);S ELECT MAX (ar tide) AS a rtic 1 e FR OM shop;2、最小值找出EQ最低得学生se 1 e ct n a me, min (E Q) from stu dent;coun t()/统计查询出得记录总数3、查询出学生得总条数s e 1 ect c oun t (n a me) f rom stu d en t ;avg()/求平均值4、查询学生EQ得平均值s e 1 ec t a v g (EQ) from s tu d ent;sum ()/求与5、查询学生EQ得总与se 1 ect s u m(EQ) f r om s tu;修改字段类型alte r t a ble stu d en t modify se x c har ( 5 );增加列a It e r table stu dent add ad d r e ss v arch a r(5 0 );删除列al t e r t a ble s tuden t drop address;修改列得名称alt e r tabl e s t udent chan g e name name s v archar (20):修改表得名字r ename table s tudent to s tu;MYSQL之表连接内链接(i n ner joi n ): 乂为等值连接,因为她将两个表中得公共字段 有相等得值(记录)连接起来,这就是最常用得连接。一个表引用还被称为查询显示:订单编号,顾客姓名,物品名称s e 1 ec t cases id, us e r name, goo ds、 n ame fr o m c a s e s , u ser, g ood s where c as e s use r _ i d二 u se r id a nd cas e s、go o d s_id 二 goods、id ;或se 1 e ct c a s e $ o id, user、n ame, g ood s、n ame from c a ses in n er j o i n( u ser, goods) o n (user。id= c ases user_id and go o ds i d=caseso goo d s_ id);或se 1 ect c a se s、id, user n a me, g o o ds name f r om (case s inner join u ser on caseso user_ i d =user id) inner j o in g o o d s o n ca s e s。go o ds_id二goods。i d ;或sei e ct c ases id, u s er. n a me, goods nam e f rom u s er i n ner joi n (c a ses in n e r j o in goods on ca s e s、g o ods_id=go o ds id) on user i d=ca ses u s er_i d );左连接:显示sql语句中lef t join左边表中得所有记录,即 使在lef t join右边得表中没有满足连接条件得数据也被显示。当满 足连接条件时,left join右边得表中得相应得记录与left j o in左边 表中得相应记录结合显示、查询出:学生得编号,学生姓名,学生学校select stud e nt. nam e , s t u d ent. i d, s chool、nam e f rom stu d e nt 1 eft join schoo 1 on s t udent sch o ol_id二 s c hoo 1。i d ;右连接:与左连接相对应,她显示sql语句中ri ght join 右边表 中得记录,即使在right j oin左边没有得记录也被显示。当满足条件 时。right j o in左边表中相应记录将与right join右边得表中相应记 录进行结合显示。通常左连接与右连接显示得内容就是一样得。s e lec t studen t . n am e , studento id, s c h o ol. n ame from s t uden t right j o in sch o o 1 o n s tudent。school_ i d二 s c hool id;1 e f t jo i n以左边得表查询为主righ t joi n以右边得表查询为主示例:stud ent left jo i n sc h ool那么stud e nt就为左表。sch o o i就为由表MYSQL之视图视图:它可以访问一个或多个表中得数据,就是从一个或多个表中派生 出得数据对象(虚表)视图得特点:1、将复杂得查询简单化2、提供安全机制,它保证用户只可以瞧得到得数据,系统中真实得表就 是不可被存取得(现都支持更改数据)创建视图:create v i ew case _vi e w as select c a ses。id a s z 订单编 号,user、name a s 顾客姓名,goods。name as 物品 名称from us e r inner join (cases i n n er join goods on c a s e s. goods_ i d 二goods、i d ) on u ser. id二cases, u s er id;注意点:视图属于数据库,在默认情况下,将在当前数据库创建新视图。要想在 给定数据库中明确创建视图、创建时,应将名称指定为db_ n ame、vi e w_namemysq 1 c r e a te v i ew te s t v as s e 1 ect * fr o m t;视图必须具有唯一得列名,不得有重复,就像基表那样。修改视图:alt e r vi e w vi e w name a s SQL;删除视图:d r o p view vi e wname:a 1 t er vi e w c a s e_v i ew a s sele c t c a ses. id as 编号 J, us e To n am e a s 姓名,go o ds n ame a s名称from user inner j oin( cases inner join goods on cas e s .good s_ id=g o o ds i d) on u ser。id二cases、user_id;数据字典数据库得数据字典一一实际上就是一个数据库它记录着数据库管理系统中得其她数据库得操作mys q 1 数据库字典:inf o rmation_ s c h e mause i n format i on sc h em as elect * f rom v i ews;MYSQL得事务与引擎什么就是事务(t ransact i on)所谓事务,它就是一个操作序列、这些操作要么都执行,要么都不执行, 她就是一个不可分割得工作单位事务就是数据库维护数据一致性得单位,在每个事务结束时,都能保持 数据一致性my s q 1表类型:在my sql中有多种表得类型,但就是分为两类:事务类型:InnoDB、BD B非事务类型:MYISAM、MERGE、MEMORY (HEAP)I nnoD B与BDB存储引擎提供事务安全表。BDB被包含在ma c支持 它得操作系统发布得mys q 1 -max二制分发版里。I n noDB也默认被包 括在所有m ysql51二进制分发版里I n n oD B就是为处理巨大数据量时得最大性能设计。它得c pu效率 可能就是任何其她基于磁盘得关系数据库引擎所有不能匹敌得、MY I SAM管理非事务表。她提供高速存储与检索,以及全文搜索能力。I SAM数据表就是m y sql最原始得数据表,有三个文件,分别就是: frm,存放数据表得结构定义、isd,数据文件,存放数据表中得各个数据行得内容。ism,索引文件,存放数据表得所有索引信息。MYISAM就是数据表就是I SAM数据表得继承者,也就是三个文件,分 别就是:。f rm,结构定义文件;、MYD,数据文件; MYI ,索引文件。BDB数据表用两个文件 来表示,分别就是;、frm,结构定义文件。DB,数据表数据与索引文件I NN0DB:由于采用表空间得概念来管理数据表,所以她只有一个与数 据表对应、f rm文件,同一目录下得其她文件表示为空间,存储数据表得 数据与索引HEAP数据表就是一个存在与内存中得表,所以她得数据与索引都存在 于内存中,文件系统中只有一个 frm文件,及定义结构,当my s ql关闭 后数据都将消失。定义表得得类型c r ea t e t able test ( i d in t ) engine=h e ap;事务表币非事务表有儿大优势:更安全。即使mys q 1崩溃或遇到硬件问题,要么自动恢复,要么从备份 加事务日志恢复,您可以取回数据您可以合并许多语句,并用commit语句同时接受她们全部(如果 au t omit被禁止掉)您可以执行r ol 1 back来忽略您得改变(如果a ut o c omm i t被禁 止掉)如果更新失败,您得所有改变都变回原来。(用非事务安全表,所有发 生得改变都就是永久得)事务安全存储引擎可以给那些当前用读得到许多更新得表提供更 好得部署。非事务表自身有儿大优点:非事务表自身有儿大优点,因为没有事务开支,所有优点都能出现:更快需要更更少得磁盘空间执行更新需要更少得内存您可以在同一个语句中合并事务安全与非事务安全表来获得两者最好 得情况。尽管如此,在autocomm i t被禁止掉得事务里,变换到非事务安 全表依旧即使提交并且不会被回滚如何在innodb中实现事务:begi n : 告知服务器我要开始一个事物rollback:/如果事务发生异常,那么数据回滚mit:/事务执行成功,进行数据提交mysq 1 ) be g in;Query OK, 0 r ows a f fe c t e d (0 0 0 sec)m y s q 1) in se r t into tes t 1 1 val u e s (1, zhang s);Que r y OK, 1 row af f e cte d (0。0 0 se c )mys q 1 s ele c t * fr o m t estl I ;idn ame1 z h a ngs I1 r ow in s et (0. 00 s ec)mysql) e nd;ERRO R 1 0 6 4(42000) : You have a n e r r o r in you r S QLsy n t a x; check the man u al tha t c orresponds to your M y SQL serv e rv ersion for the right s y nt a x to us e ne a r end a t 1 i n e 1mysql ro 1 lbac k ;Query OK,0 rows a f f ecte d(0、 00 sec)mys q1 selectt e s t 11;Empty set (0。 00 sec)m y sql c omm i t;Que r y OK, 0r o ws af f ec t e d(0、0 0 sec)my s q 1 selec t * from testll;Empt y set (0、0 0 se c )修改表类型s q 1 语句:a 1 te r t able ta b len ame en g ine= i nnodb;注意:不可以将my s q 1系统表比如use r *或host转换成 innodb类型。系统表必须为myi s am类型对my i sam进行事务处理锁lo c k tabl e tabl e n ame (read, writ e )loc k table可以对表进行加锁控制,以保证用户并发访问时非事务 表得数据一致性u n 1 ock tab les 释放锁my s ql 之 ind e x(索引)什么就是索引?索引被用来快速找出在一个列上用一特定值得行。没有索引,mysql 不得不首先以笫一条记录开始并然后读完整个表直到她找出相关得行,表 越大,花费时间越多。如果表对于查询得列有一个索引,mysq 1能快速到达 一个位置去搜寻到数据文件得中间,没有必要考虑所有数据、索引得作用:快速找出匹配一个wher e子句得行当执行连接时,从其她表检索行对特定得索引列找出max ()或m in ()值mys q 1中得索引:索引实际上就是一个分离得列表,具有一个指向全表得指针myi s am表,索引被存储为分离文件i nno d b,索引存储为表空间得一部分mys q 1有四种类型得索引:主键(primar y key)、唯一索引(uni Que) 全文索弓 I (fu 1 1 index)、普通索引(in d ex)创建index1、c rea te i ndex indexname o n tab 1 ename (columnname);indexname (索引名称)ta b len a m e (表名称)columnnam e (要创建索引得字段名称)2、alt e r table t ablen a me ad d index inde x name (c o 1 u mnna me);查瞧索引sh o w keys fromta b lename;删除 ind e xa Iter table table n am e drop ind e xinde x n ame;full index(myisam 支持)c r ea t e table c hat (id i n t, c hatl text, chat2 text);crea t e full t ext i n d ex index_text on tabl e nam e(coll, col2);alte r tabl e t ablenam e a dd fu I ltext (c o 1 1, c ol2):高效使用索引:太多得索引,占用空间每次进行插入或更新时,索引都必须针对变化重新排序,会导致很多额外负担何处使用索引?1、where从句中条件匹配得行se 1 e c t name f r om s t u dent w h ere c o mme n t li k e “a%” ;me nt域得索引就起到了作用Ex p 1 ain分析索引语法: e x pl a in sele c t age f rom t e stl2;Ex p I a i n分析my sql中得索引:tab 1 e:查询中涉及得表type:显示连接中使用了何种类型c o ns t (最好),e q_ r ef, f ef, r ang e , index 与 a 11 pos s i b le keys:可能用到得索引ke y :实际使用得索引,可以在select语句中使用use ind e x(inde x n am e )来强制使用索引,用ignor e ind ex(i n d e x n a me)来强制 忽略索引key_ 1 en:使用得索引长度,越短越好;ref ( r efere n c e s):显示索引哪一列被使用了rows:m ysql必须检查用来返请求数据得行数extra:usin g temp o r ary(需要临时表来存储结果,通常发生在对不同得列集进行or d er by), usi g 意即mysq.根本 不能使用索引索引得算法:btr e e b itm a p使用索引注意得事项;1、合理创建索引,反之会降低数据库得查询效率,反之创建得索引会失 去意义。m y sql 得备份方式:backup % restore、cop y/冷备份、mys q1 dump sei e c t intobac k up备份myisam表得示例:use te s t;backup table c h at to c :db_b ack u p* ;只生成。frm与。myd,可以在数据库恢复后重建索引d r op t a bl e c h at;res t ore table c hat f rom c: db_backu p ;copy备份1、停止mys q 1服务器一避免在备份得时候有用户进行数据库得访问1、复制数据库得文件夹用mysqldump备份备份库1、备份#my s q 1 dum p uroot 一p d bname)x x x n ame s q 1再打开查瞧(创建表备份得sq 1语句)2、恢复#mysql - u root -p d b n ame 备份某个表1、备份#mysql d u mp uroo t -p dbn a me t a b len a mex x xnameo s q 1再打开文件进行查瞧(创建表备份得s q 1语句)2、恢复#m y s ql u root 一p d b n am e (用 s ele c t int o 备份备份:my s q lse 1 ect *from table name i n to outfil e c :db_back u p t able、dat删除表:m y sql d ele t e f rom t a bl ename;恢复:my s ql) load dat a i n f i 1 e c: db ba c kuptable datJi nt o table tab 1 en a me;作业:1、唯一索引2、全文索引要求:理解她们得意思及用途,以及实验3 select i nt o 备份MYSQL其她客户端工具查瞧数据库中有哪些数据库mysqlshow -ur o ot 一p查瞧数据库中有哪些表mysql show u r o ot -p d b n a me查瞧数据库中表得结构mysql s how 一uro o t -p dbnam e table n amemysqlch e c k客户端可以检查与修复my is am表,她还可以优化与分析 表1、mysq 1 check - u r oot - p dbn a me / /检测2、mys q lch e ck 一uroo t - pau t o-repair d bname / /如碰到有问题得表自动进行修复3、mysql c heck u r o ot p op t imize / / 优化表MYSQL管理方式连接方式my s q 1 h localh o st uroo t通过本地主机,以root用户访问,无需密码验证mysql -h loc a lhost通过本地主机,匿名用户访问,无需密码验证设置密码my s qladmin外部:1、 修改密码-my s q ladmin hlocal h ost - u root 一p pass w ord n n e wpas s wo r d H2、密码为空-m y s ql a dmin -hloc a lhos t u r oot - p passw ord ” H3、设置roo t用户远程访问密码-m y sqladmin -hremo t e ur o o t p passw o r d H内部设置密码:1、设置root用户本地登录密码set passwor d f or roo t,f lo calhost abed 1234 5 6 =passwor d( 0 00000);2、设置root用户远程登录密码set p a sswo r d for r oot/ r e m o t e =password(, ne wp a sswo rd);加密:mys q1 use startData base changedm y s q 1 create table u s e rs (us e r name varchar (50), pas s word v a r c har (50):Query OK,0 r ow s aff e cted (0。16 se c )m y sq 1 ins e r t into use r s va 1 ues (r a b cd12 3 45 6);Query OK, 1 row aff e cted (0、34 sec)mysq 1 ) in s ert i nto users values ( a b c dfg , p assword ( 1 2 3456);Query OK, 1 row a f fe c te d (0s 0 0 sec)mys ql s e 1 e c t * from users; select use r , h o s t, p a s s wo r d f orm user;user n ame I pas swordI abc d fg I *6BB4 8 37EB74329105EE4 5 68DDA7 D C67ED 2CA 2AD9 I+2 r o ws in set (0。00 se c )系统中得权限表u se r表:记录允许连接到服务器得用户帐号信息,里面得权限就是 全局级得d b表:记录各个帐号在各个数据库上得操作权限ta b le_priv记录数据表级得操作权限columns, p r i v :记录数据列级得操作权限host表:配合d b权限表对给定主机上数据库级操作权限作更细致得控制。这个权限表不受g rant与:re v oke语句得影响设置密码修改use r表直接修改user表mys q 1 use my s ql;mysqlup d a t e u ser set p a ssw o r d=passw o rd(, new password )wh er e u s er= r root7 ;mys q lfl u sh pri v i 1 egs;重新加载权限表,使修改立即生效添加用户mysql) use mys q 1mysq 1 ) i n s ert in t o user (ho s t, use r , p a s sword)v a 1 u e s( loca 1 host,te s ,pass word( 222222);mysql) flu sh pr i vile g es;授权:g r ant all on *o * to test localhos t ide nti fied by 2222 2 2 gran t select on st u s. * t o tes t 1 o calh o st * i d enti f i ed by 121212g ra nt p r ivileges(c o lumns)pr i vile g e s表示授予得权限,c o 1 u mns表示作用得列(可选)on wha t设置权限级别:全局级、数据库级、表级、列级to a ccount权限授予得用户:用user _name* h o st_n a me *这种用户名、 主机名格式、identified by p a sswo r d*设置密码pr i vileg e s 有哪些a 1 ter修改表与索引c re a t e创建数据库与表delete删除表中以有得记录drop删除数据库与表inde创建与删除索引insert向表中插入数据se 1 ec t检索表中得数据、up d ate修改表中得记录file读写服务器上得数据process查瞧服务器中执行得线程信息或杀死线程reload重载授权表或清空日志、主机缓存或表缓存s hut d o wn关闭服务器all所有权限revok e取消授权mysqlrevoke p r i v ileges (co 1 um n s) o n w h atfr o m account;注:r e vo k e可删除权限,但不能删除帐号,即使帐号已经没有任何 权限。所以u s er数据表里还会有该帐号得记录,要彻底删除帐号,需使用 d e 1 e te命令手工删除user表中得相关数据。示例:revoke a 11 on*f rom* test loc a lhos t ;d e 1 ete from u s er where us e r=; te s ;细节权限得分配与撤销grant s e 1 e ct, dele te, update on s tu d e nt, test、* t o e ric h To c alhost * i d e n t i f ied b y t est运行结果就是,eri c h用户只能通过test 密码从本机访问stude n t, test数据库,并且没有i nsert权限rev o k e sele c t, d elet e , u p d ate o n student * f r om7 er i ch lo c a 1 h ost;运行结果就是,将e r i c h用户在s tud e nt数据库中得se 1 ect, d el e t e , u p d at e权限撤销
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!