首页
关于
Search
1
给你10个市场数据调研报告的免费下载网站!以后竞品数据就从这里找!
182 阅读
2
php接口优化 使用curl_multi_init批量请求
144 阅读
3
《从菜鸟到大师之路 ElasticSearch 篇》
107 阅读
4
2024年备考系统架构设计师
104 阅读
5
PHP 文件I/O
92 阅读
php
thinkphp
laravel
工具
开源
mysql
数据结构
总结
思维逻辑
令人感动的创富故事
读书笔记
前端
vue
js
css
书籍
开源之旅
架构
消息队列
docker
教程
代码片段
redis
服务器
nginx
linux
科普
java
c
ElasticSearch
测试
php进阶
php基础
登录
Search
标签搜索
php函数
php语法
性能优化
安全
错误和异常处理
问题
vue
Composer
Session
缓存
框架
Swoole
api
并发
异步
正则表达式
php-fpm
mysql 索引
开发规范
协程
dafenqi
累计撰写
786
篇文章
累计收到
28
条评论
首页
栏目
php
thinkphp
laravel
工具
开源
mysql
数据结构
总结
思维逻辑
令人感动的创富故事
读书笔记
前端
vue
js
css
书籍
开源之旅
架构
消息队列
docker
教程
代码片段
副业
redis
服务器
nginx
linux
科普
java
c
ElasticSearch
测试
php进阶
php基础
页面
关于
搜索到
72
篇与
的结果
2023-12-05
MySQL查看和修改时区
为了验证 TIMESTAMP 存储时间与时区有关,显示的值也依赖于时区 看了mysql 时区 时间网 世界时区MySQL查看和修改时区的方法查看当前时区1. 在MySQL客户端,可以通过如下命令查看当前时区:SELECT @@global.time_zone;2. 查看当前时区的设置,可以通过如下命令:SHOW VARIABLES LIKE '%time_zone%';输出内容包含了当前时区设置、可用的时区列表,以及系统时间和UTC时间之间的时差(即偏移量)。下面验证mysql的 TIMESTAMP 存储时间与时区有关,显示的值也依赖于时区 默认mysql的时区是跟随系统时区显示,服务器是英国格林威治标准时间(GMT),改成中国时间东八区 ( UTC +8 ),看的出date2字段前后的时间变化跟时区有关。mysql> show variables like '%time_zone%'; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | GMT | | time_zone | SYSTEM | +------------------+--------+ 2 rows in set (0.00 sec) mysql> select date2 from new where id=1; +---------------------+ | date2 | +---------------------+ | 2023-12-05 16:06:51 | +---------------------+ 1 row in set (0.00 sec) mysql> set time_zone = '+08:00'; Query OK, 0 rows affected (0.00 sec) mysql> show variables like '%time_zone%'; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | GMT | | time_zone | +08:00 | +------------------+--------+ 2 rows in set (0.01 sec) mysql> select date2 from new where id=1; +---------------------+ | date2 | +---------------------+ | 2023-12-06 00:06:51 | +---------------------+ 1 row in set (0.00 sec) 修改时区1. 修改MySQL全局时区将MySQL服务的时区更改为UTC:SET GLOBAL time_zone = '+00:00';这里的'+00:00'代表UTC时间。2. 修改当前会话时区将当前会话的时区更改为本地时区:SET time_zone = 'Asia/Shanghai';这里'Asia/Shanghai'代表中国的时区。以上两种方法可以根据实际需求设置时区。示例说明:假设你需要在MySQL中使用同一个时区,这时可以通过修改全局时区实现:SET GLOBAL time_zone = '+08:00';如果你需要在MySQL中同时使用不同的时区,可以通过修改当前会话时区来实现:SET time_zone = 'America/New_York';这里'America/New_York'代表美国纽约的时区。
2023年12月05日
5 阅读
0 评论
0 点赞
2023-12-05
MySQL varchar(n)能存储几个汉字
MySQL varchar(n)能存储几个汉字 1 前言我们本节看一个小问题,就是我们平时用的varchar(n)能存储几个汉字。2 一个中文汉字占多少字节与编码有关在mysql中,一个中文汉字所占的字节数与编码格式有关:如果是GBK编码,则一个中文汉字占2个字节;如果是UTF8编码,则一个中文汉字占3个字节,而英文字母占1字节。UTF8:一个中文汉字=3个字节GBK:一个中文汉字=2个字节utf-8, 英文字母1字节3 varchar(n)能存储几个汉字MySQL中varchar(n)表示n个字符,无论汉字和英文,Mysql都能存入n个字符,仅是实际字节长度有所区别。对于utf8字符集:length返回字节数,char_length返回字符数。对于gbk字符集而言:说明:UTF-8:Unicode Transformation Format-8bit,允许含BOM,但通常不含BOM。是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码。UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强。UTF-8编码的文字可以在各国支持UTF8字符集的浏览器上显示。如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,他们无需下载IE的中文语言支持包。GBK 是国家标准GB2312基础上扩容后兼容GB2312的标准。GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1。GBK包含全部中文字符,是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBD大。GBK、GB2312等与UTF8之间都必须通过Unicode编码才能相互转换:GBK、GB2312 --> Unicode --> UTF8 UTF8 --> Unicode -> GBK、GB2312GB2312是GBK的子集,GBK是GB18030的子集GBK是包括中日韩字符的大字符集合为了避免所有乱码问题,应该采用UTF-8,将来要支持国际化也非常方便 UTF8可以看作是大字符集,它包含了大部分文字的编码。使用UTF8的一个好处是其他地区的用户(如香港台湾)无需安装简体中文支持就能正常观看你的文字而不会出现乱码。gb2312是简体中文的码gbk支持简体中文及繁体中文big5支持繁体中文utf8支持几乎所有字符4 小结在字符集为UTF-8的情况下:若 MySQL version < 4.1:VARCHAR以字节为单位存储,假设全部为常用汉字,则VARCHAR(255)共可存放约85个汉字。若 MySQL version >= 4.1:VARCHAR以字符为单位存储,假设全部为常用汉字,则VARCHAR(255)可以存放255个汉字。当然,现在MySQL基本都大于4.1版本的,所以说MySQL中varchar(n)表示n个字符,无论汉字和英文,Mysql都能存入n个字符,仅是实际字节长度有所区别。实践以上是转载,以前遇到过这个问题,类似一个公告数据表,公告内容字段类型为varchar(256),还想按照字节编码utf-8能存85个中文字符,往该表字段值塞进去超过三百字中文试了下,最后得到该字段值显示为:253个中文+2个数字+1个中文感叹号。mysql版5.7,石锤了。拓展:💻1、char的长度是不可变的,而varchar的长度是可变的例如值:abc类型char(10),存储值为:abc_______(abc+7个空格)类型varchar(10), 存储值为:abc (自动缩短为3个字母的长度,节省存储空间)🌈💻2、因为char类型长度固定,因此char的存取效率比varchar要快得多,方便程序的存储与查找。但是char也为此付出的是空间的代价,因为其长度固定,所以会占据多余的空间,可谓是以空间换取时间效率。(以空间换时间的做法)而varchar则刚好相反,节省空间但存取效率相对较低。(以时间换空间的做法)🌈💻3、存储的容量不同char类型最多可存放255个字符,并且和编码类型无关varchar类型复杂一些:varchar的最大长度为65535个字节,varchar可存放的字符数因编码类型不同而异(mysql的version小于4.1)👉字符类型若为gbk,每个字符最多占2个字节,最大长度不能超过32766个字符👉字符类型若为utf8,每个字符最多占3个字节,最大长度不能超过21845个字符🌈💻使用建议👉若字段长度固定,则可以使用char来保存,存取效率高,如:手机号、身份证👉若字段长度经常改变,可选用varchar来最大化利用存储空间,减少空间浪费。
2023年12月05日
33 阅读
0 评论
0 点赞
2023-11-30
MySQL高级篇之View视图
MySQL高级篇之View视图一、视图1.什么是视图视图是一种虚拟表 ,本身是不具有数据 的,占用很少的内存空间,它是 SQL 中的一个重要概念.视图建立在已有表的基础上, 视图赖以建立的这些表称为基表.视图的创建和删除只影响视图本身,不影响对应的基表。但是当对视图中的数据进行增加、删除和修改操作时,数据表中的数据会相应地发生变化,反之亦然。视图,是向用户提供基表数据的另一种表现形式。通常情况下,小型项目的数据库可以不使用视图,但是在大型项目中,以及数据表比较复杂的情况下,视图的价值就凸显出来了,它可以帮助我们把经常查询的结果集放到虚拟表中,提升使用效率。理解和使用起来都非常方便。2.创建视图2.1 视图语法完整的创建视图的语法结构CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW 视图名称 [(字段列表)] AS 查询语句 [WITH [CASCADED|LOCAL] CHECK OPTION]简化版本:CREATE VIEW 视图名称 AS 查询语句2.2 创建单表视图举例:CREATE VIEW v_student AS SELECT id,NAME,sex FROM student t WHERE id = 901;查询视图:SELECT * FROM v_student;针对别名的处理,可以在创建视图的子查询中指定对应的别名CREATE VIEW v_student1 AS SELECT id stu_id,name stu_name,sex gender FROM student ;也可以在创建视图的视图名称后添加对应的别名字段CREATE VIEW v_student2(stu_id,stu_name,gender) AS SELECT id ,name ,sex FROM student ;我们在创建视图的时候还可以封装不是基表中存在的字段的情况说明:实际上就是我们在 SQL 查询语句的基础上封装了视图 VIEW,这样就会基于 SQL 语句的结果集形成一张虚拟表。在创建视图时,没有在视图名后面指定字段列表,则视图中字段列表默认和SELECT语句中的字段列表一致。如果SELECT语句中给字段取了别名,那么视图中的字段名和别名相同。2.2 创建多表视图上面是基于单表创建的视图,当然我们也可以基于多表查询的结果来封装为对应的视图。CREATE VIEW v_student_score AS SELECT t1.id,t1.name,t2.c_name,t2.grade FROM student t1 left join score t2 on t1.id = t2.stu_id查询视图SELECT * FROM v_student_score;当然别名的处理方式在多表中同样的适用。2.3 基于视图创建视图当我们创建好一张视图之后,还可以在它的基础上继续创建视图。CREATE VIEW v_student_score1 AS SELECT * FROM v_student_score WHERE grade > 80;查看视图select * from v_student_score1;到这其实我们能够发下,视图的创建还是非常灵活的。3.查看视图语法1:查看数据库的表对象、视图对象SHOW TABLES;语法2:查看视图的结构DESC / DESCRIBE 视图名称;语法3:查看视图的属性信息# 查看视图信息(显示数据表的存储引擎、版本、数据行数和数据大小等) SHOW TABLE STATUS LIKE '视图名称'\\G执行结果显示,注释Comment为VIEW,说明该表为视图,其他的信息为NULL,说明这是一个虚表。语法4:查看视图的详细定义信息SHOW CREATE VIEW 视图名称;4.更新视图数据4.1 一般情况MySQL支持使用INSERT、UPDATE和DELETE语句对视图中的数据进行插入、更新和删除操作。当视图中的数据发生变化时,数据表中的数据也会发生变化,反之亦然。举例:updatemysql> select * from v_student; +-----+--------+-----+ | id | NAME | sex | +-----+--------+-----+ | 901 | 张老大 | 男 | +-----+--------+-----+ 1 row in set (0.03 sec) mysql> update v_student set name='张老大11'; Query OK, 1 row affected (0.02 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from v_student; +-----+----------+-----+ | id | NAME | sex | +-----+----------+-----+ | 901 | 张老大11 | 男 | +-----+----------+-----+ 1 row in set (0.03 sec) mysql> select * from student; +-----+----------+-----+-------+------------+--------------+ | id | name | sex | birth | department | address | +-----+----------+-----+-------+------------+--------------+ | 901 | 张老大11 | 男 | 1985 | 计算机系 | 北京市海淀区 | | 902 | 张老二 | 男 | 1986 | 中文系 | 北京市昌平区 | | 903 | 张三 | 女 | 1990 | 中文系 | 湖南省永州市 | | 904 | 李四 | 男 | 1990 | 英语系 | 辽宁省阜新市 | | 905 | 王五 | 女 | 1991 | 英语系 | 福建省厦门市 | | 906 | 王六 | 男 | 1988 | 计算机系 | 湖南省衡阳市 | +-----+----------+-----+-------+------------+--------------+ 6 rows in set (0.05 sec) mysql>举例:deletemysql> delete from v_student; Query OK, 1 row affected (0.01 sec) mysql> select * from v_student; Empty set mysql> select * from student; +-----+--------+-----+-------+------------+--------------+ | id | name | sex | birth | department | address | +-----+--------+-----+-------+------------+--------------+ | 902 | 张老二 | 男 | 1986 | 中文系 | 北京市昌平区 | | 903 | 张三 | 女 | 1990 | 中文系 | 湖南省永州市 | | 904 | 李四 | 男 | 1990 | 英语系 | 辽宁省阜新市 | | 905 | 王五 | 女 | 1991 | 英语系 | 福建省厦门市 | | 906 | 王六 | 男 | 1988 | 计算机系 | 湖南省衡阳市 | +-----+--------+-----+-------+------------+--------------+ 5 rows in set (0.07 sec)4.2 不可更新的视图要使视图可更新,视图中的行和底层基本表中的行之间必须存在 一对一 的关系。另外当视图定义出现如下情况时,视图不支持更新操作:在定义视图的时候指定了“ALGORITHM = TEMPTABLE”,视图将不支持INSERT和DELETE操作;视图中不包含基表中所有被定义为非空又未指定默认值的列,视图将不支持INSERT操作;在定义视图的SELECT语句中使用了 JOIN联合查询 ,视图将不支持INSERT和DELETE操作;在定义视图的SELECT语句后的字段列表中使用了 数学表达式 或 子查询 ,视图将不支持INSERT,也不支持UPDATE使用了数学表达式、子查询的字段值;在定义视图的SELECT语句后的字段列表中使用 DISTINCT 、 聚合函数 、 GROUP BY 、 HAVING 、 UNION 等,视图将不支持INSERT、UPDATE、DELETE;在定义视图的SELECT语句中包含了子查询,而子查询中引用了FROM后面的表,视图将不支持 INSERT、UPDATE、DELETE;视图定义基于一个不可更新视图 ;常量视图。举例:更新前面的统计视图mysql> select * from v_student4; +------------+-----------+ | department | stu_count | +------------+-----------+ | 中文系 | 2 | | 英语系 | 2 | | 计算机系 | 1 | +------------+-----------+ 3 rows in set (0.07 sec) mysql> update v_student4 set department='test' ; 1288 - The target table v_student4 of the UPDATE is not updatable mysql> delete from v_student4; 1288 - The target table v_student4 of the DELETE is not updatable注意:虽然可以更新视图数据,但总的来说,视图作为虚拟表 ,主要用于方便查询 ,不建议更新视图的数据。对视图数据的更改,都是通过对实际数据表里数据的操作来完成的。5.修改视图方式1:使用CREATE OR REPLACE VIEW 子句修改视图CREATE OR REPLACE VIEW v_student_score AS SELECT t1.id,t1.name,t2.c_name,t2.grade FROM student t1 left join score t2 on t1.id = t2.stu_id方式2:ALTER VIEW修改视图的语法是:ALTER VIEW 视图名称 AS查询语句6.删除视图删除视图只是删除视图的定义,并不会删除基表的数据。删除视图的语法是:DROP VIEW IF EXISTS 视图名称; DROP VIEW IF EXISTS 视图名称1,视图名称2,视图名称3,...;举例:DROP VIEW v_student;说明:基于视图a、b创建了新的视图c,如果将视图a或者视图b删除,会导致视图c的查询失败。这样的视图c需要手动删除或修改,否则影响使用。7.视图的总结7.1 视图的优点● 简单性。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使用户不必为以后的操作每次都指定全部的条件。 ● 安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其他数据则既看不见也取不到。数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上。 ● 逻辑数据独立性。视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。7.2 视图的不足● 性能:SQL Server必须把视图的查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,即使是视图的一个简单查询,SQL Server也把它变成一个复杂的结合体,需要花费一定的时间。 ● 修改限制:当用户试图修改视图的某些行时,SQL Server必须把它转化为对基本表的某些行的修改。对于简单视图来说,这是很方便的,但是,对于比较复杂的视图,可能是不可修改的。 所以,在定义数据库对象时,不能不加选择地来定义视图,应该权衡视图的优点和缺点,合理地定义视图。如果我们在实际数据表的基础上创建了视图,那么,如果实际数据表的结构变更了,我们就需要及时对相关的视图进行相应的维护。特别是嵌套的视图(就是在视图的基础上创建视图),维护会变得比较复杂, 可读性不好 ,容易变成系统的潜在隐患。因为创建视图的 SQL 查询可能会对字段重命名,也可能包含复杂的逻辑,这些都会增加维护的成本。实际项目中,如果视图过多,会导致数据库维护成本的问题。所以,在创建视图的时候,你要结合实际项目需求,综合考虑视图的优点和不足,这样才能正确使用视图,使系统整体达到最优。
2023年11月30日
16 阅读
0 评论
0 点赞
2023-11-30
mysql:详解sql_mode,应该选择怎样的运行模式?
mysql:详解sql_mode,应该选择怎样的运行模式?关于mysql的sql模式几个问题mysql设置set global sql_mode与set session sql_modeq区别set global sql_mode 是用来设置MySQL服务器的 全局SQL模式 ,这会影响到 所有新的数据库会话(命令行中测试过,设置全局SQL模式 不会当前会话中生效,在新会话生效) 。而 set session sql_mode 是用来设置 当前数据库会话的SQL模式,只会影响当前会话,不会影响其他会话或全局设置 。mysql 的set sql_mode设置后需不需要flush privileges更新用户权限在MySQL中,set sql_mode语句用于设置SQL模式,它不会影响用户权限。因此,不需要使用flush privileges命令来更新用户权限。flush privileges命令用于重新加载授权表,当对授权表进行更改时需要使用该命令来使更改生效,但是与sql_mode设置无关。set global sql_mode='';之后当mysql服务器重启会失效吗这将会将全局的sql_mode参数设置为空。这个设置会一直有效,直到你重新设置sql_mode参数为其他值为止。即使在MySQL服务器重启后,这个设置也会保持有效。建议安装mysql实例后将它的运行模式设置为 “TRADITIONAL”的好处,或者说设置sql模式的好处严格的数据验证:TRADITIONAL模式强制MySQL执行更严格的数据验证,这有助于避免一些常见的错误和数据不一致性。这可以提高数据的完整性和可靠性。避免隐式数据转换:TRADITIONAL模式禁止隐式数据转换,这意味着在进行比较和计算时,MySQL不会自动转换数据类型,而是会抛出错误。这有助于避免一些潜在的错误和数据不一致性。更严格的SQL语义:TRADITIONAL模式强制MySQL更严格地遵循SQL标准,这可以帮助开发人员编写更加规范和可移植的SQL语句。更好的兼容性:TRADITIONAL模式使MySQL更加符合SQL标准,这意味着数据库应用程序更容易在不同的数据库系统之间迁移和运行。SET GLOBAL sql_mode = 'TRADITIONAL'; #等同set @@global.sql_mode= 'TRADITIONAL';将MySQL实例的运行模式设置为“TRADITIONAL”可以提高数据的完整性和可靠性,减少潜在的错误,并使数据库更加符合SQL标准,从而提高数据库的质量和可移植性。注意,在进行此更改之前,请确保了解当前的sql_mode设置,并了解更改可能对现有应用程序和查询产生的影响。
2023年11月30日
23 阅读
0 评论
0 点赞
2023-11-30
MySQL官网推荐书籍
MySQL官网推荐书籍高效的MySQL性能:Daniel Nichter的最佳实践和技术Daniel Nichter 向您展示了如何应用直接影响 MySQL 性能的最佳实践和技术。您将学习如何通过分析查询执行、为常见 SQL 子句和表联接编制索引、优化数据访问以及了解最重要的 MySQL 指标来提高性能。您还将了解复制、事务、行锁定和云如何影响 MySQL 性能。了解更多 »MySQL速成班作者:Rick Silva这本关于MySQL所有内容的完整指南将带领读者从创建表的绝对基础知识到管理整个数据库的复杂性。通过有趣的示例、练习和三个动手项目来学习构建高效的数据库,为天气、选民和工资数据创建数据库。本书引导读者了解MySQL的所有复杂性,没有技术术语。了解更多 »MySQL 并发作者:Jesper Wisborg Krogh了解锁在MySQL中的工作原理以及它们与事务的关系。本书解释了锁在数据库系统中发挥的主要作用,展示了锁在允许高并发工作负载方面的重要性。您将从用户级别了解锁访问级别和锁粒度,以及用于记录和间隙锁的表锁。最重要的是,本书涵盖了锁定成为痛点时的故障排除技术。了解更多 »MySQL 8 查询性能调优作者:Jesper Wisborg Krogh识别、分析和改进性能不佳的查询,这些查询会损害用户体验并导致业务收入损失。本书将通过一个多步骤过程,帮助您使查询优化成为日常工作中不可或缺的一部分,该过程包括监视执行时间、确定要优化的候选查询、分析其当前性能以及改进它们以更快的速度和更少的开销交付结果。了解更多 »介绍 InnoDB 集群作者:Charles Bell_InnoDB Cluster 简介_将向您介绍构成 InnoDB Cluster 的构建块,例如用于冗余存储数据的 MySQL Group Replication、用于路由入站连接的 MySQL Router 以及用于简化设置和配置、状态报告甚至自动故障转移的 MySQL Shell。了解更多 »MySQL 8 文档存储简介 作者:Charles Bell_MySQL 8 文档简介_解释了什么是文档存储以及如何开发应用程序以利用无模式文档的强大功能。MySQL 8 从一开始就旨在弥合 NoSQL 和 SQL 之间的差距。不要让自己被迫进入一种或另一种范式,而是使用 MySQL 文档存储将这两种方法结合起来。了解更多 »MySQL 和 JSON:David Stokes 的实用编程指南_MySQL 和 JSON:实用编程_指南是一本动手指南,逐步教授如何在 MySQL 中使用 JavaScript 对象表示法 (JSON)。它展示了如何快速开始将 JSON 与 MySQL 一起使用,并清楚地解释了最新的工具和功能。了解更多 »MySQL 连接器/Python 由 Jesper Wisborg Krogh 揭示_MySQL Connector/Python Reveal_ 将带您从连接器的初始安装到基本查询执行,然后介绍更高级的主题、错误处理和故障排除。本书涵盖了传统的 API 和新的 X DevAPI。了解更多 »MySQL Cluster 7.5 Inside and Out(MySQL集群<>.<>内部和外部) 作者:Mikael Ronstrom_MySQL Cluster 7.5 Inside and Out_涵盖了NDB的开发原因,初始要求以及使用它的应用程序。介绍内部算法以及它们如何与外部 API 和配置交互。包含有关如何配置 NDB 和 Linux 以获得最佳性能和可用性的详尽说明。了解更多 »Pro MySQL NDB Cluster作者:Wisborg Krogh, Mikiya OkunoPro MySQL NDB Cluster将引导您完成_MySQL Cluster_安装的整个生命周期:从安装和初始配置开始,通过在线配置和架构更改,以及完成在线升级。在此过程中,您将学习如何监视群集、做出有关架构设计的决策、实施地理复制、故障排除和优化性能等。了解更多 »SQL 反模式作者:Bill KarwinBill Karwin 已经帮助成千上万的人编写了更好的 SQL,并构建了更强大的关系数据库。现在,他正在分享他收集的反模式——这是他在数千个求助请求中发现的最常见的错误。本书的每一章都可以帮助您识别、解释和纠正独特而危险的反模式。本书的四个部分从逻辑数据库设计、物理数据库设计、查询和应用程序开发的角度对反模式进行了分组。了解更多 »MySQL 高可用性作者:Charles Bell、Mats Kindahl、Lars Thalmann服务器瓶颈和故障是任何数据库部署中常见的事实,但它们不必使一切停止。这本实用的书介绍了复制、集群和监控功能,这些功能可以帮助保护您的 MySQL 系统免受中断的影响,无论它是在硬件、虚拟机还是在云中运行。了解更多 »MySQL (开发者库)作者: Paul DuBois作者Paul DuBois描述了从将信息导入数据库和制定查询的基础知识,到使用MySQL和PHP或Perl生成动态网页,到编写自己的访问MySQL数据库的程序,再到管理MySQL服务器。本书还包括一个全面的参考部分,提供有关 MySQL 的结构、语言、语法和 API 的详细信息。了解更多 »高性能 MySQL作者:Baron Schwartz、Peter Zaitsev、Vadim Tkachenko如何发挥MySQL的全部功能?借助高性能 MySQL,您将学习从设计架构、索引和查询到调整 MySQL 服务器、操作系统和硬件以充分发挥其潜力的所有高级技术。本指南还介绍了通过复制、负载平衡、高可用性和故障转移来扩展应用程序的安全实用方法。了解更多 »深入分析有效的MySQL复制技术作者:罗纳德·布拉德福德(Ronald Bradford)有效的 MySQL:深入复制技术介绍了了解和实施 MySQL 复制以构建可扩展解决方案所需的内容。本书包括详细的语法示例,以演示本机 MySQL 复制的功能、选项和限制。本 Oracle Press 指南提供了对各种新复制功能和其他第三方产品实施的评估,有助于确保您的 MySQL 环境能够支持企业的各种高可用性需求。了解更多 »专家 PHP 和 MySQL作者:Andrew Curioso、Ronald Bradford、Patrick Galbraith该资源由三位 PHP 和 MySQL 专家和资深作者撰写,重点介绍可应用于最困难的 MySQL 驱动的 PHP 应用程序的最佳实践和专家技术。作者分享了他们自己测试过的设计模式和工具,以节省您通常花在通过反复试验解决问题上的宝贵时间。了解更多 »MySQL Cookbook作者:Paul DuBois随着MySQL的普及,关于解决特定问题的问题也随之而来,而这正是这本Cookbook的必不可少之处。当您需要快速解决方案或技术时,本书旨在提供方便的资源,它为没有时间(或专业知识)从头开始解决MySQL问题的各级程序员提供了数十个简短而集中的代码片段和数百个经过计算的示例。了解更多 »专家 MySQL作者:Charles BellExpert MySQL是第一本深入研究MySQL架构的书,向用户展示了如何通过创建自定义存储处理程序、优化MySQL的查询执行以及使用嵌入式服务器产品来充分利用数据库。本书将对在高流量环境和需要最少资源分配的情况下部署MySQL的用户感兴趣。了解更多 »MySQL 存储过程编程作者:Guy Harrison, Steven Feuerstein如果您真的想构建未来基于 Web 的数据库应用程序,则需要快速了解存储过程的工作原理以及如何以正确的方式构建它们。这本书注定要成为存储过程开发的圣经,是任何真正的MySQL程序员都离不开的资源。了解更多 »
2023年11月30日
44 阅读
0 评论
0 点赞
1
...
5
6
7
...
15