Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql Golang加载数据会减慢数据库/sql操作_Mysql_Go_Load Data Infile - Fatal编程技术网

Mysql Golang加载数据会减慢数据库/sql操作

Mysql Golang加载数据会减慢数据库/sql操作,mysql,go,load-data-infile,Mysql,Go,Load Data Infile,我使用LOAD DATA LOCAL infle命令和database/sql驱动程序将多个文件加载到数据库中,如下所示: mysql.RegisterLocalFile(fileName) _, err = dbConnection.Exec(loadDataCommand) 加载完成后,这将按预期工作。我对新加载的数据运行一些SELECT查询(我正在对这些SELECT查询和所有其他查询重用dbConnection),这就是问题所在。上述SELECT查询异常缓慢(由于CPU使用率高) 在运行

我使用
LOAD DATA LOCAL infle
命令和
database/sql
驱动程序将多个文件加载到数据库中,如下所示:

mysql.RegisterLocalFile(fileName)
_, err = dbConnection.Exec(loadDataCommand)
加载完成后,这将按预期工作。我对新加载的数据运行一些SELECT查询(我正在对这些SELECT查询和所有其他查询重用
dbConnection
),这就是问题所在。上述SELECT查询异常缓慢(由于CPU使用率高)

在运行负载数据数据库时,CPU使用率会出现预期的峰值,但在负载数据完成后,CPU使用率应该会下降,但不会下降,除非我关闭并重新打开
dbConnection
CPU使用率保持较高

以下是我“重置”数据库连接的方式:

_ = dbConnection.Close()
dbConnection, err = sql.Open(databaseDriver, databaseUser+":"+databasePassword+"@tcp("+databaseAddress+":3306)/"+databaseName+"?multiStatements=true")

为什么会这样?上面的代码正在开发数据库上运行,因此没有其他连接到它。

查看
SHOW PROCESSLIST
以了解发生了什么。切断连接并不一定意味着服务器无事可做。
SHOW PROCESSLIST
仅显示一个正在运行的SELECT查询可能会提供更多详细信息。有时需要对InnoDB表、索引更新等进行后台处理。服务器在导入大量数据后需要一些时间来稳定下来是正常的。用户可以帮助处理类似的查询。为了获得更好的性能,您可能需要调整服务器调优参数。谢谢,我将在这里发布我的问题,并使用MySQL Workbench进行一些调查。