原文: 【培训】MySQL

yum安装mysql:yum -y install mysql*- 或者 yum -y install mysql*

启动数据库服务:/etc/init.d/mysqld start 或者 service mysqld start

初始安全设置:

只保留一条允许root用户从本地连接的记录

delete from mysql.user where (user,host) not in (select 'root','localhost');

将root用户名修改为system

update mysql.user set user='system',password=password('newpass') where user='root';

flush privileges;   #mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问#

show databases;

create database yyzc;

show create database yyzc;

drop database yyzc;

用户管理:

创建用户 create user test

修改密码set password for test=password(‘test123’)

Grant方式创建用户 grant select@’yyzc’.* to test

删除用户drop user test@10.133.12.138

Grant方式创建用户:grant select@yyzc.* to test;

权限级别:

Mysql权限从大的粒度上分成5类:全局、数据库、表、列、程序

全局:grant create on *.* to test;

数据库:grant create on yyzc.* to test;

查看和收回权限: 

查看权限show grants for test;

收回权限revoke create on *.* from test;

收回所有权限revoke all privileges, grant option from test

insert into命令用于向表中插入数据。

insert into命令格式:insert into <表名> [(<字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )];

例如:往表 MyClass中插入两条记录,这两条记录表示:编号为1的名为Tom的成绩为96.45,编号为2 的名为Joan 的成绩为82.99,编号为3 的名为Wang 的成绩为96.5。
    mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);

注意:insert into每次只能向表中插入一条记录。

1. create database yyzc; show database yyzc;z drop database yyzc;
2. show engines; show variables like 'have %'; Alter table user engine=myisam
3. mysql -h localhost -u root -p; enter passwork
4. 创建、修改和删除表

创建表

1). create table example_0(id int,name varchar(20),sex boolean);

2). create table example_1 (stu_id int primary key, stu_name varchar(20),stu_sex boolean);

3). create table example_2 (stu_id int,course_id int grade float,primary key(stu_id, course_id));

4). create table example_3 (id int primary key, stu_id int course_id int, Constraint c_fk foreign key(stu_id,course_id) references example_2(stu_id,course_id));

5). create table example_4 (id int not null primary key, name varchar(20) not null, stu_id int, Constraint d_fk foreign key(stu_id) references example_1(stu_id) );

6). create table example_5(id int primary key, stu_id int unique, name varchar(20) not null);

7). create table example_6(id int primary key, Auto_increment, stu_id int unique, name varchar(20) not null);

8). create table example_7(id int primary key, Auto_increment, stu_id int unique, name varchar(20) not null English varchar(20) default 'zero', Math float default 0, Computer Float default 0); desc user show create table user

修改字段

1). alter table example rename user

2). alter table example modify name varchar(20)

3). alter table example change stu_name name varchar(20)

4). alter table example change stu_sex sex int(2)

增加字段

5). alter table user add phone varchar(20)

6). alter table user add age int(4) not null

7). alter table user add num int(4) primary key first

8). alter table user add address varchar(40) not null after phone

删除字段

9). alter table user drop id

10). alter table user modify name varchar(20) first

11). alter table user modify sex tinyint(1) after age

删除表外键约束

alter table example drop foregin key c_fk
删除表

1). dorp table example

2). alter table example drop foreign key d_fk, drop table example

备份:mysqldump -uroot -p yyzc department > /home/admin/yyzc_backup.sql

恢复:mysql -uroot -p yyzc < /home/admin/yyzc_backup.sql

备份所有数据库

mysqldump -uroot -p --all-database > all.sql

备份数据库test

mysqldump -uroot -p test > test.sql

备份数据库test下的表emp:

mysqldump -uroot -p test emp > emp.sql

备份数据库test下的表emp和dept:

mysqldumo -uroot -p test emp dept > emp_dept.sql

备份数据test下的所有表为逗号分割的文本,备份到/tmp:

mysqldump -uroot -T /tmp test emp --fields-terminated-by ','

more emp.txt

mysqldumo的选项很多,额可以使用mysqldump -help查看帮助;

完全恢复:

上午九点,备份数据库:

mysqldump -uroot -p -l -F test>test.dmp   (-l表示给所有表加读锁,-F表示生成一个新的日志文件)

9点半备份完毕,插入新的数据:

mysql> insert into emp values(5,'z5');

mysql>insert into emp values(6,'z6');

10点,数据库突然故障,数据无法访问,需要恢复备份:

mysql -uroot -p tset < test.dmp

使用mysqlbinlog恢复自mysqldump备份以来的BINLOG:

mysqlbinlog localhost-bin.000015 | mysql -u root -p test

基于时间点恢复

基于位置恢复

