用navicat运行sql文件,但是刷新后数据库无表或者有表无数据

用navicat运行sql文件,但是刷新后数据库无表或者有表无数据,第1张

将sql文件从上到下分成多段运行,比如里面如果有:

create table XXXX () go这样的语句,将起copy出来另存一个文件,当然也是sql结尾,然后单独运行或直接将这段语句放在查询分析器之类的工具中运行,然后看看结果是否还是什么也没有

首先换数据库,MySQL处理这个数量级数据比较吃力。推荐你用DB2 或ORACLE

如果不能换,检查一下存储引擎用InnoDB,如果是,检查

innodb_flush_log_at_trx_commit 这个选项,是否是1

如果是1 用SET AUTOCOMMIT = 0 ,提高数据修改速度

PHP优化需要

MySQL Slow Log 分析工具分析日志:mysqldumpslow或mysqlsla比较不错。

Explain/ DESC 分析SQL 的执行情况和SHOW PROCESSLIST

使用SHOW PROCESSLIST 看是否有锁表情况,

设置 mycnf 中的long-query-time 和log-slow-queries 记录服务器那些SQL执行速度比较慢

根据上述情况查看对对应的SQL语句进行优化

优化服务器性能,用RAID5(SAN),加内存本身的升级,提高硬盘I/O性能。

数据库总体性能优化:

数据表最好能拆成小表。

数据库切片,分到不用的服务器上,

数据库访问性能优化

修改mycnf, 下面是影响比较大的:

innodb_flush_log_at_trx_commit 设置为0

如果比下面值大就不用调整了:

query_cache_size 设置为16M

sort_buffer_size 设置为16M

record_buffer 设置为16M

key_buffer_size 设置为8M

innodb_buffer_pool_size 设置为32M

下面是建议设置的

table_cache 设置为512

read_buffer_size 设置为16M

myisam_sort_buffer_size设置为16M

innodb_additional_mem_pool_size 设置为128M

innodb_log_file_size 设置为256M

innodb_log_buffer_size设置为8M

数据库表优化,

1 建立相应的INDEX

2 统一编码,MySQL的默认编码是Latin1,不支持中文,需要把数据库的默认编码修改为gbk或者utf8

show variables like 'character%' 查看

另外表的编码也要与数据库统一

1、首先,创建空白数据库,在数据库中创建表并插入数据,如下图所示,然后进入下一步。

   

2、其次,完成上述步骤后,菜单栏中选择“创建”,然后选择“查询设计”按钮。将d出“显示表”窗口,如下图所示,然后进入下一步。

   

3、接着,完成上述步骤后,选择“表1”并单击“添加”,如下图所示,然后进入下一步。

   

4、然后,完成上述步骤后,单击查询设计网格第一列中的字段行,选择“生成器”选项,打开“表达式生成器”对话框,在对话框中输入表达式“m”:Max([Age])-min([Age]),单击“确定”按钮,如下图所示,然后进入下一步。

   

5、随后,完成上述步骤后,点击“查询工具”选项卡中“结果”命令组的“数据表视图”命令以查看查询结果,如下图所示,然后进入下一步。

   

6、最后,完成上述步骤后,查询结果如下图所示。这样,问题就解决了。

重新设置服务器。

只需在左窗格中右击或按住Control键并点按连接,选择打开数据库。这会提示你输入数据库名。输入数据库名并点击确定。

在连接窗口,选择数据库选项卡。启用使用自定义数据库列表并添加你的数据库到列表。勾选要进行显示的数据库。

以上就是关于用navicat运行sql文件,但是刷新后数据库无表或者有表无数据全部的内容,包括:用navicat运行sql文件,但是刷新后数据库无表或者有表无数据、数据库中的表总是会出现查询的数据都为null或者为空,但是数据表中确实有数据存在、如何对数据库中表进行查询,怎么做等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9802421.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存