首頁 >php教程 >php手册 >有评论就是我最大的动力~MySQL基础篇完结(存储引擎和图形化管理工具),mysql基础篇

有评论就是我最大的动力~MySQL基础篇完结(存储引擎和图形化管理工具),mysql基础篇

WBOY
WBOY原創
2016-06-13 08:51:061026瀏覽

有评论就是我最大的动力~MySQL基础篇完结(存储引擎和图形化管理工具),mysql基础篇

  hi

今天登上来,发现竟然有了3个评论~~加油吧!

这周的计划其实远远没有达到,然后下周还有一大堆事情。。。那么。。。周末好好玩吧~

今天试图完结MySQL的基础篇知识,小白变为大白?

1、MySQL

-----存储引擎(入门)-----

----简介

 

---直观的例子

mysql> SHOW CREATE TABLE test;
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test | CREATE TABLE `test` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1 |
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.04 sec)

这里的ENGINE=InnoDB就是一个/种存储引擎

---

MySQL可以将数据以不同的技术存储在文件/内存中,这种技术就是存储引擎(也就是说,存储引擎就是一种技术,一种存储技术)

各种引擎功能不一样,源于存储机制、索引技巧、锁定水平的不同

又称为表类型

---

MySQL支持的主要有

MyISAM,InnoDB,Memory,CSV,Archive

----知识点-并发处理

当多个连接对记录进行修改时保证数据的一致性和完整性

比如处理多个用户对同一条记录的请求————常用的为共享锁(读锁)(多个用户可以读取同一个资源,读取过程中数据不会发生任何变化),排它锁(写锁)(在任何时候只能有一个用户写入资源,进行写锁时会阻塞其他读锁或写锁操作)

加锁,要注意只针对最正确的对象(对象不能太大太小)——表锁(是一种开销最小的锁策略),行锁(开销最大)

----知识点-事务处理

用于保证数据库的完整性

满足:ACID(原子性,一致性,隔离性,持久性)

----知识点-外键

保证数据一致性的策略(在之前讲各种键的那里讲过的)

----知识点-索引

对数据表中一列或多列的值进行排序的一种结构(类似目录的功能)

实现快速的查询

----各种引擎的特点

MyISAM:256TB,支持索引,表锁,支持数据压缩——适用于事务不多的情况

InnoDB:64TB,支持事务安全(这是常选用该引擎的原因),支持索引,行锁,支持外键(同样只有该引擎支持这一项)——高大上

Memory:有存储限制(由内存大小决定),支持索引,表锁

Archive:无存储限制,支持索引,表锁,支持数据压缩

索引的类型还有不同,再说。

其他的:CSV不支持索引,Blackhole用作数据复制的中继(类似阅后即焚)

用的最多的是前两个。

----设置存储引擎

---my.ini修改

default-storage-engine=...

---CREATE TABLE table(

...

举例子如下

mysql> CREATE TABLE tp1(
-> s1 VARCHAR(20)
-> )ENGINE=MyISAM;
Query OK, 0 rows affected (0.10 sec)

mysql> SHOW CREATE TABLE tp1;
+-------+---------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+---------------------------------------------------------------------------------------------+
| tp1 | CREATE TABLE `tp1` (
`s1` varchar(20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
+-------+---------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> ALTER TABLE tp1 ENGINE=InnoDB;
Query OK, 0 rows affected (0.35 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> SHOW CREATE TABLE tp1;
+-------+---------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+---------------------------------------------------------------------------------------------+
| tp1 | CREATE TABLE `tp1` (
`s1` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+-------+---------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

-----图形化管理工具-----

----PHPMyAdmin

由于我的是wamp集成环境,可以直接登陆到phpmyadmin

正常的是要到phpmyadmin官网下载对应自己用的php版本的

下载安装好也是要到网页端进行操作的,毕竟是放在服务器端的东西

能够可视化的进行数据库、数据表、数据的操作,感觉上,不是很习惯,个人还是喜欢用命令的方式。不过可视化的方便查找错误什么的吧,还需要再去体会理解

----Navicat

有中文版客户端的

----MySQL Workbench

官网提供的客户端

不打算具体说,网上查得到,而且多摸摸就会了

 2、AJAX

-----简介-----

中文名:异步的Javascript和XML(异步请求,局部刷新)

是一种无需重新加载整个网页而可以更新部分页面的技术

改变了web的格局

预备知识:CSS,HTML,JS

----同步和异步

同步:(原来的技术)客户端请求后服务器响应处理后返回处理结果,整个过程中客户端一直在等待——同步指的是,客户端和服务器端同步进行处理

异步:(举个例子,填写注册信息的时候,填了邮箱,然后输入框右侧很快给出一个绿色的对号)客户端有变化的时候,(似乎)立即发送请求到处理器端,然后处理器端处理后返回结果,这个过程中,客户端仍在进行其他操作——客户端、服务器端的异步操作

技术区别:在于缺少XMLHttpRequest这个对象——用于后台和服务器进行数据的交换

过程简介:HTML&CSS来实现页面,表达信息+XHR进行数据的异步交换+JavaScript操作DOM实现动态局部刷新

----XMLHttpRequest(XHR)对象创建

实例化XHR:var request=new XMLHttpRequest();

除了IE6及以前版本的浏览器都支持XHR

----HTTP请求

http是计算机通过网络进行通信的规则/协议,是一种无状态(不保留状态/无记忆)的协议

http请求的步骤:建立TCP连接-》浏览器“喊向”服务器-》服务器应答-》服务器回答-》关闭连接

请求和响应有各自的格式,详细可以查《计算机网络》或者类似书籍,大概知道有GET/POST啊什么的就可以暂时继续

注意:GET是用URL传递数据,是全部可见的(明文),而且有字符数限制,优点是简单、安全且可以保存为书签等

响应后在浏览器有状态码要适当了解:主要看首位——1xx,信息类,表示正在处理;2xx,成功;3xx,重定向,表示请求不成功,需要客户进一步动作;4xx,客户端错误,表示客户端提交的请求有错误,比如404 NOT FOUND,意味着请求中所引用的文档不存在;5xx,服务器错误————有助于web程序的调试,背一下

 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn