MySQL数据库基础与实例教程第2章.ppt

上传人:wuy****n92 文档编号:70799980 上传时间:2023-01-28 格式:PPT 页数:87 大小:1.89MB
返回 下载 相关 举报
MySQL数据库基础与实例教程第2章.ppt_第1页
第1页 / 共87页
MySQL数据库基础与实例教程第2章.ppt_第2页
第2页 / 共87页
点击查看更多>>
资源描述

《MySQL数据库基础与实例教程第2章.ppt》由会员分享,可在线阅读,更多相关《MySQL数据库基础与实例教程第2章.ppt(87页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、孔祥盛孔祥盛MySQLMySQL数据库基础与实例教程数据库基础与实例教程 之之MySQLMySQL基础知识基础知识1 12 23 3 通过本章的学习,通过本章的学习,读者可以掌握一些常读者可以掌握一些常用的用的MySQL命令,从命令,从而对而对MySQL数据库进数据库进行一些简单的管理。行一些简单的管理。本章知识点较为繁本章知识点较为繁杂,希望保持一份儿杂,希望保持一份儿耐心。耐心。4 4字符集以及字符序设置字符集以及字符序设置MySQL概述概述MySQL数据库管理数据库管理MySQL表管理表管理5 5系统变量系统变量内容一览内容一览 1 12 23 3MySQL由瑞典由瑞典MySQL AB公

2、司开发。公司开发。2008年年1月月MySQL被美国被美国的的SUN公司收购。公司收购。2009年年4月月SUN公司又被公司又被美国的甲骨文(美国的甲骨文(Oracle)公司收购。公司收购。MySQL服务的安装服务的安装MySQL的特点的特点MySQL服务的配置服务的配置45启动与停止启动与停止MySQL服务服务MySQL配置文件配置文件2.1 MySQL2.1 MySQL概述概述 6 67 7MySQLMySQL由瑞典由瑞典MySQL ABMySQL AB公公司开发。司开发。20082008年年1 1月月MySQLMySQL被美国的被美国的SUNSUN公司收购。公司收购。20092009年年

3、4 4月月SUNSUN公司又被美公司又被美国的甲骨文(国的甲骨文(OracleOracle)公)公司收购。司收购。连接连接MySQLMySQL服务器关系数据库服务器关系数据库MySQLMySQL客户机客户机2.1 MySQL2.1 MySQL概述概述 MySQLMySQL是一个单进程多线程、支持多用是一个单进程多线程、支持多用户、基于客户机户、基于客户机/服务器(服务器(Client/ServerClient/Server简简称称C/SC/S)的关系数据库管理系统)的关系数据库管理系统 。性能高效性能高效 跨平台支持跨平台支持 简单易用简单易用 开源开源 支持多用户支持多用户2.1.1 MyS

4、QL2.1.1 MySQL特点特点MySQL的使用流程的使用流程2.1.1 MySQL2.1.1 MySQL特点特点MySQL其他概念(请参看本书内容):其他概念(请参看本书内容):MySQL服务服务 MySQL服务实例服务实例 MySQL服务器服务器 端口号端口号2.1.1 MySQL2.1.1 MySQL特点特点MySQLMySQL服务的安装(请参看本书内容)。服务的安装(请参看本书内容)。建议自学,并上机操作。建议自学,并上机操作。注意:本书使用的注意:本书使用的MySQLMySQL为为5.65.6版本。可以到版本。可以到本书指定的网址下载本书指定的网址下载MySQLMySQL图形化安装

5、包。图形化安装包。2.1.2 MySQL2.1.2 MySQL服务的安装服务的安装MySQLMySQL服务的配置(请参看本书内容)。服务的配置(请参看本书内容)。建议自学,并上机操作。建议自学,并上机操作。配置过程中的其他知识点:配置过程中的其他知识点:OLAP OLAP与与OLTPOLTP Enable Strict Mode Enable Strict Mode选项选项 字符集字符集/字符序字符序 MySQL MySQL超级管理员超级管理员rootroot账户账户 my.ini my.ini配置文件中配置文件中 2.1.3 MySQL2.1.3 MySQL服务的配置服务的配置MySQL服务

6、的启动与停止(请参看本书内容)服务的启动与停止(请参看本书内容)。建议自学,并上机操作。建议自学,并上机操作。2.1.4 2.1.4 启动与停止启动与停止MySQLMySQL服务服务my.ini配置文件包含了多种参数选项组,每个配置文件包含了多种参数选项组,每个参数选项组通过参数选项组通过“”指定,每个参数选项组可指定,每个参数选项组可以配置多个参数信息。通常情况下,每个参以配置多个参数信息。通常情况下,每个参数遵循数遵循“参数名参数名=参数值参数值”这种配置格式,参数这种配置格式,参数名一般是小写字母,参数名大小写敏感。常名一般是小写字母,参数名大小写敏感。常用的参数选项组有用的参数选项组有

7、“client”、“mysql”以及以及“mysqld”参数选项组。参数选项组。2.1.5 MySQL2.1.5 MySQL配置文件配置文件client参数选项组参数选项组:配置了配置了MySQL自带的自带的MySQL5.6 命令行命令行窗口可以读取的参数信息窗口可以读取的参数信息。常用的参数是常用的参数是port(默认值是(默认值是3306)。修改该修改该port值会导致新打开的值会导致新打开的MySQL5.6 命令行窗口无法连接命令行窗口无法连接MySQL服务器服务器。2.1.5 MySQL2.1.5 MySQL配置文件配置文件mysql参数选项组参数选项组:配置了配置了MySQL客户机程

8、序客户机程序mysql.exe可以可以读取的参数信息读取的参数信息。常用的参数有常用的参数有“prompt”、“default-character-set=gbk”。修改修改“mysql”参数选项组中的参数值,参数选项组中的参数值,将直接影响新打开的将直接影响新打开的MySQL客户机客户机。2.1.5 MySQL2.1.5 MySQL配置文件配置文件mysqld参数选项组参数选项组:配置了配置了MySQL服务程序服务程序mysqld.exe可以可以读取的参数信息,读取的参数信息,mysqld.exe启动时,将启动时,将mysqld参数选项组的参数信息加载到服务器参数选项组的参数信息加载到服务器

9、内存,继而生成内存,继而生成MySQL服务实例。服务实例。2.1.5 MySQL2.1.5 MySQL配置文件配置文件mysqld参数选项组参数选项组:常用的参数有常用的参数有“port”、“basedir”、“datadir”、“character-set-server”、“sql_mode”、“max_connections”以及以及“default_storage_engine”等。等。2.1.5 MySQL2.1.5 MySQL配置文件配置文件mysqld参数选项组参数选项组:修改修改“mysqld”参数选项组的参数值,只参数选项组的参数值,只有重新启动有重新启动MySQL服务,将修改

10、后的配置文服务,将修改后的配置文件参数信息加载到服务器内存后,新配置文件参数信息加载到服务器内存后,新配置文件才会在新的件才会在新的MySQL服务实例中生效。服务实例中生效。如果如果“mysqld”参数选项组的参数信息出参数选项组的参数信息出现错误,将会导致现错误,将会导致MySQL服务无法启动服务无法启动。2.1.5 MySQL2.1.5 MySQL配置文件配置文件MySQL客户机(客户机(本书使用前两个):本书使用前两个):MySQL5.6命令行窗口命令行窗口 CMD命令提示符窗口命令提示符窗口WEB浏览器(例如浏览器(例如phpMyAdmin)第三方客户机程序(例如第三方客户机程序(例如

11、MySQL-Front、MySQLManagerforMySQL等)等)2.1.6 MySQL2.1.6 MySQL客户机客户机phpMyAdmin2.1.6 MySQL2.1.6 MySQL客户机客户机MySQL-FrontMySQL-Front2.1.6 MySQL2.1.6 MySQL客户机客户机MySQLManager for MySQLMySQLManager for MySQL2.1.6 MySQL2.1.6 MySQL客户机客户机2.1.6 MySQL2.1.6 MySQL客户机客户机HeidiSQLHeidiSQLMySQL客户机客户机连接连接MySQL服务器服务器须提供:须提

12、供:合法的登录主机:解决合法的登录主机:解决“from”的问题。的问题。合法的账户名以及密码:解决合法的账户名以及密码:解决“who”的问题。的问题。MySQL服务器主机名(或服务器主机名(或IP地址):解决地址):解决“to”的问题。的问题。端口号:解决端口号:解决“多卡多待多卡多待”的问题。的问题。MySQL客户机与客户机与MySQL服务器是同一台主机时,服务器是同一台主机时,主机名可以使用主机名可以使用localhost(或者(或者127.0.0.1)。)。2.1.7 2.1.7 连接连接MySQLMySQL服务器服务器当当MySQL客户机与客户机与MySQL服务器是同一台主机服务器是同

13、一台主机时,打开命令提示符窗口,输入时,打开命令提示符窗口,输入mysql-h 127.0.0.1-P 3306-u root proot或者或者mysql-h localhost-P 3306-u root proot然后回车(注意然后回车(注意-p后面紧跟密码后面紧跟密码root),即可实),即可实现本地现本地MySQL客户机与本地客户机与本地MySQL服务器之间服务器之间的成功连接。的成功连接。2.1.7 2.1.7 连接连接MySQLMySQL服务器服务器2.1.7 2.1.7 连接连接MySQLMySQL服务器服务器1 12 23 3 MySQL MySQL由瑞典由瑞典MySQL M

14、ySQL ABAB公司开发,默认情况下公司开发,默认情况下MySQLMySQL使用的是使用的是latin1latin1字字符集。符集。由此可能导致由此可能导致MySQLMySQL数据库不够支持中文字符数据库不够支持中文字符串查询或者发生中文字符串查询或者发生中文字符串乱码等问题。串乱码等问题。MySQLMySQL字符集与字符序字符集与字符序字符集及字符序概念字符集及字符序概念MySQLMySQL的字符集的字符集转换过转换过程程45MySQLMySQL字符集的字符集的设设置置SQLSQL脚本文件脚本文件2.2 2.2 字符集以及字符序设置字符集以及字符序设置字符(字符(Character)是人类

15、语言最小的表义符)是人类语言最小的表义符号,例如号,例如A、B等。给定一系列字符,对每个字等。给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这符赋予一个数值,用数值来代表对应的字符,这个数值就是字符的编码(个数值就是字符的编码(CharacterEncoding)。)。给定一系列字符并赋予对应的编码后,所有这给定一系列字符并赋予对应的编码后,所有这些些“字符和编码对字符和编码对”组成的集合就是字符集组成的集合就是字符集(Character Set)。2.2.1 2.2.1 字符集及字符序概念字符集及字符序概念2.2.1 2.2.1 字符集及字符序概念字符集及字符序概念字符序字

16、符序(Collation)是指在同一字符集内字符之间是指在同一字符集内字符之间的比较规则。一个字符集包含多种字符序,每个字的比较规则。一个字符集包含多种字符序,每个字符序唯一对应一种字符集。符序唯一对应一种字符集。MySQL字符序命名规则是:以字符序对应的字字符序命名规则是:以字符序对应的字符集名称开头,以国家名居中(或以符集名称开头,以国家名居中(或以general居中)居中),以,以ci、cs或或bin结尾。结尾。ci表示大小写不敏感,表示大小写不敏感,cs表示大小写敏感,表示大小写敏感,bin表示按二进制编码值比较。表示按二进制编码值比较。2.2.1 2.2.1 字符集及字符序概念字符集

17、及字符序概念 使用使用MySQLMySQL命令命令show character set;show character set;即可查看当前即可查看当前MySQLMySQL服务实例支持的字符集、字符服务实例支持的字符集、字符集默认的字符序以及字符集占用的最大字节长度等集默认的字符序以及字符集占用的最大字节长度等信息信息 latin1 latin1支持西欧字符、希腊字符等支持西欧字符、希腊字符等 gbk gbk支持中文简体字符支持中文简体字符 big5 big5支持中文繁体字符支持中文繁体字符 utf8 utf8几乎支持世界所有国家的字符。几乎支持世界所有国家的字符。2.2.2 MySQL2.2.

18、2 MySQL字符集及字符序字符集及字符序使用使用MySQL命令命令showvariableslikecharacter%;即可查看当前即可查看当前MySQL服务实例使用的字符集。服务实例使用的字符集。2.2.2 MySQL2.2.2 MySQL字符集及字符序字符集及字符序character_set_clientcharacter_set_client:MySQLMySQL客户机字符集。客户机字符集。character_set_connection character_set_connection:数据通信链路字:数据通信链路字符集,当符集,当MySQLMySQL客户机向服务器发送请求时,请求

19、客户机向服务器发送请求时,请求数据以该字符集进行编码。数据以该字符集进行编码。character_set_database character_set_database:数据库字符集。:数据库字符集。character_set_filesystem character_set_filesystem:MySQLMySQL服务器文服务器文件系统字符集,该值是固定的件系统字符集,该值是固定的binarybinary。2.2.2 MySQL2.2.2 MySQL字符集及字符序字符集及字符序character_set_results:结果集的字符集,:结果集的字符集,MySQL服务器向服务器向MySQL

20、客户机返回执行结果时,客户机返回执行结果时,执行结果以该字符集进行编码。执行结果以该字符集进行编码。character_set_server:MySQL服务实例字符服务实例字符集。集。character_set_system:元数据:元数据(字段名、表字段名、表名、数据库名等名、数据库名等)的字符集,默认值为的字符集,默认值为utf8。2.2.2 MySQL2.2.2 MySQL字符集及字符序字符集及字符序使用使用MySQL命令命令“showcollation;”即可查看当即可查看当前前MySQL服务实例支持的字符序。服务实例支持的字符序。2.2.2 MySQL2.2.2 MySQL字符集及字

21、符序字符集及字符序2.2.3 MySQL2.2.3 MySQL字符集的转换过程字符集的转换过程方法方法1:修改:修改my.ini配置文件,可修改配置文件,可修改MySQL默认的字符集。默认的字符集。方法方法2:MySQL提供下列提供下列MySQL命令可以命令可以“临临时地时地”修改修改MySQL“当前会话的当前会话的”字符集以及字符字符集以及字符序。序。2.2.4 MySQL2.2.4 MySQL字符集的设置字符集的设置 set character_set_client=gbk;set character_set_connection=gbk;set character_set_databas

22、e=gbk;set character_set_results=gbk;set character_set_server=gbk;set collation_connection=gbk_chinese_ci;set collation_database=gbk_chinese_ci;set collation_server=gbk_chinese_ci;2.2.4 MySQL2.2.4 MySQL字符集的设置字符集的设置 方法3:使用MySQL命令“setnamesgbk;”可以“临时一次性地临时一次性地”设置character_set_client、character_set_connec

23、tion以及character_set_results的字符集为gbk 方法4:连接MySQL服务器时指定字符集 mysql-default-character-set=字符集字符集-h 服务器IP地址-u 账户名 p密码2.2.4 MySQL2.2.4 MySQL字符集的设置字符集的设置SQL基本的执行方法(两种):基本的执行方法(两种):.C:mysqlinit.sqlsourceC:mysqlinit.sql2.2.5 SQL2.2.5 SQL脚本文件脚本文件1 12 23 3数据库是存储数据库数据库是存储数据库对象的容器。对象的容器。MySQLMySQL数据数据库的管理主要包括数据库的

24、管理主要包括数据库的创建、选择当前操库的创建、选择当前操作的数据库、显示数据作的数据库、显示数据库结构以及删除数据库库结构以及删除数据库等操作等操作。查看数据库查看数据库创建数据库创建数据库显示数据库结构显示数据库结构4 45 5选择当前操作的数据库选择当前操作的数据库删除数据库删除数据库2.3 MySQL2.3 MySQL数据库管理数据库管理 create database choose;create database choose;成功成功创创建建choosechoose数据数据库库后,后,数据库根目录下数据库根目录下会自动创建数据库目录。会自动创建数据库目录。2.3.1 2.3.1 创建

25、数据库创建数据库使用使用MySQLMySQL命令命令show databases;show databases;即可查看即可查看MySQLMySQL服务实服务实例上所有的数据库例上所有的数据库 2.3.2 2.3.2 查看数据库查看数据库 使用使用MySQLMySQL命令命令show create database choose;show create database choose;可以可以查查看看choosechoose数据数据库库的相关信息(例如的相关信息(例如MySQLMySQL版版本本IDID号、默号、默认认字符集等信息)。字符集等信息)。2.3.3 2.3.3 显示数据库结构显示数

26、据库结构执行执行“use choose;”use choose;”命令后,后续的命令后,后续的MySQLMySQL命令以及命令以及SQLSQL语句将自动操作语句将自动操作choosechoose数据库中所有数据库中所有数据库对象数据库对象。2.3.4 2.3.4 选择当前操作的数据库选择当前操作的数据库删除删除studentstudent数据库,使用数据库,使用SQLSQL语句语句drop database studentdrop database student;2.3.5 2.3.5 删除数据库删除数据库1 12 23 3表是数据库中最为重要表是数据库中最为重要的数据库对象的数据库对象 设

27、置默认的存储引擎设置默认的存储引擎MyISAM和和InnoDB存储引擎存储引擎创建数据库表创建数据库表4 45 5显示表结构显示表结构表记录的管理表记录的管理2.4 MySQL2.4 MySQL表管理表管理 6 67 7表是数据库中最为重要表是数据库中最为重要的数据库对象的数据库对象 删除表删除表InnoDB表空间表空间2.4 MySQL2.4 MySQL表管理表管理 MySQL MySQL提供了插件式(提供了插件式(PluggablePluggable)的存)的存储引擎,存储引擎是基于表的,同一个数据储引擎,存储引擎是基于表的,同一个数据库,不同的表,存储引擎可以不同。甚至同库,不同的表,存

28、储引擎可以不同。甚至同一个数据库表,在不同的场合可以应用不同一个数据库表,在不同的场合可以应用不同的存储引擎。的存储引擎。2.4.1 MyISAM2.4.1 MyISAM和和InnoDBInnoDB存储引擎存储引擎使用使用MySQL命令命令“showengines;”,即,即可查看可查看MySQL服务实例支持的存储引擎。服务实例支持的存储引擎。2.4.1 MyISAM2.4.1 MyISAM和和InnoDBInnoDB存储引擎存储引擎1InnoDB存储引擎的特点存储引擎的特点支持外键(支持外键(ForeignKey)支持事务(支持事务(Transaction):如果某张表主要):如果某张表主要

29、提供提供OLTP支持,需要执行大量的增、删、改操作支持,需要执行大量的增、删、改操作(insert、delete、update语句),出于事务安语句),出于事务安全方面的考虑,全方面的考虑,InnoDB存储引擎是更好的选择。存储引擎是更好的选择。最新版本的最新版本的MySQL已经开始支持全文检索。已经开始支持全文检索。2.4.1 MyISAM2.4.1 MyISAM和和InnoDBInnoDB存储引擎存储引擎2MyISAM存储引擎的特点存储引擎的特点MyISAM具有检查和修复表的大多数工具。具有检查和修复表的大多数工具。MyISAM表可以被压缩表可以被压缩MyISAM表最早支持全文索引表最早支

30、持全文索引但但MyISAM表不支持事务表不支持事务但但MyISAM表不支持外键(表不支持外键(ForeignKey)。)。如如果果需需要要执执行行大大量量的的select语语句句,出出于于性性能能方方面面的考虑,的考虑,MyISAM存储引擎是更好的选择。存储引擎是更好的选择。2.4.1 MyISAM2.4.1 MyISAM和和InnoDBInnoDB存储引擎存储引擎MySQL5.6默认的默认的存储引擎是默认的默认的存储引擎是InnoDB。使用使用MySQL命令命令setdefault_storage_engine=MyISAM;可以可以“临时地临时地”将将MySQL“当前会话的当前会话的”存储

31、引存储引擎设置为擎设置为MyISAM,使用,使用MySQL命令命令“showengines;”可以查看当前可以查看当前MySQL服务实例默认的服务实例默认的存储引擎。存储引擎。2.4.2 2.4.2 设置默认的存储引擎设置默认的存储引擎使用使用SQL语句语句“createtable表名表名”即可创建即可创建一个数据库表。例如:一个数据库表。例如:usechoose;setdefault_storage_engine=InnoDB;createtablemy_table(todaydatetime,namechar(20);2.4.3 2.4.3 创建数据库表创建数据库表成功创建成功创建Inno

32、DB存储引擎的存储引擎的my_table表后,表后,MySQL服务实例会在数据库目录服务实例会在数据库目录choose中自动中自动创建一个名字为表名、后缀名为创建一个名字为表名、后缀名为frm的文件。的文件。my_table.frm。2.4.3 2.4.3 创建数据库表创建数据库表将将my_table表的存储引擎修改为表的存储引擎修改为MyISAM。usechoose;altertablemy_tableengine=MyISAM;2.4.3 2.4.3 创建数据库表创建数据库表使用使用MySQL命令命令“destable_name;”即可即可查看表名为查看表名为table_name的表结的表

33、结构构。2.4.4 2.4.4 显示表结构显示表结构使用使用MySQL命令命令“showcreatetabletable_name;”,查看名为,查看名为table_name表的详细信表的详细信息。息。2.4.4 2.4.4 显示表结构显示表结构usechoose;insertintomy_tablevalues(now(),a);insertintomy_tablevalues(now(),a);insertintomy_tablevalues(now(),NULL);insertintomy_tablevalues(now(),);select*frommy_table;2.4.5 2.4

34、.5 表记录的管理表记录的管理任务布置任务布置1:完成本书场景描述:完成本书场景描述1:MyISAM表记表记录的管理的任务要求。录的管理的任务要求。任务布置任务布置2:完成本书场景描述:完成本书场景描述2:InnoDB表记录表记录的管理的任务要求。的管理的任务要求。2.4.5 2.4.5 表记录的管理表记录的管理1.共享表空间:共享表空间:MySQL服务实例承载的所有数服务实例承载的所有数据库的所有据库的所有InnoDB表的数据信息、索引信息、各表的数据信息、索引信息、各种元数据信息以及事务的回滚(种元数据信息以及事务的回滚(UNDO)信息,)信息,全部存放在共享表空间文件中。全部存放在共享表

35、空间文件中。默认情况下该文件位于数据库根目录下,文件默认情况下该文件位于数据库根目录下,文件名是名是ibdata1,且文件的初始大小为,且文件的初始大小为10M。可以使。可以使用用MySQL命令命令“showvariableslikeinnodb_data_file_path;”查看该文件的的属性。查看该文件的的属性。2.4.6 InnoDB2.4.6 InnoDB表空间表空间2.4.6 InnoDB2.4.6 InnoDB表空间表空间2.独享表空间:独享表空间:如果将全局系统变量如果将全局系统变量innodb_file_per_table的值设置为的值设置为ON(innodb_file_pe

36、r_table的默认值为的默认值为OFF),那),那么之后再创建么之后再创建InnoDB存储引擎的新表,这些表的存储引擎的新表,这些表的数据信息、索引信息都将保存到独享表空间文件。数据信息、索引信息都将保存到独享表空间文件。2.4.6 InnoDB2.4.6 InnoDB表空间表空间独享表空独享表空间的设置间的设置2.4.6 InnoDB2.4.6 InnoDB表空间表空间usechoose;altertablemy_tableengine=InnoDB;createtablesecond_table(todaydatetime,namechar(20);2.4.6 InnoDB2.4.6 I

37、nnoDB表空间表空间2.4.6 InnoDB2.4.6 InnoDB表空间表空间任务布置任务布置3:完成本书场景描述:完成本书场景描述3的任务要求。的任务要求。2.4.6 InnoDB2.4.6 InnoDB表空间表空间使用使用SQL语句语句droptabletable_name;即可删除名为即可删除名为table_name的表。的表。删除表后,删除表后,MySQL服务实例会自动删除该表结服务实例会自动删除该表结构定义文件(例如构定义文件(例如second_table.frm文件),以文件),以及数据、索引信息。该命令慎用!及数据、索引信息。该命令慎用!2.4.7 2.4.7 删除表删除表1

38、 12 23 3MySQL数据库中,变数据库中,变量分为系统变量(以量分为系统变量(以开头)以及用户开头)以及用户自定义变量(以自定义变量(以开开头)。头)。查看系统变量的值查看系统变量的值全局系统变量与会话系统变量全局系统变量与会话系统变量设置系统变量的值设置系统变量的值2.5 2.5 系统变量系统变量每一个每一个MySQL客户机成功连接客户机成功连接MySQL服服务器后,都会产生与之对应的会话。务器后,都会产生与之对应的会话。会话期间,会话期间,MySQL服务实例会在服务实例会在MySQL服务器内存中生成与该会话对应的会话系统服务器内存中生成与该会话对应的会话系统变量,这些会话系统变量的初

39、始值是全局系变量,这些会话系统变量的初始值是全局系统变量值的拷贝。统变量值的拷贝。2.5.1 2.5.1 全局系统变量与会话系统变量全局系统变量与会话系统变量由于各会话在会话期间所做的操作不尽相由于各会话在会话期间所做的操作不尽相同,为了标记各个会话,会话系统变量又新同,为了标记各个会话,会话系统变量又新增了增了12个变量。个变量。2.5.1 2.5.1 全局系统变量与会话系统变量全局系统变量与会话系统变量2.5.1 2.5.1 全局系统变量与会话系统变量全局系统变量与会话系统变量使用使用“show global variables;”show global variables;”命令即命令即

40、可查看可查看MySQLMySQL服务器内存中所有的全局系统变服务器内存中所有的全局系统变量信息(有量信息(有393393项之多)。项之多)。使用使用“show session variables;”show session variables;”命令命令即可查看与当前会话相关的所有会话系统变即可查看与当前会话相关的所有会话系统变量以及所有的全局系统变量(有量以及所有的全局系统变量(有405405项之多),项之多),此处此处sessionsession关键字可以省略。关键字可以省略。2.5.2 2.5.2 查看系统变量的值查看系统变量的值MySQLMySQL中有一些系统变量仅仅是全局系统变量,中

41、有一些系统变量仅仅是全局系统变量,例如例如 innodb_data_file_pathinnodb_data_file_path。show global variables like show global variables like innodb_data_file_pathinnodb_data_file_path;show session variables like show session variables like innodb_data_file_pathinnodb_data_file_path;show variables like show variables like

42、 innodb_data_file_pathinnodb_data_file_path;2.5.2 2.5.2 查看系统变量的值查看系统变量的值MySQLMySQL中有一些系统变量仅仅是会话系统变量,中有一些系统变量仅仅是会话系统变量,例如例如MySQLMySQL连接连接IDID会话系统变量会话系统变量pseudo_thread_idpseudo_thread_id。show session variables like show session variables like pseudo_thread_idpseudo_thread_id;show variables like show v

43、ariables like pseudo_thread_idpseudo_thread_id;2.5.2 2.5.2 查看系统变量的值查看系统变量的值 MySQLMySQL中中有有一一些些系系统统变变量量既既是是全全局局系系统统变变量量,又又 是是 会会 话话 系系 统统 变变 量量,例例 如如 系系 统统 变变 量量character_set_client character_set_client 既既是是全全局局系系统统变变量量,又又是是会话系统变量。会话系统变量。2.5.2 2.5.2 查看系统变量的值查看系统变量的值此时查看会话系统变量的方法:此时查看会话系统变量的方法:show sh

44、ow session session variables variables like like character_set_client;character_set_client;show show variables variables like like character_set_client;character_set_client;此时查看全局系统变量的方法:此时查看全局系统变量的方法:show show global global variables variables like like character_set_client;character_set_client;2.5

45、.2 2.5.2 查看系统变量的值查看系统变量的值作作为为MySQLMySQL编编码码规规范范,MySQLMySQL中中的的系系统统变变量量以以两两个个“”开头。开头。global global仅仅用于标记全局系统变量;仅仅用于标记全局系统变量;session session仅仅用于标记会话系统变量;仅仅用于标记会话系统变量;首首先先标标记记会会话话系系统统变变量量,如如果果会会话话系系统统变量不存在,则标记全局系统变量。变量不存在,则标记全局系统变量。2.5.2 2.5.2 查看系统变量的值查看系统变量的值任务布置任务布置4 4:完成本书场景描述:完成本书场景描述4 4的任务要求。的任务要求

46、。2.5.2 2.5.2 查看系统变量的值查看系统变量的值方法一:修改方法一:修改MySQLMySQL源代码,然后对源代码,然后对MySQLMySQL源代码源代码重新编译(该方法适用于重新编译(该方法适用于MySQLMySQL高级用户,这里不高级用户,这里不作阐述)。作阐述)。方法二:最为简单的方法是通过修改方法二:最为简单的方法是通过修改MySQLMySQL配置文配置文件,继而修改件,继而修改MySQLMySQL系统变量的值(系统变量的值(faifai方法需要方法需要重启重启MySQLMySQL服务)。服务)。方法三:在方法三:在MySQLMySQL服务运行期间,使用服务运行期间,使用“se

47、t”set”命命令重新设置系统变量的值。令重新设置系统变量的值。2.5.2 2.5.2 查看系统变量的值查看系统变量的值 设置全局系统变量的值的方法:设置全局系统变量的值的方法:set global.innodb_file_per_table=set global.innodb_file_per_table=default;default;set global.innodb_file_per_table=set global.innodb_file_per_table=ON;ON;set global innodb_file_per_table=ON;set global innodb_fil

48、e_per_table=ON;2.5.2 2.5.2 查看系统变量的值查看系统变量的值设置会话系统变量的值的方法:设置会话系统变量的值的方法:set set session.pseudo_thread_idsession.pseudo_thread_id=5;=5;set session set session pseudo_thread_idpseudo_thread_id=5;=5;set set pseudo_thread_idpseudo_thread_id=5;=5;set set pseudo_thread_idpseudo_thread_id=5;=5;2.5.2 2.5.2 查

49、看系统变量的值查看系统变量的值MySQLMySQL中还有一些特殊的全局系统变量(例如中还有一些特殊的全局系统变量(例如log_binlog_bin、tmpdirtmpdir、versionversion、datadirdatadir),在),在MySQLMySQL服务实例运行期间它们的值不能动态修改,服务实例运行期间它们的值不能动态修改,不能使用不能使用“set”set”命令进行重新设置,这种变量称命令进行重新设置,这种变量称为静态变量。为静态变量。数据库管理员可以使用方法一或者方法二对数据库管理员可以使用方法一或者方法二对静态变量的值重新设置。静态变量的值重新设置。2.5.2 2.5.2 查

50、看系统变量的值查看系统变量的值步骤步骤1:准备工作:准备工作方法一:停止方法一:停止MySQL服务服务方方法法二二:使使用用MySQL命命令令“flushtableswithreadlock;”将将服服务务器器内内存存中中的的数数据据“刷刷新新”到到数数据据库库文文件件中中,同同时时锁锁定定所所有有表表,以以保保证证备备份份期期间间不会有新的数据写入不会有新的数据写入。2.6 MySQL2.6 MySQL数据库备份和恢复数据库备份和恢复步骤步骤2:备份文件的选取:备份文件的选取如果数据库中全部是如果数据库中全部是MyISAM存储引擎的表,最存储引擎的表,最为简单的数据库备份方法就是直接为简单的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com