MySQL导入转储数据库会产生不同的值
我有以下任务: -将数据库(名为live)转储为DBBackup\u TIMESTAMP.sql -将创建的转储导入另一个数据库(名为test) -将数据库测试再次转储为diff.sql 这很有魅力。最后一步是区分两个转储(DBBackup_TIMESTAMP.sql和diff.sql),以验证转储的DBBackup_TIMESTAMP.sql文件并将其保存在备份空间中 问题: 这两个文件是不同的。 在live DB中,表中有一些行的双精度值为-0.000,而在测试数据库中,特定行的双精度值为0.000 问题: 有没有办法强制mysql将-0.000的值导入测试数据库?(是的,我知道0.000是正确的,而-0.000不是正确的,但要求db中有-0.000) MySQL版本:MySQL版本14.14发行版5.5.55,适用于使用readline 6.2的debian linux gnu(i686) 转储命令:MySQL导入转储数据库会产生不同的值,mysql,import,export,double,Mysql,Import,Export,Double,我有以下任务: -将数据库(名为live)转储为DBBackup\u TIMESTAMP.sql -将创建的转储导入另一个数据库(名为test) -将数据库测试再次转储为diff.sql 这很有魅力。最后一步是区分两个转储(DBBackup_TIMESTAMP.sql和diff.sql),以验证转储的DBBackup_TIMESTAMP.sql文件并将其保存在备份空间中 问题: 这两个文件是不同的。 在live DB中,表中有一些行的双精度值为-0.000,而在测试数据库中,特定行的双精度值为0
mysqldump -u $MYSQL_USER --password=$MYSQL_PASS -h 127.0.0.1 --port=$PORT --skip-comments --databases my_db > $FILE_NAME
mysql -u $MYSQL_USER --password=$MYSQL_PASS -h 127.0.0.1 --port=$MYSQL_PORT_BACKUP < $DUMP_FILE
导入命令:
mysqldump -u $MYSQL_USER --password=$MYSQL_PASS -h 127.0.0.1 --port=$PORT --skip-comments --databases my_db > $FILE_NAME
mysql -u $MYSQL_USER --password=$MYSQL_PASS -h 127.0.0.1 --port=$MYSQL_PORT_BACKUP < $DUMP_FILE
mysql-u$mysql\u USER--password=$mysql\u PASS-h 127.0.0.1--port=$mysql\u port\u BACKUP<$DUMP\u FILE
有没有办法解决这个问题,或者可能是什么问题
如果有人能帮忙,或者至少知道问题出在哪里,那就太好了 你看到的是记录在案的行为 说: 上述问题的一个含义是,如果您试图通过在主机上使用mysqldump转储表内容并将转储文件重新加载到从机来创建复制从机,则两台主机之间包含浮点列的表可能不同 如果需要精确的数值,请使用
进一步阅读:(Goldberg,1991)谢谢你,比尔,这个信息就是解决方案!