首页
友链
壁纸
直播
留言
归档
关于
推荐
百度一下
腾讯视频
Search
1
linux免费WEB管理面板:AMH
16,484 阅读
2
为主题添加前台删除文章及评论功能
5,071 阅读
3
欢迎使用Typecho
3,882 阅读
4
创建WordPress多站点网络
2,582 阅读
5
代码高亮 - SyntaxHighlighter 0.0.5
1,872 阅读
网络杂记
Wordpress
Typecho
VPS教程
主题模板
登录
Search
标签搜索
Typecho
WordPress
主题
Linux
VPS
LNMP
MySQL
管理面板
nginx
面板
升级
Apache
php函数
缓存
gravatar
404错误
评论
删除
命令
kloxo
CludeChn
累计撰写
119
篇文章
累计收到
13
条评论
首页
栏目
网络杂记
Wordpress
Typecho
VPS教程
主题模板
页面
友链
壁纸
直播
留言
归档
关于
推荐
百度一下
腾讯视频
搜索到
2
篇与
的结果
2015-04-10
MySQL数据库INNODB转换InnoDB方法
INNODB与InnoDB是mysql目前比较常用的两个数据库存储引擎,INNODB与InnoDB的主要的不同点在于性能和事务控制上。这里简单的介绍一下两者间的区别和转换方法:INNODB:INNODB是MySQL5.5之前版本默认的数据库存储引擎。INNODB提供高速存储和检索,以及全文搜索能力,适合数据仓库等查询频繁的应用。但不支持事务、也不支持外键。INNODB格式的一个重要缺陷就是不能在表损坏后恢复数据。InnoDB:InnoDB是MySQL5.5版本的默认数据库存储引擎,不过InnoDB已被Oracle收购,MySQL自行开发的新存储引擎Falcon将在MySQL6.0版本引进。InnoDB具有提交、回滚和崩溃恢复能力的事务安全。但是比起INNODB存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。尽管如此,但是InnoDB包括了对事务处理和外来键的支持,这两点都是INNODB引擎所没有的。INNODB适合:(1)做很多count 的计算;(2)插入不频繁,查询非常频繁;(3)没有事务。InnoDB适合:(1)可靠性要求比较高,或者要求事务;(2)表更新和查询都相当的频繁,并且表锁定的机会比较大的情况。(4)性能较好的服务器,比如单独的数据库服务器,像阿里云的关系型数据库RDS就推荐使用InnoDB引擎。MySQL一般提供多种存储引擎,可以通过执行以下指令查看:首先进入MySQL命令行模式查看MySQL提供什么存储引擎: mysql> show engines; 查看MySQL当前默认的存储引擎: mysql> show variables like '%storage_engine%'; 查询wpsql库 mysql> use wpsql; 列出当前库所有表名 mysql> show tables; 你要看wp_posts表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎): mysql> show create table wp_posts; 将wp_posts表修为InnoDB存储引擎(也可以此命令将InnoDB换为INNODB): mysql> ALTER TABLE wp_posts ENGINE=INNODB; 如果要更改整个数据库表的存储引擎,一般要一个表一个表的修改,比较繁琐,可以采用先把数据库导出,得到SQL,把INNODB全部替换为INNODB,再导入数据库的方式。 转换完毕后重启mysql service mysqld restart
2015年04月10日
262 阅读
0 评论
0 点赞
2015-04-07
Mysql数据库的binlog日志设置自动清理及手动删除
说明:当开启mysql数据库主从时,会产生大量如mysql-bin.00000* log的文件,这会大量耗费您的硬盘空间。 mysql-bin.000001mysql-bin.000002mysql-bin.000003mysql-bin.000004mysql-bin.000005… 有三种解决方法:1.关闭mysql主从,关闭binlog;2.开启mysql主从,设置expire_logs_days;3.手动清除binlog文件,> PURGE MASTER LOGS TO ‘MySQL-bin.010′;具体方法:1、关闭mysql主从,关闭binlog # vim /etc/my.cnf //注释掉log-bin,binlog_format # Replication Master Server (default) # binary logging is required for replication # log-bin=mysql-bin # binary logging format - mixed recommended # binlog_format=mixed 然后重启数据库 # vim /etc/my.cnf //修改expire_logs_days,x是自动删除的天数,一般将x设置为短点,如10 expire_logs_days = x //二进制日志自动删除的天数。默认值为0,表示“没有自动删除” 此方法需要重启mysql,附录有关于expire_logs_days的英文说明当然也可以不重启mysql,开启mysql主从,直接在mysql里设置expire_logs_days > show binary logs; > show variables like '%log%'; > set global expire_logs_days = 10; 3、手动清除binlog文件 # /usr/local/mysql/bin/mysql -u root -p > PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 10 DAY); //删除10天前的MySQL binlog日志,附录2有关于PURGE MASTER LOGS手动删除用法及示例 > show master logs; 也可以重置master,删除所有binlog文件: # /usr/local/mysql/bin/mysql -u root -p > reset master; //附录3有清除binlog时,对从mysql的影响说明 附录: 1.expire_logs_days英文说明Where X is the number of days you’d like to keep them around. I would recommend 10, but this depends on how busy your MySQL server is and how fast these log files grow. Just make sure it is longer than the slowest slave takes to replicate the data from your master.Just a side note: You know that you should do this anyway, but make sure you back up your mysql database. The binary log can be used to recover the database in certain situations; so having a backup ensures that if your database server does crash, you will be able to recover the data.2.PURGE MASTER LOGS手动删除用法及示例,MASTER和BINARY是同义词删除指定的日志或日期之前的日志索引中的所有二进制日志。这些日志也会从记录在日志索引文件中的清单中被删除MySQL BIN-LOG 日志,这样被给定的日志成为第一个。实例: > PURGE MASTER LOGS TO 'MySQL-bin.010'; //清除MySQL-bin.010日志 > PURGE MASTER LOGS BEFORE '2008-06-22 13:00:00'; //清除2008-06-22 13:00:00前binlog日志 > PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY); //清除3天前binlog日志BEFORE,变量的date自变量可以为'YYYY-MM-DD hh:mm:ss'格式。3、清除binlog时,对从mysql的影响如果您有一个活性的从属服务器,该服务器当前正在读取您正在试图删除的日志之一,则本语句不会起作用,而是会失败,并伴随一个错误。不过,如果从属服务器是休止的,并且您碰巧清理了其想要读取的日志之一,则从属服务器启动后不能复制。当从属服务器正在复制时,本语句可以安全运行。您不需要停止它们。
2015年04月07日
291 阅读
0 评论
0 点赞