1.基本操作


连接

  1. mysql -h127.0.0.1 -uroot -p

退出

exit;
quit;
\q;

修改密码

格式:mysql> set password for 用户名@localhost = password('新密码'); 
例子:mysql> set password for root@localhost = password('123');

版本查询

select version();

时间查询

select now(); --当前时间
SELECT DAYOFMONTH(CURRENT_DATE); --显示年月日

数据库备份

#整张表备份
mysqldump -uroot -p test person > D:\backup.sql

#备份除table和table2的所有表
mysqldump -h127.0.0.1 -uroot -proot 数据库 --ignore-table=数据库.table --ignore-table=数据库.table2 > "D:/data.sql"

#带条件导出指定表数据
mysqldump -h127.0.0.1 -uroot -pjozen jozendb logaiodata --where=`Time` > '2021-04-16' and Time < '2021-05-01' > "C:/210507.sql"

#只导出表结构 不导出数据
mysqldump --opt -d 数据库名 -u root -p > xxx.sql

#导出数据不导出结构
mysqldump -t 数据库名 -uroot -p > xxx.sql

数据库还原

mysql -h127.0.0.1 -uroot -p dbname < d:\eiip190607.sql

数据库表编码

show create table <表名>;

数据库表字段编码

show full columns from <表名>;

数据库编码

show variables like 'char%';

character_set_client为客户端编码方式(客户端发送过来文字的字符集);
character_set_results结果集的编码(发送给客户端的结果所使用的字符集); 
character_set_connection为建立连接使用的编码;
character_set_database数据库的编码;
character_set_server数据库服务器的编码;

2.数据库操作


创建数据库

create schema和create database创建数据库的效果一样

create database <数据库名>;
create schema [数据库名称] default character set utf8 collate utf8_general_ci;--创建数据库

删除数据库

drop database <数据库名>;

显示数据库

show databases;

连接数据库

use <数据库名>;

显示所有的表

show tables;

当前选择的数据库

select database();

查询数据库每张表大小

SELECT TABLE_NAME as '表名',DATA_LENGTH as '数据长度',INDEX_LENGTH as '索引长度',(DATA_LENGTH+INDEX_LENGTH) as length,TABLE_ROWS as '数据行',concat(round((DATA_LENGTH+INDEX_LENGTH)/1024/1024,3), 'MB') as '表大小' 
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='数据库' order by length desc;