使用mysqldump备份mysql数据库

1.权限授予一览表

权限 权限限定语句 说明 授予语句
Show_db_priv 用户只可以用show databases语句 查看数据库名 SHOW DATABASES
Select_priv 用户可以使用show语句、use语句、desc语句、select语句 只读权限,除了不可以修改、增加和删除,可以获取一切数据 SELECT
Insert_priv 用户可以使用show语句、use语句、insert语句 可以看到数据库名、表名,向表中增加数据 INSERT
Update_priv 用户可以使用show语句、use语句、update语句、不能使用where子句 可以更改表中已经存在的数据,但需要SELECT权限一起完成 UPDATE
Delete_priv 用户可以使用show语句、use语句、delete语句、不能使用where子句 可以删除表中已经存在的数据 DELETE
Create_priv

2.所有的主句与子句

参考主体:http://c.biancheng.net/view/2600.html

2.1.CREATE主句

  • CREATE DATABASE IF NOT EXISTS <数据库名> DEFAULT CHARACTER SET <字符集名> DEFAULT COLLATE <排序方法名> ;
  • CREATE TABLE IF NOT EXISTS <表名> ( <列名> <数据类型> [<约束>] [,<列名> <数据类型> [<约束>] ] [,<约束 > ] )
    • 整数类型:TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT
    • 浮点数类型:FLOAT、DOUBLE
    • 定点数类型:DECIMAL
    • 日期/时间类型:YEAR、TIME、DATE、DATETIME、TIMESTAMP
    • 字符串类型:CHAR、VARCHAR、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT、ENUM、SET
    • 二进制类型:BIT、BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB
    • 主键约束:PRIMARY KEY、PRIMARY KEY(主键列1,主键列2,…,主键列n)
    • 外键约束:[CONSTRAINT <外键名>] FOREIGN KEY (外键列1,外键列2,…,外键列n) REFERENCES <主表名>(主键列1,主键列2,…,主键列n)
    • 唯一约束:UNIQUE、CONSTRAINT <唯一约束名> UNIQUE(<列名>)
    • 检查约束:CHECK(<表达式>)、CONSTRAINT <检查约束名> CHECK(<表达式>)
    • 非空约束:NOT NULL
    • 默认值约束:DEFAULT <默认值>
  • CREATE VIEW <视图名> [(列名1,列名2,…,列名n)] AS <SELECT语句>
  • CREATE FUNCTION <函数名> ( [ <参数1> <类型1> [ , <参数2> <类型2>] * ] ) RETURNS <类型> <函数主体>
  • CREATE PROCEDURE [<数据库名>.]<过程名> ( [ [ IN | OUT | INOUT ] <参数1> <类型1> [ ,[ IN | OUT | INOUT ] <参数2> <类型2>] * ] ) <过程体>
    • 自定义结束符号:DELIMITER <自定义符号(反斜杠除外)>
  • CREATE TRIGGER [<数据库名>.]<触发器名> < BEFORE | AFTER > <INSERT | UPDATE | DELETE > ON <表名> FOR EACH ROW <触发器主体>
  • CREATE [UNIQUE] INDEX <索引名> ON <表名> (<列名> [<长度>] [ ASC | DESC] [,<列名> [<长度>] [ ASC | DESC]]* )
  • CREATE USER <用户名@主机名> IDENTIFIED BY [ PASSWORD ] <口令>

1.创建备份账号

create user [email protected]‘127.0.0.1‘ identified with mysql_native_password by ‘‘;
grant super,reload,event,select,show view,lock tables,trigger on . to [email protected]‘127.0.0.1‘;
flush privileges;br/>SQLDUMP_PASSWD=‘[email protected]‘
ROOT_PASSWD=‘m4r!adbOP‘
mysql -uroot -p"${ROOT_PASSWD}" -e "CREATE USER [email protected]‘127.0.0.1‘ IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY ‘${SQLDUMP_PASSWD}‘;"
mysql -uroot -p"${ROOT_PASSWD}" -e "GRANT SUPER,

使用mysqldump备份mysql数据库

原文地址:https://blog.51cto.com/14296289/2421098

时间: 2024-10-20 11:52:34

使用mysqldump备份mysql数据库的相关文章

