标签归档:mysql

读取mysql一个库下面的所有的表table

<?php require ‘class/db.php’;   $sql = "select * from information_schema.tables where table_schema=’ecshop’ and table_type=’base table’ order by TABLE_ROWS desc ";   $arr = $db->queryArray($sql);   //var_dump($arr); foreach ($arr as $k => $v) { $tbname = $v->TABLE_NAME; $rows = $v->TABLE_ROWS; echo … 继续阅读

发表在 PHP, 数据库 | 标签为 | 留下评论

mysql底层命令,导出导入数据库

create USER ‘admin’@'%’ IDENTIFIED BY ‘rtretw’; create USER ‘admin’@'localhost’ IDENTIFIED BY ‘rtretw’;   SELECT DISTINCT CONCAT(’User: ”’,user,”’@”’,host,”’;') AS query FROM mysql.user;   CREATE DATABASE javaer DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;     GRANT ALL ON javaer.* TO ‘admin’@'%’; GRANT … 继续阅读

发表在 Linux | 标签为 | 留下评论

对一个未知类型的数据,进行java判断

常见的情况是,我们从mysql读出了数据,批量灌入到HASHMAP里,于是这个HashMap里,有int类型,有string,有boolean,有long 下面的函数,直接判断出数据的类型,方便我们做转义的操作。之前写过一个instanceof 的专门用法。 public static <T> String getType(T t){ if(t instanceof String){ return "string"; }else if(t instanceof Integer){ return "int"; }else if(t instanceof Boolean){ return "boolean"; }else{ return " do not know"; } } 一般这么用。 Iterator iter = h.entrySet().iterator(); while … 继续阅读

发表在 JAVA | 标签为 , , , | 一条评论

mysql 的 MyISAM和 InnoDB的区别

  一、文件存储     MyISAM   每个MyISAM在磁盘上存储成三个文件。第一个文件的名字以表的名字开始,扩展名指出文件类型。   .frm文件存储表定义。   数据文件的扩展名为.MYD (MYData)。   索引文件的扩展名是.MYI (MYIndex)。   InnoDB   基于磁盘的资源是InnoDB表空间数据文件和它的日志文件,InnoDB 表的大小只受限于操作系统文件的大小,一般为 2GB   二、事务支持   MyISAM   MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持   InnoDB   InnoDB提供事务支持事务,外部键等高级数据库功能   三、mysql执行方式   MyISAM   如果执行大量的SELECT,MyISAM是更好的选择   InnoDB   1.如果你的数据执行大量的INSERT或UPDATE,出于性能方面的考虑,应该使用InnoDB表   2.DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。   3.LOAD TABLE FROM MASTER操作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如外键)的表不适用   四、AUTO_INCREMENT   每表一个AUTO_INCREMEN列的内部处理。   MyISAM为INSERT和UPDATE操作自动更新这一列。这使得AUTO_INCREMENT列更快(至少10%)。在序列顶的值被删除之后就不能再利用。(当AUTO_INCREMENT列被定义为多列索引的最后一列,可以出现重使用从序列顶部删除的值的情况)。   AUTO_INCREMENT值可用ALTER TABLE或myisamch来重置   对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引   更好和更快的auto_increment处理   INNODB   如果你为一个表指定AUTO_INCREMENT列,在数据词典里的InnoDB表句柄包含一个名为自动增长计数器的计数器,它被用在为该列赋新值。   自动增长计数器仅被存储在主内存中,而不是存在磁盘上   关于该计算器的算法实现,参考AUTO_INCREMENT列在InnoDB里如何工作 … 继续阅读

发表在 数据库 | 标签为 , , | 留下评论

使用一个脚本监控mysql进程

#!/bin/sh ps -fe|grep mysqld |grep -v grep if [ $? -ne 0 ] then echo "start process….." service mysql start else echo "runing….." fi   DATE=`date +%Y%m%d%H%M%S` echo $DATE >> /backup/mysql/test.txt 0表示存在的 $? -ne 0 不存在,$? -eq 0 存在 vi … 继续阅读

发表在 Linux, 数据库 | 标签为 , , , | 留下评论

mysql 无故崩溃,自动退出解决方案

最近博客服务器的mysql mysql经常崩溃,挂了,不过我发现了的时候,重启就好了。基本一周来一次 2016-09-20 15:17:04 13896 [Note] Event Scheduler: Loaded 0 events 2016-09-20 15:17:04 13896 [Note] /opt/lampp/sbin/mysqld: ready for connections. Version: ’5.6.21′ socket: ‘/opt/lampp/var/mysql/mysql.sock’ port: 3306 Source distribution 2016-09-21 13:34:04 27385 mysqld_safe Number of processes running now: 0 2016-09-21 13:34:04 27385 … 继续阅读

发表在 数据库 | 标签为 , , | 留下评论

mysqldump 导出发生Lost connection to MySQL server during query

在mysqldump备份导出的时候类似用如下语句导出数据 mysqldump -uroot -p’passwd’ –opt –default-character-set=utf8 –triggers -R –hex-blob –single-transaction –no-autocommit –master-data=2 test_game mail >mail.sql 出现类似如下报错: mysqldump: Error 2013: Lost connection to MySQL server during query when dumping table `mail` at row: 1754283 查询资料 大概说是因为mysqldump来不及接受mysql server端发送过来的数据,Server端的数据就会积压在内存中等待发送,这个等待不是无限期的,当Server的等待时间超过net_write_timeout(默认是60秒)时它就失去了耐心,mysqldump的连接会被断开,同时抛出错误Got error: 2013: Lost connection。 … 继续阅读

发表在 数据库 | 标签为 , | 留下评论

ubuntu下安装service 无法启动问题

今天从ubuntu 下安装mysql apt-get install mysql-server 启动的时候发现 service mysql start Rather than invoking init scripts through /etc/init.d, use the service(8) utility, e.g. service mysql start   Since the script you are attempting to invoke has been converted to an Upstart job, … 继续阅读

发表在 Linux, 数据库 | 标签为 , | 留下评论

MAC随机启动项,关闭mysql随机启动

MAC系统下的随机启动,不仅仅在一个地方 常规随机启动项目 偏好设置–账户 看图 上一阵因为python的mysql调用,在本地安装了一个mysql,结果现在每次都随机启动,我得手工去停止,再启动lampp的mysql 查了半天发现mac在 /Library/StartupItems 下还有一大堆文件 其中有个叫MYSQLCOM 幸好mac自带了是否随机启动的选项 vi /etc/hostconfig # This file is going away AFPSERVER=-NO- AUTHSERVER=-NO- AUTOMOUNT=-YES- NFSLOCKS=-AUTOMATIC- NISDOMAIN=-NO- TIMESYNC=-YES- QTSSERVER=-NO- WEBSERVER=-NO- SMBSERVER=-NO- SNMPSERVER=-NO- MYSQLCOM=-YES- MYSQLCOM=-YES-改成 MYSQLCOM=-NO- 就不会随机启动啦。 爽它

发表在 MAC | 标签为 , , , | 留下评论

python连接mysql

先在线python-mysql库 官方库地址 http://mysql-python.sourceforge.net/ 下载下来的包,进行解压 直接执行 python setup.py build 有时会遇到这样的问题: $ sudo python setup.py build building a Distribute egg in /Users/mc2/Downloads/MySQL-python-1.2.4b4 /Users/mc2/Downloads/MySQL-python-1.2.4b4/distribute-0.6.28-py2.7.egg sh: mysql_config: command not found Traceback (most recent call last): File "setup.py", line 18, in <module> metadata, options = … 继续阅读

发表在 Python | 标签为 , , , | 留下评论