mysql的常用基本操作

一、数据库介绍
mysql是最流行的关系型数据库管理系统之一,是由MySQL AB 公司开发,目前属于Oracle公司产品。
MySQL软件采用双授权政策,分为社区版和商业版。体积小、速度快, 开放源码,一般中小型网站开发都选择MySQL作为网站的数据库。
关系型数据库理解:将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
其他大型数据库有:Oracle、DB2、SQL Server.
Linux 作为 操作系统 ,Apache 或 Nginx 作为  Web  服务器,MySQL 作为 数据库 ,PHP/Perl/ Python 作为服务器端 脚本 解释器 。由于这四个软件都是免费或 开放源码 软件( FLOSS ),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的 网站系统 ,被业界称为“ LAMP “或“ LNMP ”组合。


二、存储引擎
例如,如果你想要研究临时数据,也许你需要使用到内存存储引擎。内存存储引擎是能够在内存中存储所有数据。又或者你需要一个支持事务处理的数据库。等等这些不同的技术以及配套的相关功能,在MySQL中被称作存储引擎(表类型)。
MySQL有不同的存储引擎,可以预先设置或者在MySQL服务器中开启。
在MySQL中查看提供的存储引擎:show engines;
MySQL数据库的存储引擎:
MySQL的存储引擎包括:MYISAM、InnoDB、BDB、MEMORY、 MERGE、EXAMPLE、NDBCluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等,其中InnoDB和BDB是提供事务安全的表,其他是非事务安全表。
最常用的2个存储引擎:
Myisam是默认存储引擎,当create创建新表时,未指定新表的存储引擎时,默认使用Myisam。每个MyISAM在磁盘上存储成三个文件。文件名都和表名相同,扩展名分别是.frm(存储表定义)、.MYD(MYData,存储数据)、.MYI(MYIndex,存储索引)。数据文件和索引文件可以放置在不同的目录,平均分布io,获得更快的速度。
InnoDB是MySQL5.5以上版本的默认引擎,具有提交、回滚和崩溃恢复能力的事务安全,但是对比Myisam的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。
修改mysql的默认存储引擎
 1、查看mysql存储引擎命令,
在mysql>提示符下搞入show engines;
字段 Support为:Default表示默认存储引擎  
  www.2cto.com  
2、设置InnoDB为默认引擎:
在配置文件my.cnf中的 [mysqld] 下面加入
default-storage-engine=INNODB 一句
 
3、重启mysql服务器:
mysqladmin -u root -p shutdown
或者service mysqld restart 登录mysql数据库



三、MySQL的基本操作
1. 查看show
show databases; #查看所有的库
use 库名;show tables; #查看某个库下的所有表
show engines; #查看数据库的存储引擎
show variables like '%storage_engine%'; #查看当前默认的存储引擎
show create table 表名; #查看创建的表的情况
show status; #查看状态
use 库名;desc 表; #查看某库下的某个表的数据结构

2. 查看select
select version(); #查看当前版本
select user(); #查看当前用户
select database(); #查看当前的库
select user,password,host from mysql.user; #查看mysql库下的user用户
use 库名;select * from 表名; #查看表的数据
select * from 库名.表名; #也是查看库下的表的内容

3. 创建create以及插入insert
(1)create database 库名; #创建库
(2)create table 表名; #创建表
(3)create table 表名 (`字段名` int(1), `字段名` char(10)); #创建表和表中的字段、int和char是字段类型,()内的数字是这个 字段占用的字节,储存长度。
更过了解数据类型: http://www.cnblogs.com/Maxq/p/5216416.html
(4)insert into 库名 value('对应第一个字段的内容','对应的第二个字段的内容'); #往新建的表的字段中插入数据,对应字段的数据。
(5)select * from 表名; #查看表的内容



4. 授权grant,创建用户和密码,删除授权revoke
grant all on *.* to 'user'@'IP' identified by '密码'; #授权给某个用户权限设置密码
grant all on discuz.* to 'user'@'IP' identified by '密码';
revoke all on *.* from 'user'@'IP'; #取消授权

5.更新密码update
update user set password=password(密码) where user='用户'; #更新密码
需要在对应的库下
mysql.user指的是mysql库下的user。

6. 删除drop、delete
drop database 库名; #删除库
use 库名;drop table 表名; # 删除库下的表
delete from 表名 where 字段名 = 字段内容; #delete删除某表的某行数据,字段名若是中文需要加反引号。

7. 数据备份mysqldump还原mysql
mysqldump -u root -p 库名 > 文件名.sql #mysqldump备份数据库
mysql -u root -p 库名 < 文件名.sql #mysql还原数据库
mysqldump –uroot –p –default-character-set=utf8 db >1.sql #备份时指定字符集
mysqldump -uroot -p 库名 表名 > 文件名.sql
更过数据备份了解: http://www.jb51.net/article/74613.htm
冷备(cold backup):需要关mysql服务,读写请求均不允许状态下进行;
温备(warm backup): 服务在线,但仅支持读请求,不允许写请求;
热备(hot backup):备份的同时,业务不受影响。
注:
这种类型的备份,取决于业务的需求,而不是备份工具
MyISAM不支持热备,InnoDB支持热备,但是需要专门的工具
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值