mysql 数据备份类代码
/***
* 说明,该类适用于小型的网站的数据库教程备份,内置mysql连接,只需要简单配置数据连接
* 及存贮备份的位置即可。
* 类中show_dir_file() 方法可直接返回备份目录下的所有文件,返回以数组形式
* 方法 expord_sql() 直接生成sql文件
* 该类制作简单,可任意传播,如何您对该类有什么提议,请发送邮件给小虾
* 制作人:游天小虾
* emial:328742379@qq.com
* **/
class data {
public $data_dir = "class/"; //备份文件存放的路径
public $data_name = "111cnnet.sql"; //备份文件名
private $mysql_host = "localhost"; //数据库地址
private $mysql_user = "root"; //用户名
private $mysql_pwd = "lpl19881129"; //密码
private $mysql_db = "date"; //数据库名
private $mysql_code = "gbk"; //编码方式
/***
* 1.连接数据库
* **/
function __construct(){
$conn = mysql_connect($this->mysql_host,$this->mysql_user,$this->mysql_pwd);
mysql_select_db($this->mysql_db);
mysql_query("set names $this->mysql_code");
}
/***
* 2.生成sql语句
* **/
private function set_sql($table){
$tabledump = "drop table if exists $table; ";
$createtable = mysql_query("show create table $table");
$create = mysql_fetch_row($createtable);
$tabledump .= $create[1]."; ";
$rows = mysql_query("select * from $table");
$numfields = mysql_num_fields($rows);
$numrows = mysql_num_rows($rows);
while ($row = mysql_fetch_row($rows)){
$comma = "";
$tabledump .= "insert into $table values(";
for($i = 0; $i < $numfields; $i++)
{
$tabledump .= $comma."'".mysql_escape_string($row[$i])."'";
$comma = ",";
}
$tabledump .= "); ";
}
$tabledump .= " ";
return $tabledump;
}
/***
* 3.显示存放目录下已经备份的文件
* **/
public function show_dir_file() {
$dir = $this->data_dir;
if(!is_dir($dir)){
if(!mkdir($dir)){
echo "文件夹不存在,尝试创建文件夹,创建失败,可能是您没有相关权限";
exit();
}else{
chmod($dir,755);
}
}
if(!is_writable($dir)){
echo " 文件不可写";
exit();
}
$link = opendir($dir);
if(!$link){
echo "创建链接失败";
exit();
}
return scandir($dir);
}
/***
* 4.生成sql文件
* **/
public function expord_sql(){
$this->show_dir_file();
$result = mysql_list_tables($this->mysql_db);
while($arr = mysql_fetch_row($result)){
$tables .= $this->set_sql($arr[0]);
}
$file = $this->data_dir.$this->data_name;
$link = fopen($file,"w+");
if(!is_writable($file)){
echo "文件不可写";
exit();
}
fwrite($link,$tables);
fclose($link);
echo "备份成功";
}
}
//mssql
代码如下 | 复制代码 |
$server='hbds3'; $username='username'; $password='pwd'; $database='database'; $conn=mssql_connect($server,$username,$password) or die("couldn't connect to sql server on $server"); $db=mssql_select_db($database) or die("couldn't open database $database"); |
//oracle
代码如下 | 复制代码 |
$conn = oci_connect("databasename","passwd","sid"); if (!$conn) { $e = oci_error(); trigger_error(htmlentities($e['message'], ent_quotes), e_user_error); } |
//mysql
代码如下 | 复制代码 |
$conn=mysql_connect("localhost","root","admin") or die("数据库服务器连接错误".mysql_error()); mysql_select_db("admin",$conn) or die("数据库访问错误".mysql_error()); mysql_query("set names gb2312"); |
/**
* 说明,该类适用于小型的网站的数据库备份,内置mysql连接,只需要简单配置数据连接
* 及存贮备份的位置即可。
* 类实列化并且连接数据库以后可执行以下操作
* get_db_table($database) 取得所有数据表
* export_sql($table,$subsection=0)) 生成sql文件,注意生成sql文件只保存到服务器目录,不提供下载
* import_sql($dir) 恢复数据只导入服务器目录下的sql文件
* 该类制作简单,可任意传播,如何您对该类有什么提议,请发送邮件给小虾
* @author 赵红健[游天小虾]
* email:328742379@qq.com
* qq交流群:69574955 聚义堂-网页制作交
*/
代码如下 | 复制代码 |
class data { /** /** $tabledom .= $create[1]."; "; $rows = mysql_query("select * from $table"); /** /** /** } |
应用方法
代码如下 | 复制代码 |
//$d = new data(); //连接数据库 //查找数据库内所有数据表 //备份并生成sql文件 //恢复导入sql文件夹 |
windows下的memcache安装:
1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:memcached
2. 在终端(也即cmd命令界面)下输入 ‘c:memcachedmemcached.exe -d install
’ 安装
3. 再输入: ‘c:memcachedmemcached.exe -d start’ 启动。note: 以后
memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完
毕了。
4.下载http://cmy2009.ihost.tw/download,(php_memcache地址)请自己查找对应的
php版本的文件
5. 在c:winntphp.ini 加入一行 ‘extension=php_memcache.dll’
6.重新启动apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!
memcached的基本设置:
-p 监听的端口
-l 连接的ip地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位mb。默认64mb
-m 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
memcache环境测试:
运行下面的php文件,如果有输出,就表示环境搭建成功。开始领略memcache的魅力把
!
代码如下 | 复制代码 |
<?php $memcache = memcache_connect('localhost', 11211); if ($memcache) { $object = new stdclass; $array = array('assoc'=>123, 345, 567); var_dump($memcache->get('str_key')); |
为什么不使用数据库做这些?
暂且不考虑使用什么样的数据库(ms-sql, oracle, postgres, mysql教程-innodb, etc..), 实现事务(acid,atomicity, consistency, isolation, and durability )需要大量开销,特别当使用到硬盘的时候,这就意味着查询可能会阻塞。当使用不包含事务的数据库(例如mysql-myisam ),上面的开销不存在,但读线程又可能会被写线程阻塞。
memcached从不阻塞,速度非常快。
本程序包括三个文件
reg.html 用户注册html页面
reg.php php处理代码
conn.php 数据库教程连接文件
reg.html代码
代码如下 | 复制代码 |
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> function checkname(){ |
reg.php文件
代码如下 | 复制代码 |
include("conn.php"); if(strlen($name)>0){ |
conn.php数据库文件
代码如下 | 复制代码 |
<?php /* created on 下午12:08:25*/ $conn=@mysql_connect("localhost","root","")or die("111cn.net提示你:连接失败!"); mysql_select_db("reg",$conn); mysql_query("set names 'gbk'"); ?> |
registration数据表结构
-- phpmyadmin sql dump
-- version 2.11.2.1
-- http://www.phpmyadmin.net
--
-- 主机: localhost
-- 生成日期: 2009 年 05 月 20 日 05:29
-- 服务器版本: 5.0.45
-- php 版本: 5.2.5
set sql_mode="no_auto_value_on_zero";
--
-- 数据库: `reg`
--
-- --------------------------------------------------------
--
-- 表的结构 `registration` phpmyadmin导入数据
--
代码如下 | 复制代码 |
create table `registration` ( -- |
-- 导出表中的数据 `registration`
--
代码如下 | 复制代码 |
insert into `registration` (`id`, `username`, `userpwd`) values |
相关文章
- 有一种方法,可以不打开网站而直接查看到这个网站的源代码.. 这样可以有效地防止误入恶意网站... 在浏览器地址栏输入: view-source:http://...2016-09-20
- <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
- 本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
- 本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
- 本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
- php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
- php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p> </p> <p> </p> <form name="form1...2016-11-25
- 公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
- 本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
- 其实挺简单的就是if(navigator.userAgent.indexOf('UCBrowser') > -1) {alert("uc浏览器");}else{//不是uc浏览器执行的操作}如果想测试某个浏览器的特征可以通过如下方法获取JS获取浏览器信息 浏览器代码名称:navigator...2015-11-08
- 一、日期减去天数等于第二个日期function cc(dd,dadd){//可以加上错误处理var a = new Date(dd)a = a.valueOf()a = a - dadd * 24 * 60 * 60 * 1000a = new Date(a)alert(a.getFullYear() + "年" + (a.getMonth() +...2015-11-08
- 微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到...2014-05-31
- 深入解析Linux下MySQL数据库的备份与还原...2013-09-11
- 本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24
- 小编分享了一段简单的php中文转拼音的实现代码,代码简单易懂,适合初学php的同学参考学习。 代码如下 复制代码 <?phpfunction Pinyin($_String...2017-07-06
php导出csv格式数据并将数字转换成文本的思路以及代码分享
php导出csv格式数据实现:先定义一个字符串 存储内容,例如 $exportdata = '规则111,规则222,审222,规222,服2222,规则1,规则2,规则3,匹配字符,设置时间,有效期'."/n";然后对需要保存csv的数组进行foreach循环,例如复制代...2014-06-07- ecshop商品无限级分类代码 function cat_options($spec_cat_id, $arr) { static $cat_options = array(); if (isset($cat_options[$spec_cat_id]))...2016-11-25
- 本文介绍了如何延迟javascript代码的加载,加快网页的访问速度。 当一个网站有很多js代码要加载,js代码放置的位置在一定程度上将会影像网页的加载速度,为了让我们的网页加载速度更快,本文总结了一下几个注意点...2013-10-13
- MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:/Program Files/MySQL/MySQL Server 4.1/bin (或者直接将windows的环境变量path中添加该目录) ...2013-09-26
- 这篇文章主要介绍了vue项目,代码提交至码云,iconfont的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-30