随笔分类 -  mysql

摘要:一,什么是foreign key,及其完整性个人觉得,foreign key就是表与表之间的某种约定的关系,由于这种关系的存在,我们能够让表与表之间的数据,更加的完整,关连性更强。关于完整性,关连性我举个例子,大家就会明白了。有二张表,一张是用户表,一张是订单表:1,如果我删除了用户表里的用户,那么订单表里面根这个用户有关的数据,就成了无头数据了,不完整了。2,如果我在订单表里面,随便插入了一条数据,这个订单在用户表里面,没有与之对应的用户。这样数据也不完整了。如果有外键的话,就方便多了,可以不让用户删除数据,或者删除用户的话,通过外键同样删除订单表里面的数据,这样也能让数据完整。二,使用fo 阅读全文
posted @ 2012-11-25 12:44 风去无痕 编辑
摘要:alter table text engine=innodb;表引擎转移 //可能会花费大量时间,而且在转换期间i/o很高set @input := 'hello'; select benchmark(1000000,md(@input)); 循环10万次,用于测试数据库的执行效率mysql中日志: 普通日志 log = <file_name> 慢速日志 log-slow-queries = <file_name> long_query_time =2 //defalut 10 log-queries-not-using-indexed log-... 阅读全文
posted @ 2012-10-04 17:39 风去无痕 阅读(353) 评论(0) 推荐(0) 编辑
摘要:show table status from table主要看这一项Data_free:20 20假如是删除一条数据产生的留空空间,你如果一次性删除5W条数据吧,这样会产生100W的字节的存储空间,假如现在你剩一条记录了,有用的内容将只占二十字节,但MySQL在读取中会仍然将其视同于一个容量为100W字节的列表进行处理,并且除二十字节以外,其它空间都被白白浪费了。定期优化表是一件很重要的事情 阅读全文
posted @ 2012-09-26 19:39 风去无痕 阅读(152) 评论(0) 推荐(0) 编辑
摘要:1. 准备master,slave2台服务器2.修改主服务器my.cnf log-bin=/opt/mysql/logs/mysql-bin server-id = 146 //唯一 ,是ip地址后几位3.修改从服务器my.cnf log-bin=/opt/mysql/logs/mysql-bin server-id = 117 replicate-do-db= test //只复制test数据库4.重启mysql /opt/mysql/bin/mysql restart5.在主服务器上建立帐户并授权slave: grant replication slave on *... 阅读全文
posted @ 2012-09-25 14:59 风去无痕 编辑
摘要:\d //create trigger tg1 before insert on t1 for each row begininsert into t2 (id) values (old.id);end //\d ;create trigger2 tg2 before delete on t1 for each rowbegindelete from t2 where id= old.id;endauto_increment :alter table tablename set auto_increment=1;mysql的事务处理(只对innodb有用)set autocommit=0... 阅读全文
posted @ 2012-08-14 22:15 风去无痕 阅读(103) 评论(0) 推荐(0) 编辑
摘要:一, 创建用户: 命令:CREATE USER'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.例子: CREATE USER'dog'@'localhost' IDENTIFIED BY &# 阅读全文
posted @ 2012-05-07 12:32 风去无痕 阅读(175) 评论(0) 推荐(0) 编辑
摘要:当更新数据时自动记录时间 : ALTER TABLE xxx ADD COLUMN addtime TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;导出数据库表 mysqldump -uxxx -pxxx 数据库名 数据库表名 > test.sqlALTERTABLE`user`ADDCONSTRAINTFOREIGNKEY(`employee_id`)REFERENCES`employee` (`id`)ONDELETECASCADE; 阅读全文
posted @ 2011-12-26 16:19 风去无痕 编辑

点击右上角即可分享
微信分享提示