1.MySQL çåå²
2.海豚MQTT-Mosquitto(1)
MySQL çåå²
MySQLçæµ·è±æ å¿çååå«âsakilaâï¼å®æ¯ç±MySQL ABçåå§äººä»ç¨æ·å¨âæµ·è±å½åâçç«èµä¸å»ºè®®ç大éçåå表ä¸éåºçãè·èçååæ¯ç±æ¥èªéæ´²æ¯å¨å£«å °çå¼æºè½¯ä»¶å¼åè Ambrose Twebazeæä¾ãæ ¹æ®Ambroseæ说ï¼Sakilaæ¥èªä¸ç§å«SiSwatiçæ¯å¨å£«å °æ¹è¨ï¼ä¹æ¯å¨Ambroseç家乡ä¹å¹²è¾¾éè¿çå¦æ¡å°¼äºçArushaçä¸ä¸ªå°éçååã
äº.MySQL åå±
MySQLçåå²ææ©å¯ä»¥è¿½æº¯å°å¹´ï¼æä¸ä¸ªäººå«Monty Widenius,源码海豚 为ä¸ä¸ªå«TcXçå°å ¬å¸æå·¥ï¼å¹¶ç¨BASIC设计äºä¸ä¸ªæ¥è¡¨å·¥å ·ï¼å¯ä»¥å¨4M主é¢åKBå å¨ç计ç®æºä¸è¿è¡ãè¿äºä¸ä¹ ï¼åå°æ¤å·¥å ·ï¼ä½¿ç¨Cè¯è¨éåï¼ç§»æ¤å°Unixå¹³å°ï¼å½æ¶ï¼å®åªæ¯ä¸ä¸ªå¾åºå±çé¢åæ¥è¡¨çåå¨å¼æãè¿ä¸ªå·¥å ·å«åUniregã
å¹´ï¼çå ¸çå ä½å¿åéåå°ä¼åï¼ä»¥David Axmark 为é¦ï¼ æç«äºä¸å®¶å ¬å¸ï¼è¿å°±æ¯MySQL AB çå身ãè¿ä¸ªå ¬å¸æå并ä¸æ¯ä¸ºäºå¼åæ°æ®åºäº§åï¼èæ¯å¨å®ç°ä»ä»¬æ³æ³çè¿ç¨ä¸ï¼éè¦ä¸ä¸ªæ°æ®åºãä»ä»¬å¸æè½å¤ä½¿ç¨å¼æºç产åãä½å¨å½æ¶å¹¶æ²¡æä¸ä¸ªåéçéæ©ï¼æ²¡åæ³ï¼é£å°±èªå·±å¼åå§ã
å¨æåï¼ä»ä»¬åªæ¯èªå·±è®¾è®¡äºä¸ä¸ªå©ç¨ç´¢å¼é¡ºåºååæ°æ®çæ¹æ³ï¼ä¹å°±æ¯I S A Mï¼Indexed Sequential Access Methodï¼åå¨å¼ææ ¸å¿ç®æ³çå身ï¼å©ç¨ISAM ç»åmSQL æ¥å®ç°ä»ä»¬çåºç¨éæ±ãå¨æ©æï¼ä»ä»¬ä¸»è¦æ¯ä¸ºçå ¸çä¸äºå¤§åé¶å®åæä¾æ°æ®ä»åºæå¡ãå¨ç³»ç»ä½¿ç¨è¿ç¨ä¸ï¼éçæ°æ®éè¶æ¥è¶å¤§ï¼ç³»ç»å¤æ度è¶æ¥è¶é«ï¼ISAM åmSQL çç»åéæ¸ä¸å ªéè´ãå¨åææ§è½ç¶é¢ä¹åï¼ä»ä»¬åç°é®é¢åºå¨mSQL ä¸é¢ãä¸å¾å·²ï¼ä»ä»¬æå¼äºmSQLï¼éæ°å¼åäºä¸å¥åè½ç±»ä¼¼çæ°æ®åå¨å¼æï¼è¿å°±æ¯ISAM åå¨å¼æã大家å¯è½å·²ç»æ³¨æå°ä»ä»¬å½æ¶ç主è¦å®¢æ·æ¯æ°æ®ä»åºï¼åºè¯¥ä¹å®¹æç解为ä»ä¹ç´è³ç°å¨ï¼MySQL ææ é¿çæ¯æ¥è¯¢æ§è½ï¼èä¸æ¯äºå¡å¤çï¼éè¦åå©ç¬¬ä¸æ¹åå¨å¼æï¼ã
å¹´ï¼TcXçcustomer ä¸å¼å§æ人è¦æ±è¦ä¸ºå®çAPIæä¾SQLæ¯æï¼å½æ¶ï¼æ人æ³å°äºç´æ¥ä½¿ç¨åç¨æ°æ®åºç®äºï¼ä½æ¯Montyè§å¾åç¨æ°æ®åºçé度é¾ä»¤äººæ»¡æãäºæ¯ï¼ä»ç´æ¥åå©äºmSQLç代ç ï¼å°å®éæå°èªå·±çåå¨å¼æä¸ãä½ä¸å·§çæ¯ï¼ææ并ä¸å¤ªå¥½ãäºæ¯,Montyéå¿å¤§èµ·ï¼å³å¿èªå·±éåä¸ä¸ªSQLæ¯æã
å¹´ï¼MySQL 1.0åå¸, å¨å°èå´å 使ç¨ãå°äºå¹´æï¼MySQL 3..1åå¸äºï¼æ²¡æ2.xçæ¬ãæå¼å§ï¼åªæä¾äºSolarisä¸çäºè¿å¶çæ¬ãä¸ä¸ªæåï¼Linuxçæ¬åºç°äºã æ¤æ¶çMySQLè¿é常ç®éï¼é¤äºå¨ä¸ä¸ªè¡¨ä¸åä¸äºInsertï¼Updateï¼DeleteåSelect æä½èä½ï¼æ²¡æå ¶ä»æ´å¤çåè½ã
ç´§æ¥ä¸æ¥ç两年éï¼MySQLä¾æ¬¡ç§»æ¤å°å个平å°ä¸ãå®åå¸æ¶ï¼éç¨ç许å¯çç¥ï¼æäºä¸ä¼ä¸åï¼å 许å è´¹åç¨ï¼ä½æ¯ä¸è½å°MySQLä¸èªå·±ç产åç»å®å¨ä¸èµ·åå¸ãå¦ææ³ä¸èµ·åå¸ï¼å°±å¿ 须使ç¨ç¹æ®è®¸å¯ï¼æå³çè¦è±é¶åãå½ç¶ï¼åä¸æ¯æä¹æ¯éè¦è±é¶åçãå ¶å®çï¼éç¨æ·æä¹ç¨é½å¯ä»¥ãè¿ç§ç¹æ®è®¸å¯ä¸ºMySQL带æ¥äºä¸äºæ¶å ¥ï¼ä»è为å®çæç»åå±æä¸äºè¯å¥½çåºç¡ã
-å¹´ï¼æä¸å®¶å ¬å¸å¨çå ¸æç«äºï¼å«MySQL ABã éäºå 个人,ä¸Sleepycatåä½ï¼å¼ååºäº Berkeley DBå¼æ, å 为BDBæ¯æäºå¡å¤çï¼æ以ï¼MySQLä»æ¤å¼å§æ¯æäºå¡å¤çäºã
å¨ å¹´çæ¶åï¼MySQL å ¬å¸äºèªå·±çæºä»£ç ï¼å¹¶éç¨GPLï¼GNU General Public Licenseï¼è®¸å¯åè®®ï¼æ£å¼è¿å ¥å¼æºä¸çã
å¹´4æï¼MySQL对æ§çåå¨å¼æè¿è¡äºæ´çï¼å½å为MyISAMã
å¹´ï¼Heikiki TuuriåMySQLæåºå»ºè®®ï¼å¸æè½éæä»ä»¬çåå¨å¼æInnoDBï¼è¿ä¸ªå¼æåæ ·æ¯æäºå¡å¤çï¼è¿æ¯æè¡çº§éãæ以å¨å¹´åå¸ç3. çæ¬çæ¶åï¼è¯¥çæ¬å·²ç»æ¯æ大å¤æ°çåºæ¬çSQL æä½ï¼èä¸è¿éæäºMyISAMåInnoDB åå¨å¼æãMySQLä¸InnoDBçæ£å¼ç»åçæ¬æ¯4.0ã
å¹´æï¼åå¸äºç»å ¸ç4.1çæ¬ã å¹´æï¼æåå¸äºéç¨ç¢çä¸ä¸ªçæ¬ï¼MySQL 5.0. å¨5.0ä¸å å ¥äºæ¸¸æ ï¼åå¨è¿ç¨ï¼è§¦åå¨ï¼è§å¾åäºå¡çæ¯æãå¨5.0 ä¹åççæ¬éï¼MySQLæç¡®å°è¡¨ç°åºè¿åé«æ§è½æ°æ®åºçåå±æ¥ä¼ã
å¹´1æå· MySQL被Sunå ¬å¸æ¶è´ã
å¹´ææ¥Oracleæ¶è´Sun å ¬å¸ï¼MySQL è½¬å ¥Oracle é¨ä¸ã
å¹´æ åå¸MySQL 5.5, MySQLcluster 7.1.
ç°å¨å®ç½å¯ä»¥ä¸å°çMySQL çæ¬æ¯ï¼5.5.. Oracle 对MySQLçæ¬éæ°è¿è¡äºååï¼åæäºç¤¾åºçåä¼ä¸çï¼ä¼ä¸çæ¯éè¦æ¶è´¹çï¼å½ç¶æ¶è´¹çå°±ä¼æä¾æ´å¤çåè½ã
海豚MQTT-Mosquitto(1)
在决定使用MQTT协议后,搭建MQTT服务器的源码海豚首要任务是选择MQTT Broker。虽然云平台提供了付费服务,源码海豚但个人项目成本较高,源码海豚因此个人用户可能会选择自建服务器,源码海豚如之前双十一购买的源码海豚ontrimmemory源码分析低配服务器,非常适合实验用途。源码海豚
在选择后台方案时,源码海豚市场上MQTT Broker选项众多。源码海豚早期,源码海豚我曾参考过一些资料,源码海豚那时Mosquitto因其轻量级和C语言实现的源码海豚优点,是源码海豚我的首选。然而,源码海豚鉴于其更新不频繁且扩展功能有限,源码海豚什么服务器能上传源码软件上一次搭建过程中遇到不少困难,这次我决定寻找更为现代化的解决方案,尽管它曾是我的起点。
安装和运行Mosquitto在Centos服务器上相对简单,只需要几个命令即可。为了保证安全性,我关闭了默认的奥运会五环ps源码匿名访问,通过创建adam用户并存储在/etc/mosquitto/clipasswd文件中,并设置了用户密码登录。接着,我修改了mosquitto.conf文件,强制客户端使用用户名和密码进行认证,并重启了服务。
接下来,上海桶装水防伪溯源码优势我开始转向SSL加密,需要生成自签名的证书。通过一系列命令,我生成了cacert.pem, server.crt, 和server.key文件。然后,我修改了mosquitto.conf,将非加密端口绑定到本地,海免邮寄到家没有溯源码添加了SSL相关配置,并重启了服务。测试连接时,确保使用正确的域名和证书文件。
然而,仅此还不够,我需要对访问权限进行控制。这超出了Mosquitto的基本功能,需要借助第三方插件mosquitto-auth-plug来实现。但该插件已停止维护,且与我使用的mosquitto-1.6.版本存在兼容性问题。我下载了对应版本的源码和openssl,进行了编译,并对auth-plug.c文件进行了必要的修改。接着,我将mosquitto的动态库调整到正确位置,并在Makefile中添加了链接参数。
在配置mosquitto时,我删除了之前用到的密码文件,转而依赖数据库管理。我创建了数据库表,定义了新的权限规则,并利用mosquitto的np工具生成用户密码,将其写入数据库。至此,通过MySQL控制用户登录和权限的Mosquitto配置已完成。
最后,为了测试MQTT服务器的性能,我附带了一个压测工具。通过以上步骤,一个安全且可扩展的MQTT服务器已经搭建完毕,满足了对用户访问权限的控制需求。