MySQL基本命令归纳


  • 普及MySQL一些知识
  • 默认监听端口号 3306

  • 进程名 mysqld

  • 所有者/组 mysql/mysql

  • 数据传输协议 TCP

  • 数据库目录 /var/lib/mysql/

  • 服务名 mysqld(5.1) mysql(5.6)

  • 主配置文件 /etc/my.cnf

MySQL的安装

1)安装系统自带的mysql 提供mysql服务

[root@stu ~]# yum  -y   install  mysql-server  rpm -q  mysql-server
[root@stu ~]# service   mysqld  status
mysqld 已停
[root@stu ~]# /etc/init.d/mysqld status
mysqld 已停
[root@stu ~]# /etc/init.d/mysqld start
[root@stu ~]# /etc/init.d/mysqld status
mysqld (pid  2965) 正在运行...
[root@stu ~]# netstat  -utnalp  | grep :3306
tcp        0      0 0.0.0.0:3306                0.0.0.0:*             LISTEN      2965/mysqld         
[root@stu ~]# chkconfig  --list mysqld
mysqld         	0:关闭	1:关闭	2:关闭	3:关闭	4:关闭	5:关闭	6:关闭
[root@stu ~]# chkconfig  mysqld on
[root@stu ~]# chkconfig  --list mysqld
mysqld         	0:关闭	1:关闭	2:启用	3:启用	4:启用	5:启用	6:关闭

查看mysql数据库是否运行的3种方法:
[root@stu ~]# ps  aux  | grep  mysqld
[root@stu ~]# /etc/init.d/mysqld  status
[root@stu ~]# netstat  -utnalp  | grep :3306

连接数据库服务器时
默认在没有授权的情况下,只允许数据库管理员root从本机登录且没有密码
[root@stu ~]# mysql -hlocalhost -uroot -p
Enter password:
........
mysql>quit

2)安装官网下载的mysql提供mysql服务

  • 如果装有系统自带的MySQL,则需先做处理
  • 法一

[root@stu ~]# /etc/init.d/mysqld   stop
[root@stu ~]# rm -rf /etc/my.cnf
[root@stu ~]# rm -rf /var/lib/mysql/*
[root@stu ~]# rpm -q mysql-server   mysql
[root@stu ~]# rpm -e --nodeps mysql-server  mysql
[root@stu ~]# tar -xvf MySQL-5.6.rpm.tar
[root@stu ~]# rpm -Uvh MySQL-*.rpm
[root@stu ~]# rpm  -qa  | grep  -i  mysql
[root@stu ~]# chkconfig  --list mysql
mysql          	0:关闭	1:关闭	2:启用	3:启用	4:启用 5:启用	6:关闭
[root@stu ~]# /etc/init.d/mysql   start
Starting MySQL. SUCCESS! 
[root@stu ~]# netstat -untlap  | grep :3306
tcp        0      0 :::3306                     :::*                        LISTEN      5823/mysqld         
[root@stu ~]# mysql -hlocalhost -uroot -p
Enter password: 
ERROR 1045 (28000): Access denied for user 
'root'@'localhost' (using password: NO)
[root@stu ~]# cat   /root/.mysql_secret 
# The random password set for the root user at Thu Nov 
17 03:49:34 2016 (local time): 0un0P7ci
[root@stu ~]# mysql -hlocalhost -uroot -p0un0P7ci
mysql> set    password    for    root@"localhost"=password("123");
........
mysql>quit
[root@stu ~]# mysql -hlocalhost -uroot -p123
mysql> quit
  • 法二:

[root@stu ~]# tar -xf MySQL-5.6.rpm.tar -C /usr/local
[root@stu ~]# ls
[root@stu ~]# cd /usr/local/
[root@stu local]# rpm -qa|grep mysql
 mysql-libs-5.1.73-5.el6_6.x86_64
