欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

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

程序员文章站 2022-04-28 14:53:33
...

有评论就是我最大的动力~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程序的调试,背一下

相关标签: sqlyog