资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

php建后台数据库如何,php怎么建数据库

拷回的mysql数据库文件不能用

如果从库上表 t 数据与主库不一致,导致复制错误,整个库的数据量很大,重做从库很慢,如何单独恢复这张表的数据?通常认为是不能修复单表数据的,因为涉及到各表状态不一致的问题。下面就列举备份单表恢复到从库会面临的问题以及解决办法:

创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的牙克石网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

场景 1

如果复制报错后,没有使用跳过错误、复制过滤等方法修复主从复制。主库数据一直在更新,从库数据停滞在报错状态(假设 GTID 为 aaaa:1-100)。

修复步骤:

在主库上备份表 t (假设备份快照 GTID 为 aaaa:1-10000);

恢复到从库;

启动复制。

这里的问题是复制起始位点是 aaaa:101,从库上表 t 的数据状态是领先其他表的。aaaa:101-10000 这些事务中只要有修改表 t 数据的事务,就会导致复制报错 ,比如主键冲突、记录不存在(而 aaaa:101 这个之前复制报错的事务必定是修改表 t 的事务)

解决办法:启动复制时跳过 aaaa:101-10000 这些事务中修改表 t 的事务。

正确的修复步骤:

1. 在主库上备份表 t (假设备份快照 GTID 为 aaaa:1-10000),恢复到从库;

2. 设置复制过滤,过滤表 t:

CHANGE REPLICATION FILTER REPLICATE_WILD_IGNORE_TABLE = ('db_name.t');

3. 启动复制,回放到 aaaa:10000 时停止复制(此时从库上所有表的数据都在同一状态,是一致的);

START SLAVE UNTIL SQL_AFTER_GTIDS = 'aaaa:10000';

4. 删除复制过滤,正常启动复制。

注意事项:这里要用 mysqldump --single-transaction --master-data=2,记录备份快照对应的 GTID

场景 2

如果复制报错后,使用跳过错误、复制过滤等办法修复了主从复制。主、从库数据一直在更新。

修复步骤:

在主库上备份表 t (假设备份快照 GTID为 aaaa:1-10000);

停止从库复制,GTID为 aaaa:1-20000;

恢复表 t 到从库;

启动复制。

这里的问题是复制起始位点是 aaaa:20001,aaaa:10000-20000 这些事务将不会在从库上回放,如果这里面有修改表 t 数据的事务,从库上将丢失这部分数据。

解决办法:从备份开始到启动复制,锁定表 t,保证 aaaa:10000-20000 中没有修改表 t 的事务。

正确修复步骤:

对表 t 加读锁;

在主库上备份表 t;

停止从库复制,恢复表 t;

启动复制;

解锁表 t。

如果是大表,这里可以用可传输表空间方式备份、恢复表,减少锁表时间。

如何打开朋友传过来的Mysql数据库

如何往里面添加一个

字符型,长度为36

的字段?a:你需要把那个shows.myd

所在的那个文件夹拷贝到mysql安装目录的data目录下。

如果你是默认安装,应该在c:\program

files\mysql\mysql

server

5.0\data\

注意是整个shows那些文件所在的目录。连目录一起拷贝哈。按你的描述,就应该是data目录了。

将d:\data1\下的data目录拷贝到c:\program

files\mysql\mysql

server

5.0\data\下面。

完成之后,重启mysql看看,可以运行services.msc

在里面找到mysql

重新启动mysql。(前提是你安装的时候配置了mysql服务,我想你应该配置了吧)

重启之后

进入命令行,

然后mysql

-uroot

-p

进入mysql

show

databases;

看看能不能看到一个叫data数据库。

如果能看到,恭喜你,

继续下面的命令。

如果不行,看后面的方法b。

use

dataalter

table

shows

add

列名

类型

长度

等等举例:增加一个int型名为id的列

alter

table

shows

add

id

int(11)

not

null

default

'0';

alter

table

shows

add

name

varchar(32)

not

null

default

'';

如果需要指定列的位置,假如加入的列在number列后面。那么

alter

table

shows

add

id

int(11)

not

null

default

'0'

after

number;方法b。

如果按之前说的文件拷贝方式,重启进入mysql后看不到data

这个数据库,那么可能是你们的mysql版本不一致造成的,应该说这个可能性很大。

那么,你让你朋友给你导出数据库内容。

用mysqldump命令。

mysqldump

