mysql 基础命令整理

34 篇文章 1 订阅

一、linux命令行进入数据库

1. linux进入登录mysql

     #mysql -u用户名 -p #u指定用户名,-p之后回车,提示输入数据库密码进行登录   示例里用户名为root

  mysql -uroot -p

二、数据库命令行操作

 2. 显示所有库

show databases;

3. 创建数据库

-- 创建名为test_db的数据库,字符集设置为utf8mb4,字符集排序规则为utf8mb4_croatian_ci
create database test_db default charset utf8mb4 collate utf8mb4_croatian_ci;

4. 进入并使用某个库  #进入名为test_db的库

use test_db;

5. 导入数据库文件

-- 导入/root/test/目录下的test_db.sql文件
source /root/test/test_db.sql;

 6 . 显示test_db库中所有表名

show tables;

7. 显示当前库中所有表的基本信息(所在库、表名、使用的引擎、数据行数、数据大小、表备注等)

select * from information_schema.`TABLES` t WHERE t.TABLE_SCHEMA = (select database())

8. 创建表(建议去看看 MySQL 创建数据库 | 菜鸟教程)

-- 删除test_tb表
DROP TABLE IF EXISTS `test_tb`;
-- 创建test_tb表以及表中各字段
CREATE TABLE `test_tb` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `articleTitle` varchar(500) DEFAULT NULL COMMENT '文章标题',
  `createTime` bigint(20) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

9. 索引创建

-- 1.为test_tb表的column_1字段添加PRIMARY KEY(主键索引) 
ALTER TABLE `test_tb` ADD PRIMARY KEY (`column_1`) ;

-- 2.为test_tb表的column_2字段添加UNIQUE(唯一索引) 
ALTER TABLE `test_tb` ADD UNIQUE (`column_2`);

-- 3.为test_tb表的column_3字段添加INDEX(普通索引) 索引名为index_name
ALTER TABLE `test_tb` ADD INDEX index_name (`column_3`);

-- 4.为test_tb表的column_4字段添加FULLTEXT(全文索引) 
ALTER TABLE `test_tb` ADD FULLTEXT (`column_4`);

-- 5.为test_tb表的column_1、column_2、column_3字段添加多列索引 索引名为index_name
ALTER TABLE `test_tb` ADD INDEX index_name (`column_1`, `column_2`, `column_3`);

10. 新增、修改、删除 字段

-- 在test_tb 表的 valid_status 字段之后 新增一个字段,设置对应的类型,长度,是否为null,默认值,注释
ALTER TABLE test_tb ADD COLUMN `is_staff` tinyint(2) NOT NULL DEFAULT '0' COMMENT '是否是从业人员 0否 1是' AFTER `valid_status`;



-- 修改字段column1的类型
ALTER TABLE test_tb MODIFY column1 VARCHAR(10) NOT NULL DEFAULT '' COMMENT '字段注释';
 
-- 修改字段column_old 的名称为 column_new,此时要重新指定该字段的类型
ALTER TABLE test_tb CHANGE column_old column_new VARCHAR(10) NOT NULL DEFAULT '' COMMENT '字段注释';



-- 删除test_tb表的 column1字段 
ALTER TABLE test_tb DROP COLUMN column1;

 11. 查询表、字段信息


-- 查询表的结构(所有字段、索引 等)
DESC 表名;

-- 第一种: 表中所有字段信息

select COLUMN_NAME,COLUMN_COMMENT from information_schema.columns where  table_name='表名'

-- 第二种: 查询指定字段信息

select COLUMN_NAME,COLUMN_COMMENT from information_schema.columns WHERE column_name='字段名' and table_name = '表名'

-- 第三种: 查询表信息与字段信息

SELECT * FROM information_schema.columns WHERE COLUMN_NAME='字段' and table_name = '表名';

SELECT * FROM information_schema.columns WHERE table_name = '表名';

12. 退出mysql命令行窗口

-- 退出mysql命令模式
exit;

二、linux命令导出数据库

13. linux命令导出数据库.sql文件

# 导出名为test_db的数据库,到/root/目录下,文件名为test_db.sql
mysqldump -uroot -p test_db > /root/test_db.sql

# 使用 --no-data 表示仅备份库结构
mysqldump -u 用户名 -p --no-data 数据库名 >  /data/文件名.sql
 
# 使用 --no-data 表示仅备份表结构
mysqldump -u 用户名 -p --no-data 数据库名 表名 >/data/文件名.sql

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值