November 23, 2007
windows下mysql定时自动备份
"对于linux或unix下备份mysql可以说很简介的,但在windows下备份,好像只有用windows自带的计划任务了.\n============== 假想环境: MySQL 安装位置:C:MySQL 论坛数据库名称为:bbs MySQL root 密码:123456 数据库备份目的地:D:db_backup\n程序代码\n@echo off C:MySQLbinmysqladmin -u root –password=123456 shutdown C:MySQLbinmysqldump –opt -u root –password=123456 bbs \u0026gt; D:db_backupbbs.sql C:MySQLbinmysqld-nt 将以上代码保存为backup_db.bat 然后使用Windows的“计划任务”定时执行该脚本即可。(例如:每天凌晨5点执行back_db.bat)"
November 23, 2007
使用mysqldump定时备份数据库的脚本
"每7天备份一次所有数据,每天备份binlog,也就是增量备份.\n(如果数据少,每天备份一次完整数据即可,可能没必要做增量备份)\n作者对shell脚本不太熟悉,所以很多地方写的很笨 🙂\n开启 bin log\n在mysql 4.1版本中,默认只有错误日志,没有其他日志.可以通过修改配置打开bin log.方法很多,其中一个是在/etc/my.cnf中的mysqld部分加入:\n[mysqld] log-bin\n这个日志的主要作用是增量备份或者复制(可能还有其他用途).\n如果想增量备份,必须打开这个日志.\n对于数据库操作频繁的mysql,这个日志会变得很大,而且可能会有多个.\n在数据库中flush-logs,或者使用mysqladmin,mysqldump调用flush-logs后并且使用参数delete-master-logs,这些日志文件会消失,并产生新的日志文件(开始是空的).\n所以如果从来不备份,开启日志可能没有必要.\n完整备份的同时可以调用flush-logs,增量备份之前flush-logs,以便备份最新的数据.\n完整备份脚本\n如果数据库数据比较多,我们一般是几天或者一周备份一次数 …"
November 23, 2007
mysql表索引被破坏的问题及解决
"常见错误信息: Table xxx is marked as crashed and should be repaired\n用mysql的用户,经常会遇到这样的问题,检查mysql日志,错误信息为:\nTable ‘.dedecmsv4dede_archives’ is marked as crashed and should be repaired\n提示说cms的文章表dede_archives被标记有问题,需要修复。于是赶快恢复历史数据,上网查找原因。最终将问题解决。解决方法如下:\n找到mysql的安装目录的bin/myisamchk工具,在命令行中输入:\nmyisamchk -c -r ../data/dedecmsv4/dede_archives.MYI\n然后myisamchk 工具会帮助你恢复数据表的索引。重新启动mysql,问题解决。\n问题分析:\n1、错误产生原因,有网友说是频繁查询和更新dede_archives表造成的索引错误,因为我的页面没有静态生成,而是动态页面,因此比较同意这种说法。还有说法为是MYSQL数据库因为某种原因而受到了损坏,如:数据库服务器突发性的断电、 …"
November 22, 2007
MySql创建用户及授权
"GRANT 语句的语法如下: GRANT privileges (columns) ON what TO user IDENTIFIEDBY “password” WITH GRANT OPTION\n对用户授权\nmysql\u0026gt;grant rights on database.* to user@host identified by “pass“;例1:\n增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。\ngrant select,insert,update,delete on . to test1@”%” Identified by “abc”; ON 子句中*.* 说明符的意思是“所有数据库,所有的表”例2:\n增加一个用户test2密码为abc, 让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作。\ngrant select,insert,update,delete on mydb.* to test2@localhost identified by “abc”;\n例子3 增加一个 …"
November 21, 2007
PHP5中的时间相差八小时的解决办法
"法一:\nPHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相差8个小时\n找到php.ini中的“;date.timezone =”这行,将“;”去掉,改成“date.timezone = PRC”(PRC:People’s Republic of China 中华人民共和国),重启Apache,问题解决。\n法二:\n安装好php5后,在论坛不经意间,在论坛上看到有人说php5.1.2的时间显示整整少8个小时,\n\u0026lt;?php echo date(\u0026#34;Y-m-d H:i:s\u0026#34;); ?\u0026gt; 结果自己测试果然是相差8小时。\n后来经过在论坛上找资料,结果终于解决,在php5以及起以上的版本,要输出本地的时间(限中国),可以这么写\n\u0026lt;?php date_default_timezone_set(\u0026#39;Asia/Shanghai\u0026#39;); echo date(\u0026#39;Y-m-d H:i:s\u0026#39;); ?\u0026gt; 这样时间相差八小时的问题就解决了!!~~~"
November 20, 2007
Smarty中in_array函数的应用
"php脚本:\n$Action= array(“article”,”soft”,”news”); $smarty = new Smarty(); $smarty-\u0026gt;assign(“Action”,$Action); 模板:\n在数组内非数组内的值"
October 28, 2007
windows下两个很有用的dns刷新命令
"首先过往command提示符下:\n先运行:ipconfig/displaydns这个命令,查看一下本机已经缓存了那些的dns信息的,然后输入下面的命令\nipconfig/flushdns\n这时本机的dns缓存信息已经清空了,我们可以再次输入第一次输入的命令来看一下,\nipconfig/displaydns"
October 24, 2007
CSS技巧DIV为空时占据空间的解决办法
"如果给div元素设置了宽度时,比如width:100%,此时div在IE中(IE6,IE7)将占据物理空间,而在FF中不占据物理空间(正确理解)。为了表述直观,将样式直接写在元素标签内:\n此时在IE中到底是什么在影响着最终的显示,又是如何解析的呢?\n可能的影响因素:字体大小(font-size),字体行高(line-height),高度(height),溢出(overflow)\n我们对上面的代码逐一添加过滤属性(具体的过程有兴趣的朋友,可以私下里实验一下,“自己动手,丰衣足食”!)\n在测试的过程中,你会发现IE6和IE7的解析也不尽相同,比如在给div设置了line-height:0; height:0; 的样式后,IE7中显示正常了,不再占据物理空间了,而IE6却依然我行我素,亦或是悲!\n最终的测试结果,最简单的方法是,给div设置高度(height)和溢出(overflow)属性:"
October 19, 2007
用PHP的ob_start();控制您的浏览器cache
"Output Control 函数可以让你自由控制脚本中数据的输出。它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况。输出控制函数不对使用 header() 或 setcookie(), 发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用。\n我们先举一个简单的例子,让大家对Output Control有一个大致的印象: Example 1.\nob_start(); //打开缓冲区 echo “Hellon”; //输出 header(“location:index.php”); //把浏览器重定向到index.php ob_end_flush();//输出全部内容到浏览器 ?\u0026gt; 所有对header()函数有了解的人都知道,这个函数会发送一段文件头给浏览器,但是如果在使用这个函数之前已经有了任何输出(包括空输出,比如空格,回车和换行)就会提示出错。如果我们去掉第一行的ob_start(),再执行此程序,我们会发现得到了一条错误提示:”Header had all ready send by”!但是加上ob_start,就不会提 …"
October 13, 2007
PHP让页面马上过期
"header(\u0026#34;Expires: \u0026#34;.gmdate(\u0026#34;D, d M Y H:i:s\u0026#34;,time()-1).\u0026#34; GMT\u0026#34;); header(\u0026#34;Last-Modified: \u0026#34;.gmdate(\u0026#34;D, d M Y H:i:s\u0026#34;).\u0026#34; GMT\u0026#34;); header(\u0026#34;Cache-Control: no-cache, must-revalidate\u0026#34;); header(\u0026#34;Pragma: no-cache\u0026#34;); "