[root@stu local]# rpm -e mysql-libs-5.1.73-5.el6_6.x86_64(报错)
[root@stu local]# rpm -ef  mysql-libs-5.1.73-5.el6_6.x86_64 --nodeps
[root@stu local]# rpm -ivh MySQL-server-5.6.15-1.el6.x86_64.rpm 
[root@stu local]# rpm -ivh MySQL-client-5.6.15-1.el6.x86_64.rpm 
[root@stu local]# service mysql start
Starting MySQL. SUCCESS!
[root@stu local]# mysql -u root -p
[root@stu local]# mysql -u root -p
[root@stu local]# cat /root/.mysql_secret 
*# The random password set for the root user at Thu Nov 
17 03:49:34 2016 (local time): lGa0H7zv
[root@stu local]# mysql -hlocalhost -uroot -plGa0H7zv
mysql> set    password    for    root@"localhost"=password("123");
........
mysql>quit
[root@stu local]# mysql -hlocalhost -uroot -p123 

3)源码安装MySQL

安装MySQL所需的依赖包

[root@stu ~]# yum -y install make gcc-c++ cmake bison-devel ncurses-devel
[root@stu ~]# yum -y install autoconf

MySQL源码编译安装

[root@stu ~]# wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.20.tar.gz
[root@stu ~]# tar xvf mysql-5.6.20.tar.gz
[root@stu ~]# cd mysql-5.6.20
[root@stu ~]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1\
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLE_DOWNLOADS=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci

[root@stu ~]# make && make install

配置MySQL

  • 设置权限
  • 使用下面的命令查看是否有mysql用户及用户组
[root@stu ~]# cat /etc/passwd * 查看用户列表
[root@stu ~]# cat /etc/group * 查看用户组列表如果没有就创建
[root@stu ~]# groupadd mysql
[root@stu ~]# useradd -g mysql mysql * 修改/usr/local/mysql权限
[root@stu ~]# chown -R mysql:mysql /usr/local/mysql * 修改/usr/local/mysql权限

数据初始化

[root@stu ~]# cd /usr/local/mysql
[root@stu ~]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mysql/data --user=mysql
[root@stu ~]# cp support-files/mysql.server /etc/init.d/mysql
[root@stu ~]# chkconfig mysql on
[root@stu ~]# service mysql start

将MySQL加入到path路径中来

[root@stu ~]# vim /etc/profile
export PATH=/usr/local/mysql/bin:$PATH
[root@stu ~]# source /etc/profile

执行下面的命令修改root密码

[root@stu ~]# mysql -uroot
enter password:
mysql> SET PASSWORD = PASSWORD('123456'); //密码就是123456

修改数据库用户的密码

  • 修改数据库管理员root从本机访问数据库服务的密码(得知道当前的登录密码是多少,新密码才能设置成功)
  • 方法一
[root@stu ~]# mysqladmin  -hlocalhost   -uroot   -p   password    "新密码"
Enter password: (输入原密码)
。。。。。。
mysql> quit

[root@stu ~]# mysql -hlocalhost   -uroot    -p    "新密码"
  • 方法二
[root@stu ~]# mysql -hlocalhost -uroot -p
Enter password:

mysql> set    password    for    root@"localhost"=password("123");
........
mysql> quit

所有的增加的命令

1).创建数据库、表

查看所有库

mysql> show databases;

创建一个库

mysql> create database liuys;

切换库

mysql> use liuys;

创建一个表

mysql> create  table   liuys.stuinfo(name   char(10) , age   int(2));

创建一个主键的可自动增长非负的字段的表

mysql> create  table  liuys.t13(id  int(2) zerofill unsigned primary key auto_increment, name char(10),money  float(7,2));

创建一个时间等特定字段的表

mysql> create  table   t16(
name char(10),
age tinyint(2)   zerofill  unsigned primary key auto_increment,
money   float(7,2),
s_year  year,
birthday  date,
up_class  time,
meeting  datetime
);

创建含datetime 与 timestamp 的当未给TIMESTAMP字段赋值时,自动以当前系统时间赋值,而DATETIME字段默认赋值为 NULL的表

create  table  t17(
meeting   datetime, 
time2      timestamp
);

创建含enum(值1,值2,值N) 只能在列举的范围内选择一个值set(值1,值2,值N) 能在列举的范围内选择一个或多个值,以及浮点数的表

create  table  t21(
name char(10),
age  tinyint(2)  unsigned,
pay   float(7,2),
birthday  date,
sex   enum("boy","girl","no"),
likes  set("book","film","game","it")
);

