安装
ubuntu安装mysql
1. sudo apt-get install mysql-server
2. sudo apt-get install mysql-client
3. sudo apt-get install libmysqlclient-dev
centos安装
1. yum install mysql-server
2. yum install libmysqlclient-dev
centos中安装mysql-server之后,mysql-client就自动安装了
检验安装是否正确
登录
本地登录
远程登录
当mysql不能登陆时
方法一:
使用命令
ps -u mysql
查找mysqld的守护进程,杀死该进程导致mysqld重启。
方法二
使用命令
service mysql start
重启mysql服务
方法三:
可以用root切换到mysql用户,是一个虚拟用户,mysql安装的时候初始化,在home找不到
mysql常用命令
1、status
可以查看编码格式,如果数据库中存在乱码,可以通过这查看原因
2、show processlist——查看数据库连接状态
3、show global variables like 'socket'——查看socket文件位置
首先通过IP地址和端口号登录mysql,然后
注意:socket文件权限是777,不要修改,否则可能登录不上了
如果不小心删除socket文件,此时重启mysql即可。
4、explain——显示语句是如何执行的
mysql基础
表
- 表的每一行称为——记录(代表一个用户)
- 表的每一列称为——字段(代表用户的一个属性)
sql语句分类
mysql层级
mysql库的操作
查看所有数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
创建数据库
创建数据库mybd1,设置字符集为utf8
create database mydb1 character set utf8;
查看mydb1的创建方式
mysql> show create database mydb1;
+----------+------------------------------------------------------------------+
| Database | Create Database |
+----------+------------------------------------------------------------------+
| mydb1 | CREATE DATABASE `mydb1` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+------------------------------------------------------------------+
字符集默认是latin1 ,不支持中文
创建mydb2库,指定字符集为utf8
create database mydb2 character set utf8;
修改mydb1数据库的字符集为utf8
alter database mydb1 character set utf8;
要求对输入数据进行检查,要求为utf8格式
create database mydb3 character set utf8 collate utf8_general_ci;
删除数据库
drop database mydb1;
mysql表的操作
建表需要先选库
创建表
- int(10)代表最大的显示位
- varchar——边长的字符串类型
- 注意:表需要设置一个主键,主键不可重复也不能为空
mysql数据类型
查看表结构
1、查看表结构
2、查询表中的所有数据
3、查看表的建表语句
给表中加一个字段
column可加可不加
修改字段属性
修改字段名同时修改类型
删除字段
修改表的字符集
查看表的创建方式
engine=InonoDB——默认引擎,高速模式,支持事务,默认情况下事务不开启
- 数据库名——大小写敏感
- 表名——大小写敏感
- 字段——大小写不敏感
重命名表,需要加table关键字
删除表
mysql不支持回收站,删除就直接删除了。
mysql数据的操作
创建表格
create table employee(id int,
name varchar(20),
sex int,
birthday date,
salary double,
entry_date date,
resume text
);
插入数据以及查看数据
修改数据
删除数据
练手
创建一个表
1.查询表中所有学生的信息
2.查询表中所有学生的姓名和对应的英语成绩
3.查询所有出现的英语成绩(去掉重复)
4.在所有学生英语分数上加10分特长分
5.统计每个学生的总分(要用别名)
6.查询姓名为何东的学生成绩
7.查询英语成绩大于90分的同学
8.查询英语分数在 85-95之间的同学
9.查询数学分数为84,90,91的同学
10.查询数学分>85,语文分>90的同学
11.对总分排序后输出,然后再按从高到低的顺序输出
12.对姓何的学生总成绩倒序输出
13.统计总分大于250的人数有多少?
14.求最高分和最低分
15.给学生表增加一列,class_id(班级) int类型
16.将学生id为1-5的修改为1班,将学生id为6-10的修改为2班 。
17、求各个班英语的平均分
mysql group语法检查不严格。
18、求各个班的总成绩
19、求总成绩大于1300的班级
mysql 函数相关
查看当前日期
昨天今天和明天
求明年的今天