数据库

数据库的备份和恢复

数据库备份

  1. 使用mysqldump命令备份
    mysqldump是MySQL提供的一个非常有用的数据库备份工具。该实用程序存储在C:\Program Files\MySQL\MySQL Server 5.1\bin文件夹中。该命令执行时,可以将数据库备份成一个文本文件,文件中包含多个GREATE和INSERT语句,使用这些语句可以重新创建表和插入数据。
    Mysqldump –u user –h host –ppassword database_name[table_name, [table_name…]]>filename.sql;
    注意:mysqldump命令在DOS的 mysql\bin 目录下执行,不能在mysql环境下执行,因此,不能以分号“;”结尾。若已登录mysql,请运行退出命令mysql> exit。
  2. Navicat工具
    打开数据库,单击工具栏中的“备份”按钮或数据库下的“备份”节点:
    单击保存按钮,可进行备份文件名的设置,备份完成后点击关闭即可:
    右击备份好的文件,选则属性,可在常规选项卡中查看备份文件所在位置
  3. 直接复制整个数据库文件夹
    使用该方法时,最好先将服务器停止,这样可以保证在备份期间数据不会发生变化。此方法对InnoDB存储引擎的表不适用。(一般不建议使用)
    注意:备份文件之前,执行:
    Flush tables with read lock;
    把内存数据都刷新到磁盘中。

数据库恢复

若想对数据库进行操作,首先要打开数据库。

  1. 对于使用mysqldump命令备份后生成的.sql文件,可以使用mysql命令导入到数据库中。
    mysql -u root -p sc<e:scback.sql
    如果已经登录数据库,还可以使用source命令导入数据库文件。

  2. Navicat工具
    把备份文件放到默认文件夹下,新建SC数据库,单击数据库下的备份节点,点击恢复备份:

  3. 直接复制到数据库目录
    如果数据库通过复制数据库文件备份,可以直接复制备份的文件到MySQL数据目录下实现还原。使用该方法时,必须保证备份的数据库和待还原的数据库服务器的主版本号相同。这种方法只对MyISAM存储引擎的表有效,对InnoDB存储引擎的表不适用。

char和varchar

1.都可以通过指定n,来限制存储的最大字符数长度,char(20)和varchar(20)将最多只能存储20个字符,超过的字符将会被截掉。n必须小于该类型允许的最大字符数。
2.char类型指定了n之后,如果存入的字符数小于n,后面将会以空格补齐,查询的时候再将末尾的空格去掉,所以char类型存储的字符串末尾不能有空格,varchar不受此限制。
3.内部存储的机制不同。char是固定长度,char(4)不管是存一个字符,2个字符或者4个字符(英文的),都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入一个字符将占用2个字节,2个字符占用3个字节,4个字符占用5个字节。
4.char类型的字符串检索速度要比varchar类型的快。

char和text

1.都是可变长度的,最多能存储65535个字符。
2.varchar可指定n,text不能指定,内部存储varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),text是实际字符数+2个字节。
3.text类型不能有默认值。
4.varchar可直接创建索引,text创建索引要指定前多少个字符。查询速度varchar要快于text,在都创建了索引的情况下,text的索引好像没起作用

表的命名

完整的数据表名称应该由数据库和表名两部分组成。
命名规则:
(1)名字可以由当前字符集中的任何字母数字字符组成,下划线和美元符号,也可以。
(2)名字最长为64个字符。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值