MySQL
MySQL数据库是一个关系型数据库
MySQL数据库特点
- 使用C和C++编写,并使用多种编译器进行测试,保证可移植性
- 支持多种系统:如Linux、Windows、MacOS、AIX
- 为多种编程语言提供API、如C、C++、php、Java、Python、Ruby
- 支持多线程,充分利用CPU资源
- 支持SQL查询语句优化,有效提高查询速度
- 提供多语言编码如GB2312、UTF-8
- 支持多种存储
- 支持大型数据、能处理拥有上千万条记录
- 提供用于管理、优化、检查数据的管理工具
- MySQL数据库分为社区版和商业版,体积小、速度快、成本低尤其是开源代码
- MySQL使用标准sql数据语言形式
- 复制全局事物标识
- 复制无崩溃从机
服务端(server)
开启服务
1
sudo service mysql start
停止服务
1
sudo service mysql stop
重启服务
1
sudo service mysql restart
数据库操作命令
Mysql安装命令
1
sudo apt-get install mysql-server
mysql启动运行
1
sudo service mysql start
查看mysql是否运行进程
1
ps ajx|grep mysql
Mysql数据库连接登陆
1
mysql -u 用户名 -p 密码
mysql数据库退出
1
quit或者exit或者ctrl+d
查看mysql版本和目前时间
1
2select version();
select now();修改输入提示符
1
Prompt >>>
查看Mysql所有数据库
1
show databases;
使用数据库
1
user 数据库名称;
查看当前使用的数据库名称
1
select database();
创建数据库
1
create database 数据库名 chareset = utf8;
删除数据库
1
drop database 数据库名
数据表操作
查看当前数据库中所有表
1
show tables;
查看表结构
1
2desc 表名;
desc classes;创建表并表单自动增长(auto_increment)
1
2
3create table 表名(
id int unsigned primar key not null auto_increment
);修改表数据——添加字段
1
alter table 表名 add 列名 类型;
修改表数据——重命名修改(change)
1
alter table 表名 change 原名 新名 类型及约束;
修改表数据——修改字段——不重命名版(modify)
1
alter table 表名 modify 列名 类型及约束;
删除字段——修改表
1
alter table 表名 drop 列名;
删除数据表
1
drop table 表名;
查看表的创建
1
show create table 表名;
数据操作
数据增加
格式:Insert [into] 表名 values(…);
全列插入:insert into 表名 values(0,”小明”,1,”汉族”,”2010-1-1”);
指定列插入:insert into 表名(name,age,gender)values(“小明”,”18”,”4”);
批量插入: insert into 表名(列1,…) values(值1,…),(值1,…)…;数据修改
格式:updata 表名 set 列1=值1,列2=值2 … where条件;
栗子:updata A1 set L1 = 0, L2=”值” where id = 5;数据删除
格式:delete from 表名 where 条件判断
栗子:delete from A1 where id =5;
注:逻辑删除本质就是修改操作
updata A1 set 列1= 1 where id =1;
提示:如果数据删除时不加where条件判断会删除表里的所有数据
数据备份
mysqldump -u用户名 -p数据库名 > 新文件.SQL数据恢复
mysql -u用户名 -p新数据库名 < 文件名.SQL