create  table  t24(
name char(10) not  null ,
age  tinyint(2)  unsigned   default  24 ,
pay   float(7,2) ,
birthday  date ,
sex   enum("boy","girl","no")   default  "boy" ,
likes  set("book","film","game","it")  default  
"film,game" 
);

添加一个auto_increment初始值的表

create  table  t32(
stu_id  int(2)  zerofill  primary key   auto_increment,  
name   char(10)
)AUTO_INCREMENT=2; 
#指定第一条的编号从多少开始

2).添加表数据

  • 插入表记录的注意事项
  • 字段值要和字段个数相等并且对应的类型要一致。
  • 给新记录的所有字段赋值时不需要写字段名。

添加单条数据

mysql> insert   into  liuys.stuinfo   values("jim",21);

同时添加多条数据

mysql> insert   into  liuys.stuinfo   values("tom",21),("jack",22);

同时向特定字段添加多条数据

mysql> insert   into  liuys.stuinfo(name)   values("tony"),("jeanks");

添加其中年份可以使用2位数字给YEAR类型的字段赋值的数据,例如:

01-69 20XX

70-99 19XX

mysql> insert into  t16  values ("zhangbaoli",21,20000,1998,20161221,083000,20161218203000);

建表时创建主键

  • 创建主键 primary key
  • 一个表里只能有一个主键,字段值不允许重复且不允许赋null值;若多个字段做主键叫复合主键,复合主键必须一起创建(字段的值不允许同时相同)。和auto_increment连用,让字段的值自动增长 字段的值自加1后给当前字段赋值
  • 通常把表中能够唯一定位一条记录的字段设置为主键字段。
create  table   t26(
stu_id  char(9),
name   char(10),
age  int(2),
primary key(stu_id)
);

在已有表里创建主键

mysql> alter  table  27  add  primary key(email);

创建外键 foreign key

  • 1 表的存储引擎必须是innodb
  • 2 字段的类型要一致
  • 3 被参考的字段必须是key 的一种(primary key)

创建父表并插入数据

mysql> create  table  jfb(
jfb_id   int(2) primary key  auto_increment,
name  char(10)
)engine=innodb;

insert into  jfb(name) values("alic"),("bob");

创建子表

create  table bjb(
bjb_id   int(2),
name  char(10),
foreign key(bjb_id)  references  jfb(jfb_id)  on update 
cascade  on  delete cascade
)engine=innodb;
  • 使用外键时的注意事项:
  • 当一个表被参考时 ,表和被参考的字段都不允许删除
  • 一个表里可以有多个外键字段。
  • 一个父表可以被多个子表参考

所有的删除命令

删除字段名

mysql> alter  table  t24  drop  chengj , 
## mysql> drop  stu_id;

删除主键

mysql> alter  table  t27  add primary key(stu_id);

删除表结构

mysql> drop table 表名

删除外键:

mysql> alter  table   bjb   drop  foreign key   bjb_ibfk_1;

2).删除表记录(以行为删除单位)

  • 删除与条件匹配的记录
  • delete from 库名.表名 where 条件;
mysql> delete  from userdb.user  where name is null;
  • 删除所有记录。
  • delete from 库名.表名;
mysql> delete from db2016.user;

所有的修改命令

1).改名字

修改字段名

mysql> alter  table  t24  change   mail   email  varchar(25) not  null  default  "[email protected]";

修改表名

mysql> alter  table   t24   rename   sutinfo;

3).修改表结构

添加至字段之首

mysql> alter table  t24  add  mail  varchar(30) default "[email protected]" first;

添加至指定字段后面

mysql> alter table  t24  add  id  int(2) after email;

一次添加多个字段

mysql> alter table  t24  
add  mail  varchar(30) default  "[email protected]",
add  chengj tinyint(2) not null default 60  after name,
add  stu_id  char(9) first;

3).修改表数据

更新记录字段的值 update

  • 批量更新:
  • update 库名.表名 set 字段名1=值,字段名2="值",字段名N=值;
mysql> update  userdb.user   set  mysql=95,age=18;
  • 修改复合条件记录字段的值
mysql> update  userdb.user   set   homedir="/student"  name="admin" where  id=1;

mysql> update    userdb.user  set  name="" where  name="bin";

