灵当CRM

 找回密码
 立即注册
查看: 1432|回复: 0

数据库备份和恢复时的常见问题

[复制链接]

1662

主题

1711

帖子

5万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
59925
 楼主| 发表于 2022-11-10 11:34:58 | 显示全部楼层 |阅读模式
                                                                                                                                      数据库备份和恢复时的常见问题

一、如何通过Navicat for Mysql数据库工具备份数据库?
1.png

     1、选中需要备份的数据库实体,双击或右键打开数据库;         
   
     2、右键->转储SQL文件->结构和数据;

     3、选择转储路径,设置备份文件名称后,点击“保存”按钮等待备份结束。
      1.png

二、通过“转储SQL文件”方式备份的数据库如何恢复?

1、删除现有的数据库,重新创建数据库;
       1.png

      2、也可以新建其他名称的数据库,然后修改 \ldcrm\www\crm\config.inc.php 配置文件中的配置数据库参数 $dbconfig['db_name'];
       1.png

      3、选中新建的数据库->右键->运行SQL文件->选择前面备份好的SQL文件,点击“开始”进行恢复。
       1.png


三、通过Navicat for Mysql恢复数据库出错,或者恢复之后登录界面空白怎么办?
1.png 2.png

原因1:恢复数据库出错是因为工具存在兼容性问题或者数据库使用自建的用户,导致触发器和存储过程恢复出错;

原因2:恢复的数据库,登录系统后界面空白,也是因触发器和存储过程没有恢复出来导致的;

解决方法:出现以上两种情况时,数据库表都已经正常恢复了,只需要再单独恢复一下所有的触发器和存储过程即可。

获取所有存储过程和触发器脚本的方法如下:

      1、复制前面备份的数据库文件,如果数据库备份文件很大(超过200M)时,可以重新备份一下数据库,备份转储SQL文件时选择“仅结构”;

      2、使用Notepad++编辑备份的SQL文件,若没有先安装Notepad++;

      3、按CTRL+F进入查找界面,查找内容输入:DROP V,然后点击“查找下一个”;
       1.png

      4、把DROP VIEW IF EXISTS `vw_oa_attendance` 上面的所有关于表的脚本全部删除(光标定位在DROP VIEW上一行,拖动滚动条到最上方,按住SHIFT键点击首行选中内容,然后删除即可);

      5、余下的脚本就是所有触发器和存储过程,脚本中有对数据库用户的定义,直接全部替换为空;
       1.png

      6、最后,在Navicat for Mysql 中选择前面已经恢复的数据库,新建查询,复制上面的所有存储过程和触发器脚本,执行即可;
       1.png

      7、如果客户没有做过个性化的触发器开发,可以恢复对应版本通用的存储过程和触发器脚本,如果做过个性化触发器开发则必须按上述方法操作。

四、Mysql数据库如何添加远程访问用户?

执行如下脚本即可,对应的用户和密码可自行修改
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'lingdang'@'%' IDENTIFIED BY '123##' WITH GRANT OPTION;
FLUSH PRIVILEGES;











回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

灵当CRM

GMT+8, 2024-4-28 15:47 , Processed in 0.056495 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2008-2022, Tencent Cloud.

沪ICP备08110973号-2

快速回复 返回顶部 返回列表