Mysql 8.0 语法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
redis服务端启动:redis-server redis.windows.conf
 
 
添加系统服务: mysqld -- install 服务名(设置为mysql)
 
  启动服务: net start mysql
 
  关闭服务: net stop mysql
 
  连接到mysql服务端: mysql -h 服务端IP地址 -P 3306 -u root -p 密码
 
  本机连接: mysql -u root -p 密码
 
  mysql.ini 中[mysql]配置客户端连接的时候,指定一下用户名和密码,那么我们在进行mysql客户端连接的时候,直接输入mysql然后回车就可以了,并且用户是我们下面指定的root用户
       user=root
    password=666
 
  
 
  查看当前用户: select user();
 
  查看mysql版本: select version();
 
  查看mysql初始信息: \s;
 
  查看各角色的编码: show variables like "%char%";
 
  查看数据文件存储路径: show global variables like "%datadir%";
 
  查看库创建语句: show create database 库名\G;
 
  查看表创建语句: show create table 表名\G;
 
  
 
  设置密码(8.0版本):
 
  alter user 'root'@'localhost' identified by  '123';
 
  
 
  cmd命令输错换行时退出的方法: \c
 
  库的操作:
 
  增: create database db1;
 
  查: show databases;  查看所有的库
 
        show create database db1;  查看单独某个库的信息
 
  改: alter database db1 charset  latin1;  修改库的字符集
 
  删: drop database db1;
 
  
 
  表的操作;
     
    显示表结构:show create table tbl_user_file;
     
    删除主键:alter table tbl_user_file drop index `idx_user_file`;
 
    清空表数据:TRUNCATE TABLE
 
  切换库: user db1;
 
  查看当前所在的库: select database();
 
  增: create table t1 (id int, name char(10));
 
  查: show tables;  查看当前库中的所有表
 
    show create table t1;  查看单表的创建信息
 
    desc t1;  以列表形式查看单表信息
 
  改: alter table t1 modify name char(3);
 
    alter table t1 change name name1 char(2);
 
  删: drop table t1;
 
  
 
  行的操作:
 
  增: insert into t1 values (1,"张三"), (2,"李四");
 
  查: select * from t1;  查看t1表的所有字段数据
 
    select id, name from t1; 查看t1表的id, name字段的信息
 
  改: update t1 set name="王五" where id=2;
 
  删: delete from t1 where id=1;
 
  
 
  清空表: delete from t1;  如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。
 
    truncate table t1;  数据量大,删除速度比上一条快,且直接从零开始,
 
  
 
  复制数据库:
 
  复制数据库中所有的内容
 
  mysqldump -u root -p --all-databases > db.sql
 
  复制数据库中的某几个库
 
  mysqldump -u root -p --databases 库名1 库名2 > db.sql
 
  复制数据库中的某张表
 
  mysqldump -u root -p 库名 表名1 表名2 > db_table.sql
 
  
 
  还原数据库:
 
  mysql -u root -p < db.sql
 
  
 
  复制表:
 
  只复制表结构到新表
 
      create table 新表名 select * from 库名.旧表名 where 1=2   主键类型和自增方式是不会复制过去的
 
      create table 新表名 like 库名.旧表名   把旧表的所有字段类型都复制到新表
 
  复制表结构及数据到新表
 
  create table 新表 select * from 旧表名
 
  
 
  复制旧表的数据结构到新表(两个表结构一样)
 
  insert into 新表 select * from 旧表
 
  复制旧表的数据结构到新表(两个表结构不一样)
 
  insert into 新表 (字段1, 字段2......) select 字段1, 字段2...... from 旧表
redis服务端启动:redis-server redis.windows.conf
 
 
添加系统服务: mysqld -- install 服务名(设置为mysql)
 
  启动服务: net start mysql
 
  关闭服务: net stop mysql
 
  连接到mysql服务端: mysql -h 服务端IP地址 -P 3306 -u root -p 密码
 
  本机连接: mysql -u root -p 密码
 
  mysql.ini 中[mysql]配置客户端连接的时候,指定一下用户名和密码,那么我们在进行mysql客户端连接的时候,直接输入mysql然后回车就可以了,并且用户是我们下面指定的root用户
       user=root
    password=666
 
  
 
  查看当前用户: select user();
 
  查看mysql版本: select version();
 
  查看mysql初始信息: \s;
 
  查看各角色的编码: show variables like "%char%";
 
  查看数据文件存储路径: show global variables like "%datadir%";
 
  查看库创建语句: show create database 库名\G;
 
  查看表创建语句: show create table 表名\G;
 
  
 
  设置密码(8.0版本):
 
  alter user 'root'@'localhost' identified by  '123';
 
  
 
  cmd命令输错换行时退出的方法: \c
 
  库的操作:
 
  增: create database db1;
 
  查: show databases;  查看所有的库
 
        show create database db1;  查看单独某个库的信息
 
  改: alter database db1 charset  latin1;  修改库的字符集
 
  删: drop database db1;
 
  
 
  表的操作;
     
    显示表结构:show create table tbl_user_file;
     
    删除主键:alter table tbl_user_file drop index `idx_user_file`;
 
    清空表数据:TRUNCATE TABLE
 
  切换库: user db1;
 
  查看当前所在的库: select database();
 
  增: create table t1 (id int, name char(10));
 
  查: show tables;  查看当前库中的所有表
 
    show create table t1;  查看单表的创建信息
 
    desc t1;  以列表形式查看单表信息
 
  改: alter table t1 modify name char(3);
 
    alter table t1 change name name1 char(2);
 
  删: drop table t1;
 
  
 
  行的操作:
 
  增: insert into t1 values (1,"张三"), (2,"李四");
 
  查: select * from t1;  查看t1表的所有字段数据
 
    select id, name from t1; 查看t1表的id, name字段的信息
 
  改: update t1 set name="王五" where id=2;
 
  删: delete from t1 where id=1;
 
  
 
  清空表: delete from t1;  如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。
 
    truncate table t1;  数据量大,删除速度比上一条快,且直接从零开始,
 
  
 
  复制数据库:
 
  复制数据库中所有的内容
 
  mysqldump -u root -p --all-databases > db.sql
 
  复制数据库中的某几个库
 
  mysqldump -u root -p --databases 库名1 库名2 > db.sql
 
  复制数据库中的某张表
 
  mysqldump -u root -p 库名 表名1 表名2 > db_table.sql
 
  
 
  还原数据库:
 
  mysql -u root -p < db.sql
 
  
 
  复制表:
 
  只复制表结构到新表
 
      create table 新表名 select * from 库名.旧表名 where 1=2   主键类型和自增方式是不会复制过去的
 
      create table 新表名 like 库名.旧表名   把旧表的所有字段类型都复制到新表
 
  复制表结构及数据到新表
 
  create table 新表 select * from 旧表名
 
  
 
  复制旧表的数据结构到新表(两个表结构一样)
 
  insert into 新表 select * from 旧表
 
  复制旧表的数据结构到新表(两个表结构不一样)
 
  insert into 新表 (字段1, 字段2......) select 字段1, 字段2...... from 旧表
posted @ 2021-06-10 11:17  大胡_最呆  阅读(170)  评论(0编辑  收藏  举报