MySQL常用命令

一、MySQL安装及状态查看

1.1  安装mysql

将安装包mysql.tar.gz放到服务器某个目录下,比如:/home/mysql目录下

进入此目录,执行解压、安装命令:

解压:tar -zxvf mysql.tar.gz

进入解压后文件目录:cd mysql

 执行安装命令:./install.sh install

1.2  校验MySQL安装的正确性

出现如下图所示,表明Mysql数据库安装成功:

输入命令:service mysql status

1.3  停止mysql

        命令:service mysql stop

1.4  登录MySQL

 输入命令:mysql -u root -p   回车,输入密码即可进入到mysql中

出现如下图,即表明数据库登录成功

二、操作数据库

2.1 创建数据库

命令:create database test_myql(库名) DEFAULT CHARSET utf8;

        说明:DEFAULT CHARSET utf8设置数据库默认编码为utf-8

2.2 显示数据库列表

命令:show databases;

2.3 选择数据库

命令:use  database_name;

示例:use test_myql;

2.4 创建数据表

命令:

create table table_name (
    column1 datatype,
    column2 datatype,
    ...
);

示例语句:

create table users (
    id int auto_increment primary key,
    username varchar(50) not null,
    email varchar(100) not null,
    birthdate date,
    is_active boolean default true
   );

2.5  查看表结构

命令:describe 表名;

示例:describe users;

2.6 显示数据库中的表

命令:show tables;

2.7 插入数据

命令:insert into table_name (column1, column2,  ...) values (value1, value2,  ...);

        示例:insert into users (username, email, birthdate, is_active) values ('test', 'test@163.com', '1999-11-22', true);

2.8 查询表中数据

命令:select  *  from table_name;

        示例:select * from users;

2.9 更新数据表数据

命令:update table_name  set column1 = value1, column2 = value2, ...   where condition;

        示例:update users set username='test1' where id=1;

2.10 删除表中指定行的数据

命令:delete from table_name  where condition;

        示例:delete from users where username='test1';

2.11 删除表中所有数据

方法一:通过delete删除

命令:delete from table_name;

        示例:delete from users;

方法二:通过truncate删除

命令:truncate table table_name;

        示例:truncate table users2;

2.12 插入多条数据

命令:insert into table_name (column1, column2,  ...) values (value1, value2,  ...),(value11, value22,  ...);

示例: insert into users (username, email, birthdate, is_active) values ('test11', 'test11@163.com', '1997-01-23', true),('test22', 'test22@163.com', '1998-02-15', true),('test33', 'test33@163.com', '1999-03-29', true);

2.13 模糊搜索

百分号% 通配符表示零个或多个字符。例如,'t%' 匹配以字母 't' 开头的任何字符串

示例:select * from users where username like 't%';

下划线_ 通配符表示一个字符。例如,'_i%' 匹配第二个字母为 'i' 的任何字符串

        示例:select * from users where username like '_i%';

组合使用 % 和 _进行搜索

示例:select * from users where username like '_e%';

        '_e%'说明:开头是一个任意字符的字符串,接着是'e',最后是零个或多个字符

not like用于在指定的列中筛选出不符合指定模式的数据,语法如下:

select * from table_name where column_name not like pattern;

        示例:select * from users where username not like '%e%';  

                说明:查询username中不包含字母e的数据

2.14 排序order by

order by(排序) 语句可以按照一个或多个列的值进行升序(asc)或降序(desc)排序

示例:select * from users order by birthdate desc;

   说明:按birthdate 降序排列

2.15 分组group by

        创建用户登录记录表:

        插入登录数据:

我们可以使用 group by语句 将数据表按username进行分组,并统计每个人有多少条记录:

示例:select username,count(*) from users_signin group by username;

2.16过滤分组having

having能有效地过滤和分析分组数据,通过 having可以将复杂的条件应用到查询结果,从而实现对想要检索的信息的精确控制,having子句需要和group by子句结合使用

示例:select username from users_signin group by username having count(*)>=2;

   说明:过滤登录次数大于2的人员姓名;

2.17 连接union

union操作符用于连接两个以上的 select 语句的结果组合到一个结果集合,并去除重复的行,每个 select语句的列数和对应位置的数据类型必须相同。

示例:select username from users union select username from users_signin;

        说明:选择users表和users_signin表中所有username的唯一值

2.18 导出数据库

mysqldump 是 MySQL 提供的用于备份和导出数据库的命令行工具。

导出整个数据库命令:mysqldump -u root -p 库名 > xxx_backup.sql   ,回车并输入数据库密码

示例:mysqldump -u root -p  test_myql > myql_backup.sql

注意:这个语句是在服务器上执行,不是在mysql终端里面执行哟~

导出库中某个表:mysqldump -u root -p 库名 表名 > xxx_backup.sql

示例:mysqldump -u root -p  test_myql users > myql_users_backup.sql

2.19 source 命令导入

本地已存在数据库文件,如:mysql2.sql (这个是我用备份出的users表修改了一下文件名称和表名)

source 命令导入数据库文件需要在数库终端操作:source /xx/xx.sql

执行结束后,我们在数据库中看到新导入的表users2,如下图:

2.20 删除表drop

命令:drop table table_name;

        示例:drop table users2;             删除users2表

2.21 删除数据库

命令:drop database database_name;

        示例:drop database test_myql;      删除test_myql数据库

从上图可以看出执行drop语句后,再执行show databases;语句后就无法看到test_myql库了。

2.22 退出数据库

输入命令:exit       然后按回车即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寻觅神话06

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值