mysql> select   id,name,shell from userdb.user where  name="daemon";

mysql> update    userdb.user  set   shell=null  where  name="daemon";

4).修改字段类型

  • 若修改的类型与已经存储的数据有冲突,不允许修改

修改字段约束条件

mysql> alter  table  t24   modify   mail  char(12)  not  null  default  "[email protected]";

所有的查看的命令

1).查看建表过程

mysql> show  create  table   表名;

2).查看表结构

mysql> desc  userdb.user;

3).查看建库的过程

mysql> show create database liuys;

4).查看表中复合条件记录指定字段的值

  • select 字段名列表 from 库名.表名 where 条件表达式;
mysql> select   name,shell,homedir   from  userdb.user where  name="root";

5).数值比较 (字段必须是数值类型)字段名 符号 值

  • = != > >= < <=
mysql> select    id,name , shell ,uid  from userdb.user where   uid=100;

mysql> select  id,name  from userdb.user where   id<=10;

6).字符比较 (字段必须是数值类型)字段名 符号 "值"

= !=

mysql> select  name  from userdb.user where name="daemon";

mysql> select  name  from userdb.user where name!="root";

7).范围内匹配

  • between...and.... 在...之间
  • in (值列表) 在...里...
  • not in (值列表) 不在...里...
mysql> seletc name,uid  from userdb.user  where  uid  between 10  and  20;

mysql> select name,uid  from userdb.user  where  uid  between 1  and  5;

mysql> select name  from  userdb.user where name  in  ("bin","mysql","lucy");

mysql> select  id,name  from  userdb.user where  id  in  (10,21,15);

mysql> select  name,shell  from userdb.user where  shell  in  ("halt","shutdown");

mysql> select name,shell from userdb.user where shell not in ("halt","shutdown");

8).匹配空 is null 匹配非空 is not null

mysql> insert into userdb.user(id,name) values(45,null),(46,NULL),(47,"null"),(48,"");

mysql> select  id,name from userdb.user  where name  is null;

mysql> select id,name  from userdb.user where gid  is null;

mysql> select  id,name from userdb.user  where name  is not  null;

mysql> select  id,name from userdb.user  where name="";

mysql> select  id,name from userdb.user  where name="null";

9).逻辑比较

  • (2个或2个以上查询条件时使用逻辑比较)
  • 逻辑与 and 多个条件必须同时成立
  • 逻辑或 or 多个条件时某一个条件成立就可以
  • 逻辑非 ! 取反
mysql> select  id,name,uid,shell from userdb.user where name="root" and uid=10;

mysql> select id,name,uid,shell from userdb.user where name="root" or uid=10;

mysql> select name,uid,homedir from userdb.user where name ("bob","root","daemon")  and  uid<=10 and   shell="/bin/bash";
* (   )   提高优先级

mysql> select name,uid from userdb.user where name="root" or name="bin" and uid=1;

mysql> select name,uid from userdb.user where (name="root" or name="bin") and uid=3;

10).模糊查询

  • 字段名 like '模糊查询表达式';
  • 模糊查询表达式
  • % 表示零个或多个字符
  • _ 表示任意一个字符
mysql> select   name  from userdb.user  where  name  like   '___';

mysql> select   name  from userdb.user  where  name  like   '%a%';

mysql> insert  into  userdb.user(name)values("a"),("");

mysql> select   name  from userdb.user  where  name  like   'a%';

mysql> select   name  from userdb.user  where  name  like   '%a';

mysql> select   name  from userdb.user  where  name  like   '_a_';

mysql> select   name  from userdb.user  where  name  like   '%';

11). 正则匹配

  • 字段名 regexp '正则表达式';
  • ^ $ . * [0-9] 0123456789
mysql> insert into  userdb.user(name)values("jim"),("j9im"),("7jim"),("ji3m"),("jim5");

mysql> select  name  from userdb.user  where  name   regexp  '[0-9]';

mysql> select  name  from userdb.user  where  name   regexp  '^a.*c$';

mysql> select  name,uid  from userdb.user  where  uid   regexp  '^..$';

mysql> select  name,uid  from userdb.user  where  uid   regexp  '..';

12).数学计算 + - * / %

