使用shell脚本解决Navicat导出excel数据不全的问题
月末需要对系统注册用户进行报表统计,在使用Navicat从MySQL数据库中导出数据到excel文件时,发现最大只能导出为65536(美好的数字)行的数据。按理说 Navicat应该是从数据库中读取一条记录会立即写到excel文件中,不应该只读取65536范围内的数据然后一次性写到文件里面。
月末需要对系统注册用户进行报表统计,在使用Navicat从MySQL数据库中导出数据到excel文件时,发现最大只能导出为65536(美好的数字)行的数据。按理说 Navicat应该是从数据库中读取一条记录会立即写到excel文件中,不应该只读取65536范围内的数据然后一次性写到文件里面。
在上一篇文章中通过重装yum解决了无法使用Python3解释执行的问题,但是yum -y update
后又会使得之前设置的软链接(ln -s /usr/local/bin/python3.6 /usr/bin/python
)被替换成python2.7。为了把Python3设置为默认py解释器的同时保证yum能正常使用,还得从yum相关脚本下手。
不难猜测这些脚本都是使用py2语法,如果能把它们声明的解释器改成python2,那么问题就迎刃而解了。搜索了一下,发现在/usr/bin/
目录有7个yum相关的脚本,再加上前文提到的/usr/libexec/urlgrabber-ext-down
共8个。
之前把现有这台阿里CentOS7.2系统的Python2.7.5升级成Python3.6后,yum工具就不能使用了。当时网上查了下原因,都说是Python3导致的,但是试了很多种方法还是没解决,后面也就一直没管了。因为最近要弄一个Nodejs微信小程序,需要用yum安装一些开发工具,就不得不修复这个问题了。
本文是这《Linux C/C++多进程同时写一个文件》系列文章的第二篇,上一篇文章演示了两个非亲缘关系的进程同时写一个文件的情形,并得出了数据只会错乱但不会覆盖
的结论。这篇文章主要是讨论两个亲缘进程(fork)同时写一个文件的情况。
近期会写关于《Linux C/C++多进程同时写一个文件》的系列文章,主要是探索在Linux下非亲缘关系的多进程和具有亲缘关系的多进程同时写一个文件的问题。例如,当两个进程同时写一个文件,那么写入结果是怎样的呢?是否会出现数据丢失的情况?是否会出现覆盖?是否会出现错乱?
本文是这一系列文章的第一篇,通过两个非亲缘关系的进程演示同时写一个文件的情形,最终得出结论、回答上面的问题。
之前项目上隔三差五地要手工批量导入一些数据,于是自己用C++写了这个sql脚本文件的生成工具。