¶à·þÎñÆ÷¹²Ïísession(mysql)
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker: */
//===========================================
// ³ÌÐò£º mysql-Based Session Class
// ¹¦ÄÜ£º »ùÓÚmysql´æ´¢µÄ Session ¹¦ÄÜÀà
// ×÷Õß: yejr
// ÍøÕ¾: http://imysql.cn
// ʱ¼ä: 2007-01-05
//===========================================
/**
* ˈ̞: MySQL Session Class
* ¹¦ÄÜ: ×ÔÖ÷ʵÏÖ»ùÓÚMySQL HEAP±í´æ´¢µÄ Session ¹¦ÄÜ
* ÃèÊö: Õâ¸öÀà¾ÍÊÇʵÏÖSessionµÄ¹¦ÄÜ£¬»ù±¾ÉÏÊÇͨ¹ýÉèÖÿͻ§¶ËµÄCookieÀ´±£´æSessionID£¬
* È»ºó°ÑÓû§µÄÊý¾Ý±£´æÔÚ·þÎñÆ÷¶Ë£¬×îºóͨ¹ýCookieÖеÄSession IdÀ´È·¶¨Ò»¸öÊý¾ÝÊÇ·ñÊÇÓû§µÄ£¬
* È»ºó½øÐÐÏàÓ¦µÄÊý¾Ý²Ù×÷
*
* ×¢Òâ: ±¾Ààµ÷ÓÃÁËPEAR::DBÀà,Èç¹ûÓÐ×Ô¼ºµÄDBÀà,Ôò¿ÉÒÔÉÔ΢ÐÞ¸ÄһϴúÂë
*
* ±¸×¢£ºÊý¾Ý±í³õʼ»¯SQLÓï¾ä:
* CREATE TABLE `sessions` (
* `sid` varchar(32) NOT NULL default '',
* `session` longtext,
* `flush_dt` int unsigned NOT NULL default '0',
* PRIMARY KEY (`sid`),
* KEY `last` (`flush_dt`)
* ) ENGINE=HEAP;
*/
//É趨 SESSION ÓÐЧʱ¼ä£¬µ¥Î»ÊÇ Ãë
define('SESS_LIFTTIME', 3600);
define('DB_DSN', 'mysql://root:@localhost/test');
define('DB_NAME','test');
require_once('DB.php');
$gDb = new DB;
$gDb = DB::connect(DB_DSN, TRUE);
if (PEAR::isError($gDb))
{
die($gDb->getMessage());
}
if (!defined('MySQLSession'))
{
define('MySQLSession', TRUE);
class Usess
{
static $mSessSavePath;
static $mSessName;
static $mSessMaxTime;
static $mTblSess = 'sessions';
static $mTblSessMap;
static $mDb;
// {{{ ³õʼ»¯¹¹Ô캯Êý
/**
* ¹¹Ô캯Êý
*
* @param string $login_user µÇ¼Óû§
* @param int $login_type Óû§ÀàÐÍ
* @param string $login_sess µÇ¼SessionÖµ
* @return Esession
Ïà¹ØÎĵµ£º
1.SET GLOBAL event_scheduler = ON;
2.show processlist;
3.´´½¨Ò»¸ö±í test Ö÷Òª×Ö¶Î no,name,sex,age
4.¶Ô¸Ã±í²åÈ缸ÌõÊý¾Ý
5.´´½¨´æ´¢¹ý³Ìadd_age
drop procedure if exists add_age;
delimiter|
create procedure add_age()
begin
start transaction;
update eventtest set age = age +1;
&n ......
mysql ´´½¨±í£º
mysql> create table user(
-> userid int(4) primary key not null auto_increment,
-> username varchar(16) not null,
-> userpassword varchar(32) not null
-> );
create table log(
logid int(4) ......
Ð¶ÔØmysql
1¡¢²éÕÒÒÔǰÊÇ·ñ×°ÓÐmysql
ÃüÁrpm -qa|grep -i mysql
¿ÉÒÔ¿´µ½mysqlµÄÁ½¸ö°ü£º
mysql-4.1.12-3.RHEL4.1
mysqlclient10-3.23.58-4.RHEL4.1
2¡¢É¾³ýmysql
ɾ³ýÃüÁrpm -e --nodeps °üÃû
( rpm -ev mysql-4.1.12-3.RHEL4.1 )
3¡¢É¾³ýÀϰ汾mysqlµÄ¿ª·¢Í·ÎļþºÍ¿â
ÃüÁrm -fr /usr/lib/mysql
r ......
//Ö÷¼ü
alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);
//Ôö¼ÓÒ»¸öÐÂÁÐ
alter table t2 add d timestamp;
alter table infos add ex tinyint not null default '0';
//ɾ³ýÁÐ
alter table t2 drop column c;
//ÖØÃüÃûÁÐ
......
·Ç³£³£Óõģº¾µäµÄMYSQLÓï¾ä…… php¿ªÔ´
ÕâÕæÊÇÒ»¸öºÃ¶«Î÷£ºÑ§Ï°ºÃÁ˺ÜÊÜÓõÄŶ……
SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(Create£¬Alter£¬Drop£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(Select£¬Delete£¬Update£¬Insert)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)php¿ªÔ´
Ê×ÏÈ,¼òÒ ......