MySQL基础操作——转的更多相关文章

  1. MYSQL基础操作

    MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...

  2. MYSQL 基础操作

    1.MySQL基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t1; --创建一个和t1一样的表,用like(表结构也一样 ...

  3. 【MySQL】MySQL基础操作语句

    mysql基础操作语句,包括数据库的增.删.切换,以及表的增.删.改.查.复制. 创建数据库 mysql> create database tem; 使用数据库 mysql> use te ...

  4. MySQL基础操作&&常用的SQL技巧&&SQL语句优化

    基础操作     一:MySQL基础操作         1:MySQL表复制             复制表结构 + 复制表数据             create table t3 like t ...

  5. mysql数据库优化课程---13、mysql基础操作

    mysql数据库优化课程---13.mysql基础操作 一.总结 一句话总结:mysql复制表,索引,视图 1.mysql如何复制表? like select * 1.复制表结构 create tab ...

  6. MySQL基础操作(二)

    MySQL基础操作 一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用.注意:使用视图时 ...

  7. 前端笔记之服务器&Ajax(中)MySQL基础操作&PHP操作数据库&Ajax

    一.数据库基础 1.1什么是数据库? 什么是数据库? 答:就是一个很大的一个文件,只不过这个文件可以通过一些‘命令’操作数据: 增.删.改.查数据: 数据库等于持久数据和数据操作的一个统称. 数据库是 ...

  8. PHP mysql基础操作

    mysql连接操作 //建立连接$con = mysql_connect('localhost', 'root', '123456');//判断是否连接成功if($con){ die('连接失败!'. ...

  9. 02 . Mysql基础操作及增删改查

    SQL简介 SQL(Structured Query Language 即结构化查询语言) SQL语言主要用于存取数据.查询数据.更新数据和管理关系数据库系统,SQL语言由IBM开发. SQL语句四大 ...

  10. JSP中的数据库操作,MySQL基础操作(一)

    一.JDBC JDBC(java data base concectivity),是一种用于执行SQL语句的java API,可以为多种关系库提供统一访问. 通常使用JDBC完成以下操作: 1)同数据 ...

随机推荐

  1. asp.net网页防刷新重复提交、防后退解决办法!

    原文发布时间为:2008-10-14 -- 来源于本人的百度文章 [由搬家工具导入] 1、提交后 禁用提交按钮(像CSDN这样)2、数据处理成功马上跳转到另外一个页面! 操作后刷新的确是个问题,你可以 ...

  2. java打开本地应用程序(调用cmd)---Runtime用法详解

    有时候我们需要借助java程序打开电脑自带的一些程序,可以直接打开或者借助cmd命令窗口打开一些常用的应用程序或者脚本,在cmd窗口执行的命令都可以通过这种方式运行. 例如: package cn.x ...

  3. SGU 106 The equation【扩展欧几里得】

    先放一张搞笑图.. 我一直wa2,这位不认识的大神一直wa9...这样搞笑的局面持续了一个晚上...最后各wa了10发才A... 题目链接: http://acm.hust.edu.cn/vjudge ...

  4. Intersecting Lines--POJ1269(判断两条直线的关系 && 求两条直线的交点)

    http://poj.org/problem?id=1269 我今天才知道原来标准的浮点输出用%.2f   并不是%.2lf  所以wa了好几次 题目大意:   就给你两个线段 然后求这两个线段所在的 ...

  5. 【Todo】STAR面试法

    今天在面试培训的时候,接触到了STAR面试法. 觉得挺好的,用来准备非技术面试,还蛮全面的.所以可以多了解一下. 可以参考:http://www.hrloo.com/rz/73652.html

  6. 【c++】c++一些基础面试题

    http://www.mianwww.com/html/2013/10/19128.html http://blog.csdn.net/wdzxl198/article/details/9050751 ...

  7. Windows——cmd findstr 字符串查找增强使用说明

    在文件中寻找字符串. 复制代码代码如下: FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file] [ ...

  8. 每天一个JavaScript实例-获取元素当前高度

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  9. 答读者问(6):有关IT培训和毕业之前的迷茫等问题

    近期在微博上与一些读者朋友们交流,发现大家对自己的未来都比較的关心.有些朋友认为在大学里面没有学到什么东西,问我要不要到一些IT培训机构去"速成".另一些朋友即将毕业,不知道自己走 ...

  10. 数据结构-二叉树的遍历(类C语言描写叙述)

    遍历概念     所谓遍历(Traversal)是指沿着某条搜索路线.依次对树中每一个结点均做一次且仅做一次訪问.訪问结点所做的操作依赖于详细的应用问题. 遍历是二叉树上最重要的运算之中的一个,是二叉 ...