mysql数据库常连接造成大量sleep状态怎么办

mysql数据库常连接造成大量sleep状态怎么办,第1张

mysql数据库常连接造成大量sleep状态怎么办

用navicat自动备份mysql数据库方法:

1、启动navicat软件,使用连接mysql数据库。

2、随后d出,随意起一个“连接名”输入“主机名/ip”这里填写mysql数据库所在服务器的ip地址,用户名密码为mysql数据库的root和密码。

3、这样左边就可以列出数据库“连接名”的快捷方式,双击以后可以列出这个mysql里面所有的数据库,等同于“show databases”命令。如图172..16.20.69这个:

4、“单击”选定需要备份的数据库,然后点最后一项“计划任务”有的翻译为“计画任务”。如图:

5、点击创建批次处理任务

6、在d出的新窗口中“双击”可用任务中的“Backup【数据库名称】”,在下面的“选择任务”框中,就会出现选取的“Backup 【数据库名称】”也就是备份库。比如图中的wakawaka数据库。

7、点击"保存" ,随意输入一个文件名比如 chuxuefeng-wakawaka 。

8、返回 Navicat for MySQL 窗口,打开hl2库的“计画任务”。会看到计画任务里多了一个chuxuefeng-wakawaka,在chuxuefeng-wakawaka上点右键,选择“设置计画任务”。

9、在新的窗口里选择“计划”页,新建一个计划。在高级选项里,可以勾选重复任务。

10、打开高级选项,可以设定每多少小时备份一次,持续时间可以选择最大9999小时,可以设置为每天每隔3小时备份一次。实际上一般可以设定每天0:00备份一次就行了。具体的时间间隔视你的服务器情况而定。

11、设置完计划任务之后。系统会要求你输入windows本机的administrator密码。

12、现在做了计划任务的数据库每隔设定的一段时间就自动备份一次,自动备份的文件名是按时间排序的,名称是按照设定的名称来备份。如果需要恢复备份的话,可以按时间恢复数据。

13、如果需要恢复数据,那么双击相应的备份文件,点击“开始”就可以恢复数据。

SQL有定时执行的语句 WaitFor,可以写到一个存储过程中再执行一次

语法:WaitFor{Delay 'time'|Time 'time}

Delay后面的时间为延迟多少时间执行

Time后面的时间为指定何时执行,格式为"HH:MM:SS",不支持日期

例:

------指定10:00执行

Begin

waitfor time '10:00'

select * from tablename

end

-----指定等待1小时后执行

begin

waitfor delay '1:00'

select * from tablename

end

dbms_lock.sleep(n)暂停n秒后执行

一般这个包都会创建,但是权限不是默认就赋予的;还有一个重要的步骤是要给用户all on dbms_lock 权限。。

在DBA身分下

grant execute on dbms_lock to USERNAME

放到存贮过程里

1.WAITFOR

--WAITFOR

--例 等待1 小时2 分零3 秒后才执行SELECT 语句

waitfor delay '01:02:03'

select * from employee

--例 等到晚上11 点零8 分后才执行SELECT 语句

waitfor time '23:08:00'

select * from employee


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存