MySQL 服务器管理操作
# 安装mysql服务器 sudo apt-get install mysql-server # 获取mysql服务器状态 ps aux | grep mysql sudo service mysql status # mysql服务器重启/启动/关闭 sudo service mysql restart/start/stop # 安装图形界面客户端 sudo apt-get install mysql-client # 登录 mysql服务器 mysql -u用户名 -p密码 # 会被history记录,不建议使用 mysql -u用户名 -p # 登出 quit/exit/Ctrl + d
-- 展示当前系统中所有的数据库 show databases; -- 切换到指定数据库使用 use 数据库名; -- 查看当前正在使用的数据库 select database(); -- 展示创建数据的细节 - SQL show create database 数据库名; -- 创建数据库 create database 数据库名 charset=utf8; --创建数据库时 一定要指定字符集 否则可能造成插入数据失败 -- 删除数据 慎重 drop database 数据库名;
表结构的基本操作-增删改查
增:create table ...(...)
删:drop table ...
改:alter table ... add/modify/change/drop ...
查:desc ...
-- 展示当前数据库的所有表 show tables; -- 展示创建表的 SQL 语句 show create table 表名; -- 查看表的表结构(描述) desc 表名; -- 创建表结构 create table 表名(字段名 类型 [约束],...); mysql> create table students( -> id int unsigned primary key not null auto_increment, -> name varchar(64) not null, -> age tinyint unsigned default 0, -> height decimal(5,2), -> gender enum('男','女','保密','未知')); -- 修改表结构 (如果表中已经有内容了,一定要加default) alter 表名table add 字段名Field 数据类型Type 约束Null,Key,Default,Extra; -- 往表中添加字段 alter table students add birthday datetime not null; -- 往students表中添加birthday字段 alter table students modify 字段名 新类型 新约束; -- 修改birthday字段的类型和约束 alter table students change 原名称 新名称 新类型 新约束; -- 修改字段的名字 alter table students drop 字段名称; -- 删除字段 -- 删除表 删除表结构和表数据 drop table 名称;
表内容的基本操作-增删改查
增:insert into ... values (...)
删:delete from ...
改:update ... set ...where
查:select ... from ...
-- 查询 select 如果需要查看表中所有字段 使用* 表示所有字段 select 字段名1,2,3... from 表名; select * from students; -- 添加 insert into 表名 (字段名1,2,3,4..) values (值1,2,3,4..),(一行数据) insert into students (id,name,age,height,gender) values (0,'Tom',18,172.00,'男'); insert into students (id,name,age,height,gender) values (0,'Tom2',19,173.00,'男'),(0,'jerry',19,160.00,'女'); -- 全列插入 如果插入的 所有字段 和 表中字段的顺序 数量 完全一致 可将字段元组省略(即使字段有默认值也要写上) insert into students values (0,'Tom2',19,173.00,'男'),(0,'jerry',19,160.00,'女'); -- 部分列插入 插入数据的数量或者顺序不是和表中完全一样 insert into students (name) values ('老王'),('老宋');
-- 更新 update 表名 set 字段名=值,字段2=值2 where 条件; update students set age=119 where id = 4; -- 删除 delete from 表名 where 条件; delete from 表名; --清空表数据 表结构还在