Articles of 数据库

MySQL复制:再次让主设备与从设备同步

我有两台电脑在同一个networking上,在主从复制设置。 简单地testing故障转移,我直接插入一些数据到从数据库。 所以现在从属数据库包含比主数据库更多的信息。 现在我想让主机再次与从机同步,以回到真正的主从设置。 我该怎么做?

扩展我的Web应用程序以适应大量用户的最佳策略是什么?

我想获得一些关于如何开发扩展我的Web应用程序的策略的build议/最佳实践。 我在这里华而不实,performance出我有限的知识,但想填补我的知识空白。 尽可能多地学习这些东西是很有吸引力的,但是要意识到我需要寻求一些外部的帮助,所以作为一个普遍的问题,知道外包最简单的东西是很好的。 我的背景 – 我是一名开发人员,主要从事开发用户界面,并一直致力于Flash和PHP开发应用程序的function,使用户上传图像和video以在线共享。 系统架构如下 – 一个单一的networking服务器,也充当数据库服务器(MySQL)。 这台服务器是一个托pipe托pipe包与信任和可靠的托pipe公司。 Web服务器提供PHP页面和Flash SWF,它们是主要的UI组件 Amazon S3存储桶用于存储用户的图像,video和audio文件。 用户界面组件可以是PHP页面,也可以是Flash SWF,例如通过Flash swfs查看图像和video,通过AMFPHP服务查询数据库以加载图像和video文件的URL。 然后从Amazon S3存储桶中接收这些数据。 另一个FLash SWF将上传和POSTS文件处理为在Amazon Cloud上的EC2实例上运行的PHP脚本。 上传服务器用于pipe理图像,video和audio上传。 这是在Elastic Load Balancer后面运行的Amazon EC2实例,当它看到CPU容量达到80%时,会添加更多的实例。 我们还使用在Amazon EC2上运行的第三方服务来转码video文件。 所以对于大部分我认为事情设置好可以扩大。 但是我并没有经验,如何扩大或pipe理高stream量的Web应用程序,所以将依靠我们的Web服务器托pipe公司来pipe理Web /应用服务器和数据库服务器的可扩展configuration的设置。 硬件/体系结构缩放 – 据我了解,这里的第一步是将Web服务器和数据库分开,并让数据库服务器自己运行,将Web服务器放在负载平衡器的后面,最后为数据库服务器configuration主/从configuration。 我应该问什么我的虚拟主机公司做? 什么是这样做的问题和什么是对我的AMFPHP服务,不同types的查询 – 写入和读取? 我有一个单独的脚本,其中包含数据库连接的详细信息,它包含在globals.php脚本中,因此我可以轻松地在一个步骤中更新连接详细信息。 我是正确的,在主/从configuration所有写入通常去主服务器和读取从奴隶? 这是否意味着我需要查看所有数据库查询,并确保它的“UPDATE”或“DELETE”查询发送到主数据库服务器? 在我的PHP代码中,数据库查询遍布在脚本中,并根据需要从函数内部调用。 我已经读了一些关于数据库抽象的知识,但并不完全理解这种方法的重要性。 缩放代码优化 – 我需要考虑如何改变代码以使其更具可伸缩性? PHP中有什么常见的东西受到缩放的影响? 安全 – 在考虑大量处理时,我需要注意哪些与安全有关的常见事项。 数据库优化,备份和恢复程序 – 为大型数据库的MySQL数据库实现自动数据库备份和恢复策略的最佳方式是什么? 我应该考虑拆分我的数据库 […]

Oracle企业版和Oracle标准版有什么不同之处?

有人向我断言,一个数据库比另一个(50-100%)performance更好的原因是因为一个是企业版,另一个是标准版。 给定相同的硬件,操作系统,版本和数据 – 只能使用标准版中提供的function。 将数据库移动到Oracle Enterprise时是否会增加性能? 企业是精简还是标准跛脚? 有没有Oracle文档来说明这个问题的真相?

连接池应该运行在我的数据库服务器还是我的应用程序服务器上?

我正在准备开始使用PGBouncer,但是我不确定是否应该在我的数据库服务器或应用程序服务器上使用它。 如果它在应用程序服务器上,则必须有多个连接池,而应用程序服务器要共享一个中央连接池,但是必须重新为每个新查询重新创buildTCP连接,而不是同时进行池化(据推测)。 哪一种是使用像PGBouncer这样的连接外观的“正确”方式,而且我对每个连接的观点甚至有效? 注意: 对于那些绊倒这个问题,请参阅PgBouncer常见问题 (最后一个问题)。

1286 – 未知存储引擎“InnoDB”

我正在尝试使用roundcube,最近刚爆发。 我不知道这是否是由于最近发生的MySQL更新,但在phpMyAdmin中,如果我尝试查看表格,则会出现以下错误: 1286 – Unknown storage engine 'InnoDB' 和 mysql> SHOW ENGINES; +——————–+———+—————————————————————-+————–+——+————+ | Engine | Support | Comment | Transactions | XA | Savepoints | +——————–+———+—————————————————————-+————–+——+————+ | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO | | CSV | YES | CSV storage engine | NO | […]

关于MSSQL服务器的高可用性

已经在MySQL中使用:主服务器和辅助服务器之间的实时复制(同步)使用主从命令完成。 那么MsSQL的等效function是什么? 哪种复制方法应该用于实时同步? 它是标准版支持还是我需要购买MsSQL企业版?

我应该closuresAWS EC2上的交换吗?

我在同一个AWS EC2实例上运行Web服务器和数据库服务器。 我知道交换Web服务器是一个坏主意,所以我应该closures它? 会影响数据库服务(我猜不是,但我不知道这一点)。 如果是的话,我怎么把它关掉? 我正在运行Amazon Linux AMI。 谢谢 ;-)。

删除数据库信息

我们的生产数据库位于生产服务器上。 数据库被删除了一些如何,但我不知道如何被删除。 我怎样才能确定谁删除了数据库,什么是PC的IP地址,在什么时候被删除等等? 我们使用的数据库是MS SQL Server 2005。 让我知道如果从我的最后需要更多的信息。

将mysql表拆分成小的没有物理分配的优点是什么?

我在公司看过这样的devise。 一个大的mysql表在相同的数据库中的同一个服务器上被拆分成几十个相同的模式,没有任何物理分布,没有innodb_file_per_table ,没有分区等。数据均匀分布,读/写访问模式是统一的横跨所有桌子。 性能方面有什么优势?

如何提高在Debian Jessie上运行的守护进程的最大文件描述符?

我正在玩pgBouncer作为PostgreSQL的连接池系统。 我的系统是一个12核心,运行Debian 8.1的64GB RAM和1Gbpsnetworking接口。 现在我想提高开放套接字连接的限制,比如10.000个并发客户端。 在进行数据库基准testing时, pgbench实用程序会阻止大约950个并发客户端,这似乎达到了1024个开放式的极限,就像以前那样。 我检查了fs.file-max内核参数和pgbench运行用户的资源限制: # sysctl fs.file-max fs.file-max = 6598264 # su – postgres $ ulimit -Sn 65536 $ fgrep files /proc/self/limits Max open files 65536 65536 files $ 但是, proc的限制表明,对于pgBouncer (以用户postgres运行)的最大打开文件的软限制最多只有1024个打开的文件: $ ps -e | fgrep pgbouncer 9840 ? 00:00:00 pgbouncer $ fgrep files /proc/9840/limits Limit Soft Limit Hard Limit […]