Linux Shell脚本之利用mysqldump备份MySQL数据库(详细注解)

设计该脚本的一些设计.编写考虑: 该脚本适用于编译安装mysql和通过yum或apt-get等安装方式 该脚本可以反复执行,不会重复覆盖数据 可增加,删除N天前的备份以节省磁盘空间 充分利用mysqldump的自带锁表功能.刷新日志.复制等功能 利用mysqldump命令备份MySQL数据库的脚本(不带注释版,适合生产环境使用) #!/bin/bash MYSQLDBUSERNAME=root MYSQLDBPASSWORD=password MYSQBASEDIR=/usr/local/mys

mysqldump备份mysql数据库

1 mysqldump -uroot -p123 db> e:/db.sql mysqldump命令与mysqld及mysqldump命令同在mysql/bin/目录下,执行时要么切换到该目录要么将该目录加入环境变量. 注:用户名,密码不能有空格,密码不能为空,否则备份到的文件是空的. 该命令在php及python里都可用.

备份MySQL数据库的命令

这篇文章主要介绍了mysql数据库备份常用语句,包括数据库压缩备份.备份多个MySQL数据库.备份多个MySQL数据库.将数据库转移到新服务器等语句 代码如下: mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql 备份MySQL数据库为带删除表的格式 备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库. 代码如下: mysqldump -–add-drop-tab

Shell脚本-----自动备份Mysql数据库

脚本的整体思路 1.定义需要的变量 2.利用for循环备份需要备份的库,并以库名-当天日期.sql命名,并记录相关日志 3.建立备份当天的日期的目录,向备份的Sql文件移动到该目录 4.压缩打包该目录,以节省空间,打包成功后删除该目录 5.备份目录只备份七天的数据库,第八天删除第一天的备份,目录只会存在连续七天的备份文件 6.查找备份目录下的.log日志文件,超过七天的删除 #!/bin/bash mysql_bin=/usr/local/tdoa/mysql/bin/mysqldump use

[转]一个备份MySQL数据库的简单Shell脚本

本文翻译自 iSystemAdmin 的 <A Simple Shell Script to Backup MySQL Database> Shell脚本是我们写不同类型命令的一种脚本,这些命令在这一个文件中就可以执行.我们也可以逐一敲入命令手动执行.如果我们要使用shell脚本就必须在一开始把这些命令写到一个文本文件中,以后就可以随意反复运行这些命令了. 我首先要在本文带给你的是完整脚本.后面会对该脚本做说明.我假定你已经知道shell scripting. mysqldump和cronta

批处理命令 BAT备份MySQL数据库

原文:批处理命令 BAT备份MySQL数据库 工作环境 Windows Server 2003 ,MySQL安装目录 D:\MySQL , WinRAR 安装目录 C:\Program Files\WinRAR\WinRAR.exe 备份数据存储的路径为 E:\数据备份,好了下面开始写DOS批处理命令了.代码如下: set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%" md "E:\数据备份\%ymd%" "D:\MySQL

Linux下定时备份MySQL数据库的Shell脚本

Linux下定时备份MySQL数据库的Shell脚本 对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间和精力,还灰常不专业的说.于是,有了下面这段脚本的出现.参考了网上的很多教程,外加自己的测试,以下脚本经测试可用.#!/bin/bash#Shell Command For Backup MySQL Database Everyday Automatically By Crontab#Author :

linux下远程备份mysql数据库

本次环境主要是远程备份mysql数据库的一种常见方法,对于其他知识不做太多讲解. 环境需求: 两台linux:一台mysql数据库服务器,另一台当作客户端用来做备份. 环境目标: 实现mysql数据库的远程备份 例子: (A为服务端ip为192.168.1.1    B为客户端ip为192.168.1.2) 1.首先你得在A上建立一个数据库(建立数据库名称我以 xianyu 为例) create database xianyu;   (建立数据库xianyu) 2.在A上建立一个数据库用户用来做

备份MySQL数据库

备份MySQL数据库脚本: #!/bin/bash # description: MySQL buckup shell script # author: lmj # web site: http://www.cnblogs.com/dscode st=$(date +%s) USER="root" # 用户名 PASSWORD="root" # 密码 DATABASE="myblogdb" # 数据库 MAIL="[email prot