MySQL数据库培训资料

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MySQL数据库介绍深圳市艾派应用系统有限公司1Mysql简介Mysql数据库简介Mysql常用操作Mysql管理维护Mysql数据库特点越来越多的企业级特性Mysql数据库安装Mysql连接工具Mysql体系结构表引擎字符集问题常用数据类型常用Sql语句数据库备份数据库恢复数据库维护与修复用户权限管理MySQL数据库培训目录数据库安全加固2MySQL简介MySQL常用操作MySQL管理维护3•常用的数据库服务器:商业:oracle,SQLserver,DB2开源:MySQL,postgreSQL,SQLite•MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。•在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购,对于Mysql的前途,没有任何人抱乐观的态度.•目前MySQL被广泛地应用在Internet上的中小型网站中。•由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。分标准版和企业版本,企业版本提供EnterpriseMonitor工具,目前版本已经到达MySQL6。MySQL数据库简介4•开放源代码•小巧易用•高性能低成本(是ORACLE价格的1/10)•高可靠•高速发展的数据库•几乎支持所有的平台•广泛应用在嵌入式、网站应用、企业级应用•J2EE架构、.NET架构、还有LAMP架构•众多的第三方支持(与LINBIT达成合作伙伴关系)•支持web2.0得天独厚MySQL数据库特点5MySQL的技术进展•MySQL3.23开始支持外键(InnoDB)•MySQL4.1开始支持R-trees索引(MyISAM)•MySQL从5.0开始,全面支持视图、存储过程、函数和触发器功能•MySQL5.1支持分区功能•MySQL5.1支持行复制•MySQL6.0将实现双向复制•逐步增加对非结构化数据XML的支持特性•MySQL6.0将支持最新的FALCON存储引擎著名的数据库大师JimStarkey现在在MySQL开发Falcon。Falcon面向的客户是企业级用户。Oracle跟MySQL签定了合作协议,用户可以继续选择InnoDB存储引擎越来越多的企业级特性6软件下载登陆官方网站,下载最新的released版本。创建MySQL用户和用户组#groupaddmysql#useradd-r-gmysqlmysql解压MySQL#cd/usr/local#tarzxvf/opt/mysql-5.5.8-linux2.6-i686.tar.gz#ln-s/usr/local/mysql-5.5.8-linux2.6-i686mysql7基于Linix/Unix的安装赋予MySQL用户权限#cdmysql#chown-Rmysql.#chgrp-Rmysql.安装MySQL#scripts/mysql_install_db--user=mysql#chown-Rmysqldata#cp/usr/local/mysql/support-files/my-small.cnf/etc/my.cnfMySQL的启动与停止#bin/mysqld_safe--user=mysql&#cp/usr/local/mysql/support-files/mysql.server/etc/init.d/mysql.server#/etc/init.d/mysql.serverstart/stop/restart8基于Linix/Unix的安装更改数据库root用户的密码#./bin/mysqladmin-urootpassword'testtest'打开MySQL远程控制#./bin/mysql-uroot-p#grantallprivilegeson*.*to'root'@'192.168.2.81'identifiedby'testtest'withgrantoption;#flushprivileges;#updatedbsethost='192.168.2.81'whereuser='root';#flushprivileges;9基于Linix/Unix的安装10基于Windows的安装11数据库配置Windows下数据库的停用和启用12MySQL工具MySQL-Front一款小巧的管理MySQL的应用程序。主要特性包括多文档界面,语法突出,拖拽方式的数据库和表格,可编辑/可增加/删除的域,可编辑/可插入/删除的记录,可显示的成员,可执行的SQL脚本,提供与外程序接口,保存数据到CSV文件等。MySQLAdministratorMySQLAdministrator是用来执行数据库管理操作的程序和用来监视和管理MySQL实例内的数据库、用户的权限和数据的实用程序,比如说配置、控制、开启和关闭mysql服务。MySQLQueryBrowserMySQLQueryBrowser是一个可视化的toolset,用于创建、执行以及最优化的MySQL数据库查询。它就像是镶嵌在Web浏览器中的一个集成的拖曳工具套件,为使用者提供了一个更简便、更有生产力的途径来存取、分析存储在MySQL数据库服务器中的信息。1314MySQL简介MySQL常用操作MySQL管理维护mysql体系结构15设有张马虎,李小心两人,都是地铁口的自行车管理员.每天都有很多人来存取自行车,张马虎的管理方式是:来存自己存,不记录存的是什么车,取时交5毛,也不检查取的是否是自己的车.李小心呢,则在存取自己车时,记录存车人的特征与自行车的特征,当人来取车,还要小心核一下,人与车的特征是否对应思考:张马虎和李小心谁对业务的处理速度更高?二者谁对自行车管理更安全?数据库对同样的数据,有着不同的存储方式和管理方式在mysql中,称为存储引擎存储引擎的概念16多种可选择的存储引擎•MyISAM•InnoDB•MERGE•MEMORY(HEAP)•BDB(BerkeleyDB)•EXAMPLE•FEDERATED•ARCHIVE•CSV•BLACKHOLE•FALCON可插拔式的存储引擎17MyISAM是MySQL的默认存储引擎文章,新闻等安全性要求不高的,选myisam订单,资金,账单,火车票等对安全性要求高的,可以选用innodb对于临时中转表,可以用memory型,速度最快存储引擎的选择出于速度和安全性的要求,选取合理的存储引擎18查看存储引擎查看数据库可以支持的存储引擎mysqlshowengines;19查看表的结构等信息的若干命令1.Desc[ribe]tablename;//查看数据表的结构2.showtablestatuslike‘tablename’//显示表的当前状态值3.showtablestatuslike‘tablename’\G//显示表的当前状态值20创建数据库表时设置存储存储引擎的基本语法是:CreatetabletableName(columnName(列名1)type(数据类型)attri(属性设置),columnName(列名2)type(数据类型)attri(属性设置),……..)engine=engineName例如,假设要创建一个名为user的表,此表包括id,用户名username和性别sex三个字段,并且要设置表类型为merge。则可用如下的方式创建此数据表,createtableuser(idintnotnullauto_increment,usernamechar(20)notnull,sexchar(2),primarykey(id))engine=merge21修改存储引擎可以用命令AltertabletableNameengine=engineName假如,若需要将表user的存储引擎修改为InnoDB类型,则可使用命令altertableuserengine=InnoDB。如下图所示:查看修改后的表类型,可见表类型已经变为InnoDB类型。22一句话说字符集字符集就是一个字符-二进制字节的映射表考虑多语言与移植的问题,选取合理的字符集字符集是一套符号和编码的规则,不论是在oracle数据库还是在mysql数据库,都存在字符集的选择问题,而且如果在数据库创建阶段没有正确选择字符集,那么可能在后期需要更换字符集,而字符集的更换是代价比较高的操作,也存在一定的风险,所以,我们推荐在应用开始阶段,就按照需求正确的选择合适的字符集,避免后期不必要的调整。字符集(charset)231:节省空间建议在能够完全满足应用的前提下,尽量使用小的字符集。因为更小的字符集意味着能够节省空间、减少网络传输字节数,同时由于存储空间的较小间接的提高了系统的性能。有很多字符集可以保存汉字,比如utf8、gb2312、gbk、gb18030等等,但是常用的是gb2312和gbk。2:兼容性因为gb2312字库比gbk字库小,有些偏僻字(例如:洺)不能保存,因此在选择字符集的时候一定要权衡这些偏僻字在应用出现的几率以及造成的影响。3:发展空间在互联网上,国际化的趋势不可避免,且存储空间已经越来海量化,因此推荐用utf8,如果开发内网系统,如内部OA等,可以考虑GBK。字符集的选择24查看MySQL数据库服务器和数据库MySQL字符集。mysqlshowvariableslike'character_set_%';+--------------------------+-------------------------------------+------|Variable_name|Value|......+--------------------------+-------------------------------------+------|character_set_client|utf8|......--客户端字符集|character_set_connection|utf8|......|character_set_database|utf8|......--数据库字符集|character_set_filesystem|binary|......|character_set_results|utf8|......|character_set_server|utf8|......--服务器字符集|character_set_system|utf8|......|character_sets_dir|D:\MySQLServer5.0\share\charsets\|......+--------------------------+-------------------------------------+------25查看MySQL数据表(table)的MySQL字符集mysqlshowtablestatusfrom库名like‘%表名%';+-----------+--------+---------+------------+------+-----------------+------|Name|Engine|Version|Row_format|Rows|Collation|......+-----------+--------+---------+------------+------+-----------------+------|countries|InnoDB|10|Compact|11|utf8_general_ci|......+-----------+--------+---------+------------+------+-----------------+------查看MySQL数据列(column)的MySQL字符集。mysqlshowfullcolumnsfr

1 / 52
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功