-uroot

-p

-d

数据库名.表名

sss.sql

你拿到这个sss.sql后

再把它导入到你的mysql数据库。

在cmd下运行

mysql

-uroot

-p

testsss.sql或者在mysql命令行下运行use

testsource

sss.sql

这样shows表就导入到你的test数据库了。

剩下的就简单了哈。和前面没啥差别。

怎么启动本地的mysql数据库

首先备份好你本地的数据库,方法如下。

1、用apmserv5.2.6(网站上面有下载)带的phpmyadmin

进行备份恢复。

a、运行apmserv5.2.6,

点击右边的“管理mysql

数据库”。服务器填写127.0.0.1:3306,

登入名称:root,密码为空进行登录。在左边是数据库列表。点击你的数据库。点导出、拉到

最下面把“另存为文件”打勾。点执行。这样你就可以备份你的数据库了。

2、运行mysql-front

备份恢复你的数据库。

a、新建一个登录。

信息栏中随便写一下名字。标识你的登录信息。

b、点击连接栏,分别填好:

服务器:服务器的ip

口:一般为3306

c、点击注册栏,分别填好:

户:你申请的数据库的用户名(如果是本地一般为root),

码:数据库的密码(本地为空)

数据库:你申请的数据库名。

填写好这些信息后点击“确定”这样就能链接到你的远程数据库了。左边这个远程数据。

服务器的一些数据库,点击你的数据库后等待链接。直至返回所有数据,你便能打开你的数据库。

中的数据表了。在这里你可以修改你的数据表结构,删除填加数据等(小心操作)。

d、右键点击你的数据库进行备份(输出)数据,有几种备份的类型,一般选sql。

mysql导出数据库,然后移植到另一台电脑要如何操作

有两种办法。

1、在b机器上装mysql。

将a机器上的mysql/data下的你的数据库目录整个拷贝下来。

将b机器上的mysql服务停止。

找到b机器上的mysql/data目录,将你拷贝的目录粘贴进去,然后启动mysql服务就可以了。

2、使用sql语句备份和恢复

你可以使用select

into

outfile语句备份数据,并用load

data

infile语句恢复数据。这种方法只能导出数据的内容,不包括表的结构,如果表的结构文件损坏,你必须要先恢复原来的表的结构。

语法:

select

*

into

{outfile

¦

dumpfile}

’file_name’

from

tbl_name

load

data

[low_priority]

[local]

infile

’file_name.txt’

[replace

¦

ignore]

into

table

tbl_name

select

...

into

outfile

’file_name’

在dos命令提示符下使用mysqldump命令进行备份.

如下:

c:\documents

and

settings\administratormysqldump

yinshi

c:\\backup.txt

-uroot

-p12142022

如何启动mysql linux ubutntu

1. 预使mysql开机自启动,首先需要注册mysql为ubuntu下的服务。

直接拷贝MySQL.server文件至/etc/init.d/目录下即可。

sudo cp $MYSQL_HOME/support-files/mysql.server /etc/init.d/mysql.server

sudo chmod +x /etc/init.d/mysql.server

2. 修改my.cnf,指定mysql的启动用户

定义:命令1=”./mysql.server start –user=user1“,命令2=”./mysql.server start”。(注意,命令1、2的区别在于红色部分)

在编译安装mysql的过程中,若执行configure命令时指定“–user=user1”参数,则mysql将由用户user1启动,在mysql.server文件中会有“user=user1”这样一行来指定mysql的启动用户,但该行指定的启动用户并未生效。即,需要使用命令1来启动mysql,命令2启动失败。

为了使命令2生效,同时为了mysql开机自启动,需要修改my.cnf,在[mysqld]区块下添加“user=user1”这样一行。如此,便可使用命令2启动mysql,mysql也可以成功开机自启动。

3. 设置mysql开机自启动

MySQL安装完成之后怎么启动?

安装完成后,有两种启动方式:

1、到服务面板里面启动mysql服务

2、在dos窗口下,通过命令net

start

mysql(你的服务名)

启动

启动后,可到mysql的安装目录的bin目录下,打开dos窗口,然后命令mysql

-uxxx

-pxxx

即可进入mysql客户端。

有问题欢迎提问,满意请采纳!


网站名称:php建后台数据库如何,php怎么建数据库
本文地址:http://cdkjz.cn/article/hdjjii.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220