《MySQL数据库培训资料.ppt》由会员分享,可在线阅读,更多相关《MySQL数据库培训资料.ppt(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、MySQL数据库介绍深圳市艾派应用系统有限公司2021/9/261Mysql简介Mysql数据库简介Mysql常用操作Mysql管理维护Mysql数据库特点越来越多的企业级特性Mysql数据库安装Mysql连接工具Mysql体系结构表引擎字符集问题常用数据类型常用Sql语句数据库备份数据库恢复数据库维护与修复用户权限管理MySQLMySQL数据库培训目录数据库培训目录数据库安全加固2021/9/262MySQLMySQL简介简介MySQLMySQL常用操作常用操作MySQLMySQL管理维护管理维护2021/9/263常用的数据库服务器:商业:oracle,SQLserver,DB2开源:My
2、SQL,postgreSQL,SQLiteMySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购,对于Mysql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。分标准版和企业版本,企业版本提供EnterpriseMonitor工具,目前版本已经到达MySQL6。MySQLMySQL数据库简介数据库简介2021/9/26
3、4开放源代码小巧易用高性能低成本(是ORACLE价格的1/10)高可靠高速发展的数据库几乎支持所有的平台广泛应用在嵌入式、网站应用、企业级应用J2EE架构、.NET架构、还有LAMP架构众多的第三方支持(与LINBIT达成合作伙伴关系)支持web2.0得天独厚MySQLMySQL数据库特点数据库特点2021/9/265MySQL的技术进展MySQL3.23开始支持外键(InnoDB)MySQL4.1开始支持R-trees索引(MyISAM)MySQL从5.0开始,全面支持视图、存储过程、函数和触发器功能MySQL5.1支持分区功能MySQL5.1支持行复制MySQL6.0将实现双向复制逐步增加
4、对非结构化数据XML的支持特性MySQL6.0将支持最新的FALCON存储引擎著名的数据库大师JimStarkey现在在MySQL开发Falcon。Falcon面向的客户是企业级用户。Oracle跟MySQL签定了合作协议,用户可以继续选择InnoDB存储引擎越来越多的企业级特性越来越多的企业级特性2021/9/266软件下载登陆官方网站http:/,下载最新的released版本。创建MySQL用户和用户组#groupaddmysql#useradd-r-gmysqlmysql解压MySQL#cd/usr/local#tarzxvf/opt/mysql-5.5.8-linux2.6-i686
5、.tar.gz#ln-s/usr/local/mysql-5.5.8-linux2.6-i686mysql基于基于Linix/UnixLinix/Unix的安装的安装2021/9/267赋予MySQL用户权限#cdmysql#chown-Rmysql.#chgrp-Rmysql.安装MySQL#scripts/mysql_install_db-user=mysql#chown-Rmysqldata#cp/usr/local/mysql/support-files/my-f/etc/fMySQL的启动与停止#bin/mysqld_safe-user=mysqlcp/usr/local/mys
6、ql/support-files/mysql.server/etc/init.d/mysql.server#/etc/init.d/mysql.serverstart/stop/restart基于基于Linix/UnixLinix/Unix的安装的安装2021/9/268更改数据库root用户的密码#./bin/mysqladmin-urootpasswordtesttest打开MySQL远程控制#./bin/mysql-uroot-p#grantallprivilegeson*.*toroot192.168.2.81identifiedbytesttestwithgrantoption;#f
7、lushprivileges;#updatedbsethost=192.168.2.81whereuser=root;#flushprivileges;基于基于Linix/UnixLinix/Unix的安装的安装2021/9/269基于基于WindowsWindows的安装的安装2021/9/2610数据库配置数据库配置2021/9/2611WindowsWindows下数据库的停用和启用下数据库的停用和启用2021/9/2612MySQLMySQL工具工具MySQL-Front一款小巧的管理MySQL的应用程序。主要特性包括多文档界面,语法突出,拖拽方式的数据库和表格,可编辑/可增加/删除的
8、域,可编辑/可插入/删除的记录,可显示的成员,可执行的SQL脚本,提供与外程序接口,保存数据到CSV文件等。MySQL AdministratorMySQLAdministrator是用来执行数据库管理操作的程序和用来监视和管理MySQL实例内的数据库、用户的权限和数据的实用程序,比如说配置、控制、开启和关闭mysql服务。MySQL Query BrowserMySQLQueryBrowser是一个可视化的toolset,用于创建、执行以及最优化的MySQL数据库查询。它就像是镶嵌在Web浏览器中的一个集成的拖曳工具套件,为使用者提供了一个更简便、更有生产力的途径来存取、分析存储在MySQL
9、数据库服务器中的信息。2021/9/2613MySQLMySQL简介简介MySQLMySQL常用常用操作操作MySQLMySQL管理维护管理维护2021/9/2614mysqlmysql体系结构体系结构2021/9/2615设有张马虎,李小心两人,都是地铁口的自行车管理员.每天都有很多人来存取自行车,张马虎的管理方式是:来存自己存,不记录存的是什么车,取时交5毛,也不检查取的是否是自己的车.李小心呢,则在存取自己车时,记录存车人的特征与自行车的特征,当人来取车,还要小心核一下,人与车的特征是否对应思考:张马虎和李小心谁对业务的处理速度更高?二者谁对自行车管理更安全?数据库对同样的数据,有着不同
10、的存储方式和管理方式在mysql中,称为存储引擎存储引擎存储引擎的概念的概念2021/9/2616多种可选择的存储引擎MyISAMInnoDBMERGEMEMORY(HEAP)BDB(BerkeleyDB)EXAMPLEFEDERATEDARCHIVECSVBLACKHOLEFALCON可插拔式的存储引擎可插拔式的存储引擎2021/9/2617MyISAM是MySQL的默认存储引擎文章,新闻等安全性要求不高的,选myisam订单,资金,账单,火车票等对安全性要求高的,可以选用innodb对于临时中转表,可以用memory型,速度最快存储引擎存储引擎的选择的选择出于速度和安全性的要求,选取合理的
11、存储引擎2021/9/2618查看查看存储引擎存储引擎p查看数据库可以支持的存储引擎 mysql show engines;2021/9/2619p查看表的结构等信息的若干命令1.Describetablename;/查看数据表的结构2.showtablestatusliketablename/显示表的当前状态值3.showtablestatusliketablenameG/显示表的当前状态值2021/9/2620创建数据库表时设置存储存储引擎的基本语法是:CreatetabletableName(columnName(列名1)type(数据类型)attri(属性设置),columnName(
12、列名2)type(数据类型)attri(属性设置),.)engine=engineName例如,假设要创建一个名为user的表,此表包括id,用户名username和性别sex三个字段,并且要设置表类型为merge。则可用如下的方式创建此数据表,createtableuser(idintnotnullauto_increment,usernamechar(20)notnull,sexchar(2),primarykey(id)engine=merge2021/9/2621p修改存储引擎可以用命令AltertabletableNameengine=engineName假如,若需要将表user的存
13、储引擎修改为InnoDB类型,则可使用命令altertableuserengine=InnoDB。如下图所示:查看修改后的表类型,可见表类型已经变为InnoDB类型。2021/9/2622一句话说字符集字符集就是一个字符二进制字节的映射表考虑多语言与移植的问题,选取合理的字符集字符集是一套符号和编码的规则,不论是在oracle数据库还是在mysql数据库,都存在字符集的选择问题,而且如果在数据库创建阶段没有正确选择字符集,那么可能在后期需要更换字符集,而字符集的更换是代价比较高的操作,也存在一定的风险,所以,我们推荐在应用开始阶段,就按照需求正确的选择合适的字符集,避免后期不必要的调整。字符集
14、字符集(charset)2021/9/26231:节省空间建议在能够完全满足应用的前提下,尽量使用小的字符集。因为更小的字符集意味着能够节省空间、减少网络传输字节数,同时由于存储空间的较小间接的提高了系统的性能。有很多字符集可以保存汉字,比如utf8、gb2312、gbk、gb18030等等,但是常用的是gb2312和gbk。2:兼容性因为gb2312字库比gbk字库小,有些偏僻字(例如:洺)不能保存,因此在选择字符集的时候一定要权衡这些偏僻字在应用出现的几率以及造成的影响。3:发展空间在互联网上,国际化的趋势不可避免,且存储空间已经越来海量化,因此推荐用utf8,如果开发内网系统,如内部OA
15、等,可以考虑GBK。字符集的选择字符集的选择2021/9/2624p查看MySQL数据库服务器和数据库MySQL字符集。mysqlshowvariableslikecharacter_set_%;+-+-+-|Variable_name|Value|.+-+-+-|character_set_client|utf8|.-客户端字符集|character_set_connection|utf8|.|character_set_database|utf8|.-数据库字符集|character_set_filesystem|binary|.|character_set_results|utf8|.|
16、character_set_server|utf8|.-服务器字符集|character_set_system|utf8|.|character_sets_dir|D:MySQLServer5.0sharecharsets|.+-+-+-2021/9/2625p查看MySQL数据表(table)的MySQL字符集mysqlshowtablestatusfrom库名库名like%表名表名%;+-+-+-+-+-+-+-|Name|Engine|Version|Row_format|Rows|Collation|.+-+-+-+-+-+-+-|countries|InnoDB|10|Compact
17、|11|utf8_general_ci|.+-+-+-+-+-+-+-p查看MySQL数据列(column)的MySQL字符集。mysqlshowfullcolumnsfrom表名表名;+-+-+-+-|Field|Type|Collation|.+-+-+-+-|countries_id|int(11)|NULL|.|countries_name|varchar(64)|utf8_general_ci|.|countries_iso_code_2|char(2)|utf8_general_ci|.|countries_iso_code_3|char(3)|utf8_general_ci|.|
18、address_format_id|int(11)|NULL|.+-+-+-+-2021/9/2626p修改字符集:MySQL:修改默认字符集(MySQL5.X)1.修改MySQL数据库默认字符集(mysqldatabasedefaultcharacterset)alterdatabasetestdbdefaultcharacterset=gb2312;2.修改MySQL数据表默认字符集(mysqltabledefaultcharacterset)altertableip_to_countrydefaultcharacterset=gb2312;3.修改列级修改示例:mysqlAlterTAB
19、LEproductsCHANGEproducts_modelproducts_modelVARCHAR(20)CHARACTERSETutf8COLLATEutf8_general_ciNULLDEFAULTNULL;更改了后永久生效4.更改连接字符集a.临时更改:mysqlSETNAMESutf8;b.永久更改:shellvi/etc/f在client中增加:default-character-set=utf8注意:修改MySQL的默认字符集,不管是在数据库级别,还是数据表级别,对已经存储的字符数据无任何改变。只是新增的表或列,开始使用新的字符集。2021/9/26275.修改服务器级字符集
20、a.临时更改:mysqlSETGLOBALcharacter_set_server=utf8;b.永久更改:shellvi/etc/fmysqlddefault-character-set=utf8配置/etc/f文件:(linux下local为UTF-8);分别在如下几项中添加字符集:clientdefault-character-set=utf8mysqld_safedefault-character-set=utf8mysqlddefault-character-set=utf8#default-table-type=innodbmysqldefault-character-set=gb
21、2312再重启mysql让配置生效:servicemysqlrestart再执行:showvariableslike%character%;2021/9/2628p转换 MySQL 数据表字符集(mysql table character set)1.MySQL中有一个数据表ip_to_country,以前该表字符列数据都是以utf8编码格式存放的,现在想转换为gb2312编码格式存放。需要使用MySQL转换字符集命令:converttocharactersetaltertableip_to_countryconverttocharactersetgb2312;提示:convertto也会把数
22、据表ip_to_country的默认字符集从utf8更改为gb2312。2.转换MySQL数据表中某个列的字符集(mysqlcolumncharacterset)altertableip_to_countrymodifycountry_namevarchar(50)charactersetgb2312;这个语句把单独一个列country_name的字符集转换为gb2312。这在用法在实际中比较少见,因为大多数情况下,都是改变整个表的字符集。2021/9/2629旧数据库GBK字符集旧网站系统GBK编码新网站utf8编码思考:数据库不准动,新站又是utf8,如何保持新网站与旧数据的兼容?字符集专
23、题字符集专题-新旧网站并存案例新旧网站并存案例2021/9/2630q数字类型q字符串类型q日期时间类型q选择正确的数据类型数据类型数据类型2021/9/2631数字类型数字类型2021/9/2632日期和时间类型日期和时间类型2021/9/2633字符串类型字符串类型2021/9/2634通常我们应该选择尽可能小的数据类型,这样可以节省空间,并且可以更快地进行访问和更新。但应该注意需要保存的数据的范围,如果选择的类型太小,数据可能会在插入时被截断或产生错误,所以一定要选择一个覆盖所有可能性的数据类型为了优化存储,在任何情况下均应使用最精确的类型。例如,如果列的值的范围为从1到99999,若使
24、用整数,则MEDIUMINTUNSIGNED是好的类型。在所有可以表示该列值的类型中,该类型使用的存储最少。应当使用精度为65位十进制数(基于10)对DECIMAL列进行所有基本计算(+、-、*、/)使用双精度操作对DECIMAL值进行计算。如果准确度不是太重要或如果速度为最高优先级,DOUBLE类型即足够了。为了达到高精度,可以转换到保存在BIGINT中的定点类型。这样可以用64位整数进行所有计算,根据需要将结果转换回浮点值数据类型的选择数据类型的选择2021/9/2635显示数据库的相关内容显示数据库的相关内容显示数据库mysqlshowdatabases;显示数据库中的表mysqluse
25、mysql;mysqlshowtables;显示数据库中表的结构mysqldescribe表名;2021/9/2636建立及删除数据库、表建立及删除数据库、表建立数据库与表use库名;mysqlcreatetablename(idint(3)auto_incrementnotnullprimarykey,xmchar(8),xbchar(2),csnydate);删库及删表dropdatabase库名;droptable表名;2021/9/2637对数据库表中内容的操作对数据库表中内容的操作增加记录mysqlinsertintonamevalues(,张三,男,1971-10-01);mysq
26、linsertintonamevalues(,白云,女,1972-05-20);修改记录mysqlupdatenamesetcsny=1971-01-10wherexm=张三;删除记录mysqldeletefromnamewherexm=张三;查询记录 mysqlselect*fromnamewherexm=张三;2021/9/2638MySQLMySQL简介简介MySQLMySQL常用常用操作操作MySQLMySQL管理维护管理维护2021/9/2639备份命令备份命令备份单独库下面的所有表的方法mysqldump-uuname-ppasswddbname/dir/filename备份某一库
27、下面的几个表的方法mysqldump-uuname-ppasswddbnametable1table2.tableN/dir/filename备份多个库的方法mysqldump-uname-ppasswd-Bdb1db2/dir/filename备份所有库的方法mysqldump-uname-ppasswd-A/dir/filename数据库备份与恢复数据库备份与恢复2021/9/2640恢复命令恢复命令1:在命令行操作mysql-uname-ppasswddatabaseNameusedbname;mysqlsource/dir/filename;数据库备份与恢复数据库备份与恢复2021/9
28、/2641表的故障检测和修正的一般过程如下:表的故障检测和修正的一般过程如下:检查出错的表。如果该表检查通过,则完成任务,否则必须修复出错的数据库表。在开始修复之前对表文件进行拷贝,以保证数据的安全。开始修复数据库表。如果修复失败,从数据库的备份或更新日志中恢复数据。在使用在使用myisamchkmyisamchk或或isamchkisamchk检查或修复表之前,应该首先注意:检查或修复表之前,应该首先注意:建立数据库备份和使用更新日志,以防修复失败,丢失数据。维护不是简单的运行myisamchk维护程序就可以的。因为大多数情况下,管理员进行表的检查和修复时,服务器都要持续运行,因此如果方法不
29、当,很可能维护程序会与服务器产生冲突。通过表外部锁定或内部锁定(使用的锁定协议也不同,分别为读锁定和写锁定),避免维护过程中与服务器发生的交互作用如果你在Unix平台上对表进行维护时,应该首先注册到专用的帐户mysql,以避免对表读写访问产生所有权的问题,以及破坏数据库目录的所有权限。数据库维护修复数据库维护修复2021/9/2642数据库维护修复数据库维护修复维护修复工具维护修复工具在执行崩溃恢复时,理解在一个数据库中的每一个表tbl_name对应的在数据库目录中的3个文件是很重要的:文件用途“tbl_name.frm”表定义(表格)文件“tbl_name.MYD”数据文件“tbl_name
30、.MYI”索引文件这3个文件的每一个文件类型可能遭受不同形式的损坏,但是问题最常发生在数据文件和索引文件。myisamchk通过一行一行地创建一个“.MYD”(数据)文件的副本来工作,它通过由删除老的“.MYD文件并且重命名新文件到原来的文件名结束修复阶段。如果你使用-quick,myisamchk不创建一个临时“.MYD”文件,只是假定“.MYD”文件是正确的并且仅创建一个新的索引文件,不接触“.MYD”文件,这是安全的,因为myisamchk自动检测“.MYD”文件是否损坏并且在这种情况下,放弃修复。你也可以给myisamchk两个-quick选项。在这种情况下,myisamchk不会在一
31、些错误上(象重复键)放弃,相反试图通过修改“.MYD”文件解决它们。通常,只有在你在太少的空闲磁盘空间上实施一个正常修复,使用两个-quick选项才有用。在这种情况下,你应该至少在运行myisamchk前做一个备份。2021/9/2643数据库维护修复数据库维护修复怎样检查表的错误怎样检查表的错误 为了检查一张表,使用下列命令:myisamchktbl_name这能找出所有错误的99.99%。它不能找出的是仅仅涉及数据文件的损坏(这很不常见)。如果你想要检查一张表,你通常应该没有选项地运行myisamchk或用-s或-silent选项的任何一个。myisamchk-etbl_name它做一个完
32、全彻底的数据检查(-e意思是“扩展检查”)。它对每一行做每个键的读检查以证实他们确实指向正确的行。这在一个有很多键的大表上可能花很长时间。myisamchk通常将在它发现第一个错误以后停止。如果你想要获得更多的信息,你能增加-verbose(-v)选项。这使得myisamchk继续一直到最多20个错误。在一般使用中,一个简单的myisamchk(没有除表名以外的参数)就足够了。myisamchk-e-itbl_name象前面的命令一样,但是-i选项告诉myisamchk还打印出一些统计信息。2021/9/2644数据库维护修复数据库维护修复怎样修复表怎样修复表 一张损坏的表的症状通常是查询意外
33、中断并且你能看到例如这些错误:“tbl_name.frm”被锁定不能改变。不能找到文件“tbl_name.MYI”(Errcode:#)。从表处理器的得到错误#(此时,错误135是一个例外)。意外的文件结束。记录文件被毁坏。在这些情况下,你必须修复表。myisamchk通常能检测并且修复出错的大部分东西。修复过程包含最多4个阶段,在下面描述。在你开始前,你应该cd到数据库目录和检查表文件的权限,确保他们可被运行mysqld的用户读取。如果它拒绝你修改文件,他们也必须是可被你写入的。2021/9/2645数据库维护修复数据库维护修复阶段1:检查你的表 运行myisamchk*.MYI或(myis
34、amchk-e*.MYI,如果你有更多的时间)。使用-s(沉默)选项禁止不必要的信息,你必须只修复那些myisamchk报告有一个错误的表。对这样的表,继续到阶段2,如果在检查时,你得到奇怪的错误(例如outofmemory错误),或如果myisamchk崩溃,到阶段3阶段2:简单安全的修复 首先,试试myisamchk-r-qtbl_name(-r-q意味着“快速恢复模式”)。这将试图不接触数据文件来修复索引文件。如果数据文件包含它应有的一切和在数据文件指向正确地点的删除连接,这应该管用并且表可被修复。开始修理下一张表。否则,使用下列过程:在继续前做数据文件的一个备份。使用myisamchk
35、-rtbl_name(-r意味着“恢复模式”)。这将从数据文件中删除不正确的记录和已被删除的记录并重建索引文件。如果前面的步骤失败,使用myisamchk-safe-recovertbl_name。安全恢复模式使用一个老的恢复方法,处理常规恢复模式不行的少数情况(但是更慢)。如果在修复时,你得到奇怪的错误(例如outofmemory错误),或如果myisamchk崩溃,到阶段3。2021/9/2646数据库维护修复数据库维护修复阶段3:困难的修理 如果在索引文件的第一个16K块被破坏,或包含不正确的信息,或如果索引文件丢失,你只应该到这个阶段。在这种情况下,创建一个新的索引文件是必要的。按如下
36、这样做:把数据文件移更安全的地方。使用表描述文件创建新的(空)数据和索引文件:shellmysqldb_namemysqlDELETEFROMtbl_name;mysqlquit将老的数据文件拷贝到新创建的数据文件之中。(不要只是将老文件移回新文件之中;你要保留一个副本以防某些东西出错。)回到阶段2。现在myisamchk-r-q应该工作了。(这不应该是一个无限循环)。2021/9/2647数据库维护修复数据库维护修复阶段4:非常困难的修复 只有描述文件也破坏了,你才应该到达这个阶段。这应该从未发生过,因为在表被创建以后,描述文件就不再改变了。从一个备份恢复描述文件并且回到阶段3。你也可以恢复
37、索引文件并且回到阶段2。对后者,你应该用myisamchk-r启动。如果你没有一个备份但是确切地知道表是怎样被创建的,在另一个数据库中创建表的一个拷贝。删除新的数据文件,然后从其他数据库将描述和索引文件移到破坏的数据库中。这给了你新的描述和索引文件,但是让数据文件独自留下来了。回到阶段2并且尝试重建索引文件。2021/9/2648用户权限管理用户权限管理用户权限管理用户权限管理1.设置用户与并授权GRANT命令使用说明,先来看一个例子,创建一个只允许从本地登录的超级用户ipi,并允许将权限赋予别的用户,i314GRANTALLPRIVILEGESON*.*TOipilocalhostIDENT
38、IFIEDBYi314WITHGRANTOPTION;GRANT命令说明:ALLPRIVILEGES是表示所有权限,你也可以使用select、update等权限提到的权限。ON用来指定权限针对哪些库和表。*.*中前面的*号用来指定数据库名,后面的*号用来指定表名。TO表示将权限赋予某个用户。ipilocalhost表示ipi用户,后面接限制的主机,可以是IP、IP段、域名以及%,%表示任何地方。注意:这里%有的版本不包括本地,以前碰到过给某个用户设置了%允许任何地方登录,但是在本地登录不了,这个和版本有关系,遇到这个问题再加一个localhost的用户就可以了。IDENTIFIEDBY指定用户
39、的登录密码。WITHGRANTOPTION这个选项表示该用户可以将自己拥有的权限授权给别人。注意:经常有人在创建操作用户的时候不指定WITHGRANTOPTION选项导致后来该用户不能使用GRANT命令创建用户或者给其他用户授权。备注:可以使用GRANT重复给用户添加权限,权限叠加,比如你先给用户添加了一个select权限,然后又给用户添加了一个insert权限,那么该用户就同时拥有了select和insert权限。2021/9/2649用户权限管理用户权限管理2.创建一个超级用户创建一个只允许从本地登录的超级用户test,并允许将权限赋予别的用户,密码为i314GRANTALLPRIVILE
40、GESON*.*TOtestlocalhostIDENTIFIEDBYi314WITHGRANTOPTION;3.创建一个网站用户(程序用户)创建一个一般的程序用户,这个用户可能只需要SELECT,INSERT,UPDATE,DELETE,CREATETEMPORARYTABLES等权限如果有存储过程还需要加上EXECUTE权限,一般是指定内网网段192.168.100网段。GRANTUSAGE,SELECT,INSERT,UPDATE,DELETE,SHOWVIEW,CREATETEMPORARYTABLES,EXECUTEONtest.*TOtest192.168.100.%IDENTIF
41、IEDBYi314;4.创建一个普通用户(仅有查询权限)GRANTUSAGE,SELECTONtest.*TOpublic192.168.100.%IDENTIFIEDBYi314;2021/9/26505.刷新权限使用这个命令使权限生效,尤其是你对那些权限表user、db、host等做了update或者delete更新的时候。以前遇到过使用grant后权限没有更新的情况,大家可以养成习惯,只要对权限做了更改就使用FLUSHPRIVILEGES命令来刷新权限。FLUSHPRIVILEGES;6.查看权限使用如下命令可以方便的查看到某个用户的权限:SHOWGRANTSFORwebuser192.168.100.%;7.回收权限将前面创建的webuser用户的DELETE权限回收,使用如下命令REVOKEDELETEONtest.*FROMwebuser192.168.100.%;8.删除用户注意删除用户不要使用DELETE直接删除,因为使用DELETE删除后用户的权限并未删除,新建同名用户后又会继承以前的权限。正确的做法是使用DROPUSER命令删除用户,比如要删除webuser192.168.100.%用户采用如下命令:DROPUSERwebuser192.168.100.%;2021/9/2651谢谢2021/9/2652