MySQL社区

标题: 请问大家是如何处理ibdata1这个大文件的? [打印本页]

作者: dctorwww    时间: 2016-9-7 11:42
标题: 请问大家是如何处理ibdata1这个大文件的?
root@htuidc:/var/lib/mysql# ls -l
total 46596488
-rw-r--r-- 1 root  root            0 Sep  5 20:31 debian-5.5.flag
-rw-rw---- 1 mysql mysql 47704293376 Sep  7 11:37 ibdata1
-rw-rw---- 1 mysql mysql     5242880 Sep  7 11:37 ib_logfile0
-rw-rw---- 1 mysql mysql     5242880 Sep  7 11:37 ib_logfile1
drwx------ 2 mysql root         4096 Sep  5 21:08 mysql
-rw-rw---- 1 root  root            6 Sep  5 20:31 mysql_upgrade_info
drwx------ 2 mysql mysql        4096 Sep  5 20:31 performance_schema
drwx------ 2 mysql mysql        4096 Sep  5 21:13 phonedata


已经设置了   /etc/mysql/my.cnf ,还有其他方法吗?

[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
innodb_file_per_table=1


作者: dctorwww    时间: 2016-9-8 12:11
我的解决方案是 :因为有事务提交的时候才会激增ibdata1,我用的语言是python,所以我就用python把所有要提交的数据写成sql语句,这样就避免了大量的事务提交语句,而且这种导入数据库速度很快
>>>sqli = "insert into phoneto values"
>>>abcv='werw'
>>>q=123
>>>qs='sf'
>>>sqli+="("+"'"+abcv+"'"+","+"'"+str(q)+"'"+","+"'"+str(qs)+"'"+")"+","
>>>print sqli
insert into phoneto values('werw','123','sf'),.......

稳定快速,但是单次提交的数量有限,好像一次只能3w多,所以得做下限制





欢迎光临 MySQL社区 (http://mysqlpub.com/) Powered by Discuz! X3.2