Ⅰ 如何使用Discuz,后台备份和恢复Discuz,站点数据库
Discuz!为方便用户备份和恢复数据库,已在后台内置了此功能,易于站长操作。今天在这分享一下Discuz!
x2.5论坛后台数据库的备份和恢复方法,以及备份数据库和恢复数据库要注意的一些细节问题。
一、利用Discuz!后台备份数据库
1、为备份数据完整无误,备份数据前请站长先关闭站点;
2、利用站长权限登录后台——》站长——》数据库——》备份,有两个基本的数据备份类型:“Discuz!
和
UCenter
数据”
和
“自定义备份”;
1)、选择“Discuz!
和
UCenter
数据”,会备份你Discuz!数据库的所有数据表文件;(包括插件等生成的数据表)
2)、选择“自定义备份”,按照要求勾选你要备份的数据表即可。
3、“提交”旁边有一个“更多选项”,用户可以根据自己的需求来设置一下更多选项,不是很懂的用户可以不必点开更多选项设置,保持Discuz!设置的默认值就可以了;下面分析一下更多选项的技巧提示:
1)、Mysql
Dump
的速度比
Discuz!
分卷备份快很多,但需要服务器支持相关的
Shell
权限,同时由于
MySQL
本身的兼容性问题,通常进行备份和恢复的服务器应当具有相同或相近的版本号才能顺利进行。因此
MySQL
Dump
是有风险的:一旦进行备份或恢复操作的服务器其中之一禁止了
Shell,或由于版本兼容性问题导致导入失败,您将无法使用
MySQL
Dump
备份或由备份数据恢复;Discuz!
分卷备份没有此限制;
2)、数据备份选项中的设置,仅供高级用户的特殊用途使用,当您尚未对数据库做全面细致的了解之前,请使用默认参数备份,否则将导致备份数据错误等严重问题;
3)、十六进制方式可以保证备份数据的完整性,但是备份文件会占用更多的空间;
4)、压缩备份文件可以让您的备份文件占用更小的空间。
4、上面选好“数据备份类型”,点击提交就可以开始备份了,备份的数据文件会保存在站点根目录下的data目录的一个backup_XXXXXX文件夹里;
5、备份完数据库后即可重新打开站点。
二、利用Discuz!后台恢复数据库
1、为恢复数据完整无误,恢复数据前请站长先关闭站点;
2、利用站长权限登录后台——》站长——》数据库——》恢复,会看到你各次的数据备份记录,并且有备份时间、备份数据类型等;
3、上传恢复数据库必须的restore.php文件;
1)、恢复数据前请在
Discuz!
X2.5
安装文件目录下utility文件夹内找到
restore.php
文件,然后将
restore.php
文件上传到程序文件夹data目录下;
2)、如果你恢复过数据库,会在根目录生成/data/restore.lock文件,恢复数据功能锁定,如果您确定要恢复数据,请到服务器上删除./data/restore.lock。
Ⅱ [高分悬赏]Discuz X1更换数据库服务器后要怎样设置
修改config文件夹下的config_global_default.php及config_ucenter_default.php 里面的数据库链接地址即可
Ⅲ discuz论坛 使用的是什么数据库
discuz论坛的数据库都是你在你的服务器上安装discuz程序的时候向你自己服务器的数据库里面执行的创建数据库以及表的语句。都是它自动的~不需要你管的。只要你填好自己的数据库地址,连接密码。还有discuz的文件放到你的服务器目录下。
Ⅳ 安装Discuz的时候提示数据库出现问题
Can't connect to MySQL server on 'localhost' (10061)解决方法,需要的朋友可以参考下。
首先检查MySQL 服务没有启动》如果没有启动,则要启动这个服务。
昨天,重起服务器后出现MySQL 'localhost' (10061)错误,开始以为是因为数据库链接打开过多,数据库资源耗尽的缘故,但是重启服务器以后,仍旧出现问题,于是在网上查找解决方法。大体如下:
解决办法:
第一步
删除c:\windows\下面的my.ini
第二步
打开c:\mysql\bin\winmysqladmin.exe 输入用户名 和密码
第三步 在dos下 输入 mysqld-nt -remove 删除服务
在接着输入 mysqld-nt -install
第四步 输入mysql 启动成功。
其它可参考的方法:
1.看看hosts文件中localhost是不是指向127.0.0.1
2.如果是没启动mysql服务,则可运行net start mysql。
3.一些相关命令:
mysqld-nt --install #启动Mysql
mysql #运行Mysql
mysql -h ipAddress -u username -p
或者:直接去bin里点mysqld.exe或mysqld-nt.exe,看下它的进程能否正常运行,如不行,再去控制面板,服务里去启动它,看下是什么错误。如果不行,就在添加删除里删去mysql,然后再重装mysql,一般都能解决问题,可以在安装前备份一下DATA。
Error: Can't connect to MySQL server on 'localhost' (10061)
Errno.: 2003
错误编号:2003
问题分析:
无法连接到 MySQL 服务器,可能的情况为:
1、MySQL 服务没有启动,一般是在异常的情况下 MySQL 无法启动导致的,比如无可用的磁盘空间,my.ini 里 MySQL 的 basedir 路径设置错误等;
2、MySQL 服务器资源紧张,导致无法连接。
解决方法:
1、如果你是虚拟主机用户(购买的空间),则联系空间商检查 MySQL 是否正常启动,并确认 MySQL 的配置信息(是否为 localhost);
2、如果你是独立主机用户(拥有管理主机权限),则按下面步骤检查:
1)检查磁盘空间是否还有剩余可用空间,尽量保持有足够的磁盘空间可用。
2)检查 my.ini 里的 basedir (MySQL 安装地址) 和 datadir (数据目录存放地址)等参数设置是否正确,然后重新启动下 MySQL 服务。
还有一种方法是将服务器的windows补丁。
微软9月9日发布了TCP/IP更新补丁(KB967723),如果服务器开启自动更新或者有自动更新软件下载更新了这个补丁,那么就会出现这个问题。
有人可能会问,为什么9号出现的补丁,到现在才发现问题?
大家都知道,服务器不是每天都重启的,有的服务器可能一个月或者一年半载重启一次,有的可能在9月9日以后重启过服务器,所以补丁生效了(我个人这么认为)。
补丁卸载方法:登录服务器,进入控制面板 --- 添加和删除程序 -- (勾选上方的“显示更新”)
在里面可以看到更新的KB967723这个补丁,然后就想卸载普通软件一样卸载,卸载中会提示你,如果卸载可能导致程序运行出错,没关系,选择“是”,继续卸载。
卸载完成后程序服务器,一切正常!
至于该补丁修补什么漏洞,卸载后是否会出现服务器安全隐患,这个先不说,要MYSQL正常运行,临时的解决办法只有如此。
还有种情况下,你可以这样解决
Discuz! info: Can not connect to MySQL server
Time: 2007-11-13 6:25pm
Script: /bbs/index.php
Error: Can't connect to MySQL server on 'localhost' (10061)
Errno.: 2003
Similar error report has beed dispatched to administrator before.
正常情况下原因如下:
网站论坛访问量过大,数据库连接超过最大连接数.MYSQL数据库服务停止了.
解决方法(针对WIN系统):
1, 首先到系统服务里面找到MYSQL服务并启动MYSQL服务.
2, 到MYSQL安装目录找到MY.INI文件,打开MY.INI查找max_connections 修改连接数为1000 重启IIS与MYSQL服务.
window 下
命令行下输入:
>cd E:\mysql\bin
>mysqladmin -u root password 你的密码
>mysql -u root -p
Enter password: 你的密码
便可以
、、、、、、、、、、、、、、、、、
找到了根本原因,在此凉一下:
导致此问题的根源在:因为给mysql的root设置了密码,而不是最初安装好时的密码为空,所以使用
mysqladmin version这样子不行了,必须这样子:mysqladmin -uroot -p version,回车后按照提示要求输入
root密码即可成功运行命令。
第一种方法其实就是在不知道root密码的情况下的一种解决办法,那样子启动不用密码即可进mysql
里面并进行root密码的修改,解决忘记了root密码的问题。
输入命令“mysqladmin -u root password 你的密码”作用是修改root用户的密码,这条命令能够不经
提示输入原密码而成功执行,也说明了原密码是空。之后使用修改后的密码自然能够成功登录。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。怎么更改密码?
首先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的,所以一般用户无法更改密码
,除非请求管理员。
方法一
使用phpmyadmin,这是最简单的了,修改mysql库的user表,
不过别忘了使用PASSWORD函数。
方法二
使用mysqladmin,这是前面声明的一个特例。
mysqladmin -u root -p password mypasswd
输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。
把命令里的root改为你的用户名,你就可以改你自己的密码了。
当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,
那么这种方法就是无效的。
而且mysqladmin无法把密码清空。
下面的方法都在mysql提示符下使用,且必须有mysql的root权限:
方法三
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。
在《mysql中文参考手册》里有这个例子,所以我也就写出来了。
注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。
方法四
和方法三一样,只是使用了REPLACE语句
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
方法五
使用SET PASSWORD语句,
mysql> SET PASSWORD FOR " = PASSWORD('biscuit');
拟也必须使用PASSWORD()函数,
但是不需要使用FLUSH PRIVILEGES。
方法六
使用GRANT ... IDENTIFIED BY语句
mysql> GRANT USAGE ON *.* TO " IDENTIFIED BY 'biscuit';
这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。
注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。
MySQL 忘记口令的解决办法
如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。
启动 MySQL :bin/safe_mysqld --skip-grant-tables &
就可以不需要密码就进入 MySQL 了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新杀 MySQL ,用正常方法启动 MySQL 。
linux下
方法一:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>
方法二:
直接使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码:
# mysql -udebian-sys-maint -p
Enter password: <输入[client]节的密码>
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>
方法三:
# mysql -uroot -p
Enter password: <输入/etc/mysql/debian.cnf文件中[client]节提供的密码>
Ⅳ discuz 安装的时候数据库地址应该怎么填写 7.2
如果同的数据库服务器,可以写localhost
不同的数据库,写数据库的服务器IP地址,并且数据库的用户名、密码、数据库表名都存在正确
Ⅵ Discuz 安装数据库错误 怎么解决
你把数据库服务器后的地址改为:localhost 再试试
本地服务器应该不用加端口号的吧
Ⅶ Discuz! 论坛和数据库在同一个服务器好还是分开两个服务器好.
分开安全性高 用户体验不好 打开网页需要解析两个地址
集中在一个,数据丢失两个会同时丢失 但是打开网页不需要向另一个地址解析
Ⅷ 你好!Discuz数据库信息填什么!
数据库服务器
是填写数据库所在服务器的名称,如果在本机测试一般填
localhost
,如果购买了数据库服务,就问一下服务提供商。
数据库名填写mysql里装Discuz的那个库的名称,如果在本机测试,你要到
数据库管理
界面上添加一个数据库,如果购买了数据库服务,就问一下服务提供商。
数据库用户名,如果在本机测试,一般是root,如果是购买的服务,一般是登录用户名。
Ⅸ Discuz! X2数据库地址问题,无法连接数据库,请检查数据库是否启动,数据库服务器地址是否正确
数据库和网站是否同在一台服务器上
如果同在的话,数据库地址就写
localhost
还有务必确定你的数据库用户名密码正确!!!
Ⅹ 谁知道用discuz做了一个网站,在本地调试好了以后,上传到服务器,数据库方面要做哪些修改啊谢谢。
给你说个简单的办法吧
先在服务器安装discuz,然后把本地的数据库,UCENTER备份。
将本地的discuz压缩后覆盖服务器里的安装目录。然后将数据库和Ucenter数据库恢复即可。
另外可以修改config文件夹里的config_globe.php将数据库和密码修改成你服务器对应的信息。
然后登陆后台,恢复数据库和ucenter数据库。