通达OA系统myisam转innodb引擎
OA系统切换到linux环境后,性能提升了2-3倍左右,随着公司的发展壮大,办公人员也会越来越多,当人数达到一定数量级别时如1500在线人数已无法支撑公司业务,就需要对系统进行性能提升优化。
当前OA系统采用myisam数据库引擎,该数据库引擎的特点是查询量是主要业务时响应速度很快,myisam是表锁不支持外键。innodb引擎是行锁,并发处理能力更强,针对大量用户同时新建工作流的业务场景,innodb数据库引擎更加合适。
还有一点需要注意的是myisam可以直接通过拷贝整个数据库目录文件的方式迁移或者备份,innodb引擎备份更麻烦一些需要通过导出sql语句的方式备份。
现阶段的mysql报告 96.22%都是查询业务,用myisam性能更佳
具体实施步骤
1.备份数据库(将整个TD_OA数据库备份)
cd /opt/lampp/var/mysql
mkdir TD_OABAK
cp TD_OA/*.* TD_OABAK
2.修改my.cnf文件
innodb_data_file_path=ibdata1:256M:autoextend
innodb_buffer_pool_size = 10G (内存的1/3大小)
innodb_log_buffer_size = 8M
key_buffer_size = 2G
innodb_log_file_size = 256M
innodb_log_files_in_group = 8
2.生成修改引擎为innodb的sql语句
运行修改表的脚本拼凑ALTER TABLE wp_posts ENGINE=INNODB;
<?php
header('content-type:text/html;charset=utf-8');
//将数据库由myisam转化为innodb引擎
//连接数据库
$conn=mysql_connect('localhost:3336','root','myoa888');
if(!$conn) {
print_r(mysql_error());
}
//选库
$sql='use td_oa';
mysql_query($sql) or die('select database error');
//设置字符集
$sql='set names utf8';
mysql_query($sql);
$sql = 'show tables';
$res = mysql_query($sql);
while($row = mysql_fetch_row($res)){
$sql = "alter table `".$row[0]."` ENGINE=INNODB;";
echo $sql,'<br />';
}
?>
3.重启数据库服务
通达OA系统myisam转innodb引擎的更多相关文章
- 重新学习MySQL数据库7:详解MyIsam与InnoDB引擎的锁实现
重新学习Mysql数据库7:详解MyIsam与InnoDB引擎的锁实现 说到锁机制之前,先来看看Mysql的存储引擎,毕竟不同的引擎的锁机制也随着不同. 三类常见引擎: MyIsam :不支持事务,不 ...
- mysql优化-------Myisam与innodb引擎,索引文件的区别
Myisam与innodb引擎,索引文件的区别: innodb的次索引指向对主键的引用. myisam的次索引和主索引都指向物理行. myisam一行一行的插入,会产生一行一行的文件,磁盘上有数据文件 ...
- MySQL中MyISAM和InnoDB引擎的区别
区别: 1. InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事 ...
- MYiSAM和InnoDB引擎区别(mysql)
MyISAM 1.读取速度快. 2.※更新时锁整个表. 3.占用资源少. 4.适合读多写少的业务. 5.※不支持事务. InnoDB 1.读取速度一般. 2.※更新时锁当前行. 3.占用资源高. ...
- MyISAM和InnoDB引擎的区别
MySQL默认采用的是MyISAM. MyISAM不支持事务,而InnoDB支持.InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以 ...
- MySQL学习笔记之二---引擎介绍MyISAM VS InnoDB
前言 MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)所改良.虽然性能极佳,但却有一 ...
- OA系统高性能解决方案(史上最全的通达OA系统优化方案)
序: 这是一篇针对通达OA系统的整体优化方案,文档将硬件.网络.linux操作系统.程序本身(包括web和数据库)以及现有业务有效结合在一起,进行了系统的整合优化.该方案应用于真实生产环境,部署完成后 ...
- mysql innodb 引擎
innodb 引擎 一.概述 InnoDB 是一个用的比较广泛的存储引擎,因为它支持事物和外键,还有不错的效率;我们先看看官方教程怎么说; 我们先读一下, 对于上面的文档, 对一个InnoDB的表首先 ...
- OA系统如何使用考勤机数据
通达OA系统使用考勤机数据目前有两种方法可以实现:一种是通过进行二次开发,将通达OA系统与考勤机结合起来使用:另一种是通过将考勤机的数据导出再导入OA系统中.进行二次开发的话,需要和定制开发工程师联系 ...
随机推荐
- Android学习系列(17)--App列表之圆角ListView(续)
http://www.cnblogs.com/qianxudetianxia/archive/2011/09/19/2068760.html 本来这篇文章想并到上篇Android学习系列(16)- ...
- Raspbian首次安装后无法使用SSH链接
使用Putty连接树莓派,出现Network Error:Connection Refused 新版的Raspbian系统默认禁用了SSH. 解决方法:在/boot分区创建名为"ssh&qu ...
- MATLAB运行edge函数闪退
出现这种问题时,先检查代码有没有问题,换一张图片是不是也有闪退情况. 如果以上都检查过没问题,还是有闪退现象,那就检查MATLAB的版本是不是太低了,比如r2010a版本运行edge函数时,就经常出现 ...
- advancedsearch.php织梦高级自定义模型字段无法调用解决方案
advancedsearch.php织梦dedecms 高级自定义模型字段无法调用解决方案 ,具体步骤如下: 1 打开修改puls/advancedsearch.php文件,找到复制代码(不同版本可 ...
- call_user_func 和 call_user_func_array用法
说明 call_user_func 和 call_user_func_array 相同:都可以调用函数和类内部的函数,不同:不同的是传递的参数不同,前者是一个参数一个参数传递, 后者是传递array参 ...
- C# 同步工作站与SQL服务器的时间
/// <summary> /// 设置本机时间 /// </summary> public class LocalTimeSync { [DllImport("Ke ...
- java代码示例(6-2)
创建Customer.java /*** * 需求分析:创建客户类 * @author chenyanlong * 日期:2017/10/15 */ package com.hp.test06; pu ...
- JQuery实现轮播图及其原理
源码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" name="vi ...
- Vusial Studio连接不到源代码管理器Vss
我的VS突然链接不到我的源代码管理器了,重新注册一下就好了,regsvr32是注册命令,后面的填你自己的源代码路径 regsvr32 "E:\vss\ssscc.dll" regs ...
- EasyUI的onLoadSuccess方法
EasyUI加载表单的时候,对表单内行数据进行判断,可以赋颜色,也可以进行其他操作 onLoadSuccess:function(data) { for(var i=0;i<data.rows. ...