mysql> select name,uid,gid,id+gid as zh from userdb.user where name="root";

mysql> alter table userdb.user add age tinyint(2) default 23 after name;

mysql> select name,age  from userdb.user where  name="root";

mysql> select   name,age,2016-age  as s_year from  userdb.user  where  name="root";

mysql> select name,age,uid,gid,(uid+gid)/2 as pjz,2016-age as s_year from userdb.user  where  name="root";

13).聚集函数

  • count(字段名) 统计字段值的个数
  • max(字段名) 获取字段的最大值
  • min(字段名) 获取字段的最小值
  • avg(字段名) 获取字段的平均值
  • sum(字段名) 统计字段的和
mysql> select  count(id)  from  userdb.user;

mysql> select count(id) as 总记录数 ,count(name) as 总用户数  from  userdb.user;

mysql> alter  table   userdb.user  add   mysql tinyint(2) default  60  after  age;

mysql> alter  table   userdb.user  add   mysql tinyint(2)   default  60  after  age;

mysql> select   avg(mysql)   from  userdb.user;

mysql> select   sum(mysql)   from  userdb.user;

mysql> select    max(gid)   from  userdb.user;

mysql> select    min(uid)   from  userdb.user;

mysql> select  min(uid)  from  userdb.user where  shell="/bin/bash"

13).查询结果分组

  • sql查询命令 group by 字段名;
mysql> select  shell  from userdb.user   group  by  shell;

mysql> select  shell  from userdb.user  where uid<500 group  by  shell;

mysql> select   部门  from 员工表信息表  where  性别=""   group  by   部门;
  • DISTINCT查询时不显示字段的重复值。(相同的值 只显示第1次出现的)
mysql> select   distinct   shell   from  userdb.user;

mysql> select   distinct   gid   from  userdb.user;

14).查询结果排序

  • sql查询 order by 字段名 排序方式;
  • asc 默认 升序
  • desc 降序
mysql> select  *  from userdb.user  order  by  id  desc;

mysql> select name,uid,homedir from userdb.user where uid >=10 and uid<=20 order by uid;

mysql> select  name,age,mysql  from 成绩表 where   工作经验=""  order  by  mysql desc;

15).在查询结果里过滤数据

  • sql查询 having 条件表达式;
mysql> select name from userdb.user where shell!="/bin/bash" having name in ("rsync","apache",lucy);

mysql> select   id,name  from userdb.user  where  name is  not null  having  id=42;

16). 限制显示查询记录的条目

  • 默认会把复合查询条件的记录全部显示出来
  • sql查询 limit 数字1,数字2;
  • 数字1 表示从查询结果的第几条记录开始显示
  • 数字2 表示显示几条记录
mysql> select   *  from userdb.user  where id<=10

mysql> select   *  from userdb.user  where id<=10  limit  0,2  ;

mysql> select  *  from  userdb.user  where uid>500  order by  uid  desc  limit  1;

mysql> select  * from   员工信息表 where   性别=""  order  by  工资   desc  limit  1;

17).复制表(快速创建一个新表 把表备份一下)

  • 源表的字段的key属性不会被复制给新表。
  • create table 新表名 sql查询;

复制所有内容

  • create table 新表名 select * from 表名;
mysql> create table user2  select  * from user;

18).怎么显示登录的用户名和客户端地址

mysql >   select    user();

19). 登录用查看自己的访问权限?

mysql >   show  grants;

复制部分内容

  • create table 新表名 select 字段名列表 from 表名 where 条件;
mysql> create  table  user3 select name,uid,homedir  from userdb.user where  uid<=5;

只复制表结构

  • create table 新表名 select * from 表名 where 不成立的条件;
mysql> create table user4  select * from userdb.user where 1 = 2 ;

18).嵌套查询

  • 把内层查询结果作为外层查询的查询条件
  • select 字段名列表 from 表名 where 条件 (select 字段名列表 from 表名) ;
mysql> insert  into userdb.user(name,mysql) values("lilei",81),("hanmeimei",59),("jerry",92),("lili",100);

mysql> select  avg(mysql)  from userdb.user;

mysql> select  name,mysql  from  userdb.user where mysql > (  select  avg(mysql)  from userdb.user   );

mysql> select  name,mysql  from  userdb.user where  mysql  < (  select  avg(mysql)  from userdb.user   ) having name="lili";

mysql> select  min(uid) from  userdb.user;

mysql> select name ,uid  from  userdb.user where  uid=0;

mysql> select name ,uid from userdb.user where uid=(select min(uid) from userdb.user);

mysql> select name from userdb.user where name in (select user from mysql.user  where  host="localhost");

mysql> select   name  from bjb  where name in (select   name from jfb where class="nsd1608" and  学费="yes");

19).多表查询

  • select 字段名列表 from 表名1 ,表名2,表名n;
  • select 字段名列表 from 表名1 ,表名2,表名n where 条件表达式;
mysql> create  table  t41  select  name,uid from  userdb.user  limit  3;

mysql> select   *  from  t41;
mysql> create table t42 select name,homedir,shell from userdb.user limit 4;

mysql> select   *  from  t41;
mysql> select   *   from  t41  ,  t42;

mysql> select  t41.name,t42.name,t42.homedir  from  t41  ,  t42;

mysql> select t41.name,t42.name,t42.homedir from t41,t42 where t41.name=t42.name;

mysql> select  *   from  t41  ,  t42 where  t41.name=t42.name;

mysql> select  *   from    t43  left  join  t44 on  
  • 连接查询
  • 左连接left jion ... on 条件
  • 查询时以左边的表为主显示查询结果
  • 右连接right jion ... on 条件
  • 查询时以左边的表为主显示查询结果
mysql> create  table   t43   select  name,uid,shell from userdb.user  limit 3;

mysql> select  * from t43;

mysql> create  table   t44   select  name,uid,shell   from userdb.user  limit 5;

mysql> select  * from  t43  left  join  t44  on  t43.name=t44.name;

mysql> select  * from  t43  right  join  t44  on  t43.name=t44.name;

数据的导入与导出

数据导入 : 把系统文件的内容存储到数据库的表里

  • mysql> LOAD DATA INFILE '文件名' INTO TABLE 表名 FIELDS TERMINATED BY '分隔符' LINES TERMINATED BY '\n';
  • 把系统用户信息存储到 userdb库下的user表里/etc/passwd
  • 用户名:密码占位符:uid:gid:描述信息:家目录:shell
mysql> create   database  userdb;
mysql> create  table  userdb.user(
name  char(25),
password   char(1),
uid   smallint(2),
gid   smallint(2),
comment   varchar(50),
homedir   varchar(50),
shell     varchar(50),
index(name)
);
* 查看表结构
mysql> desc  userdb.user;
mysql> select   * from  userdb.user;
* 导入数据
mysql> LOAD DATA INFILE "/etc/passwd" INTO TABLE userdb.user FIELDS TERMINATED BY ":";

mysql> mysql> select   *  from userdb.user;
mysql> alter  table userdb.user add  id  int(2) 
zerofill  primary  key  auto_increment  first;
select   *  from userdb.user;
  • 数据导入注意事项
  • 字段分隔符要与文件内的一致
  • 指定导入文件的绝对路径
  • 导入数据的表字段类型要与文件字段匹配

数据导出: 把数据库表里记录存储到系统文件里

  • 语法格式:
  • SQL查询命令 INTO OUTFILE "文件名";
  • SQL查询命令 INTO OUTFILE "目录名/文件名" fields terminated by "符号" lines terminated by "符号";
mysql> use  userdb;
mysql> select  *  from  userdb.user  into  outfile   "a.txt";

[root@stu ~]# mkdir  /mydatadir
[root@stu ~]# chown  mysql  /mydatadir
mysql> select * from userdb.user where id=3 into outfile "/mydatadir/b.txt";

mysql> select host,user from mysql.user into outfile  "/mydatadir/mysql-user2.txt" fields  terminated by "###";
  • 数据导出注意事项
  • 导出的内容由SQL查询语句决定
  • 若不指定路径,默认会放在执行导出命令时所在库对应的数据库目录下。
  • 应确保mysql用户对目标文件夹有写权限。
  • 存储导出数据的文件具有唯一性

猜你喜欢

转载自blog.csdn.net/baidu_38432732/article/details/80637957