⑴ MySQL的基本命令
启动:net start mySql;
进入:mysql -u root -p/mysql -h localhost -u root -p databaseName;
列出数据库:show databases;
选择数据库:use databaseName;
列出表格:show tables;
显示表格列的属性:show columns from tableName;
建立数据库:source fileName.txt;
匹配字符:可以用通配符_代表任何一个字符,%代表任何字符串;
增加一个字段:alter table tabelName add column fieldName dateType;
增加多个字段:alter table tabelName add column fieldName1 dateType,add columns fieldName2 dateType;
多行命令输入:注意不能将单词断开;当插入或更改数据时,不能将字段的字符串展开到多行里,否则硬回车将被储存到数据中;
增加一个管理员帐户:grant all on *.* to user@localhost identified by "password";
每条语句输入完毕后要在末尾填加分号';',或者填加'\g'也可以;
查询时间:select now();
查询当前用户:select user();
查询数据库版本:select version();
查询当前使用的数据库:select database();
1、删除student_course数据库中的students数据表:
rm -f student_course/students.*
2、备份数据库:(将数据库test备份)
mysqlmp -u root -p test>c:\test.txt
备份表格:(备份test数据库下的mytable表格)
mysqlmp -u root -p test mytable>c:\test.txt
将备份数据导入到数据库:(导回test数据库)
mysql -u root -p test
3、创建临时表:(建立临时表zengchao)
create temporary table zengchao(name varchar(10));
4、创建表是先判断表是否存在
create table if not exists students(……);
5、从已经有的表中复制表的结构
create table table2 select * from table1 where 1<>1;
6、复制表
create table table2 select * from table1;
7、对表重新命名
alter table table1 rename as table2;
8、修改列的类型
alter table table1 modify id int unsigned;//修改列id的类型为int unsigned
alter table table1 change id sid int unsigned;//修改列id的名字为sid,而且把属性修改为int unsigned
9、创建索引
alter table table1 add index ind_id (id);
create index ind_id on table1 (id);
create unique index ind_id on table1 (id);//建立唯一性索引
10、删除索引
drop index idx_id on table1;
alter table table1 drop index ind_id;
11、联合字符或者多个列(将列id与":"和列name和"="连接)
select concat(id,':',name,'=') from students;
12、limit(选出10到20条)<第一个记录集的编号是0>
select * from students order by id limit 9,10;
13、MySQL不支持的功能
事务,视图,外键和引用完整性,存储过程和触发器
14、MySQL会使用索引的操作符号
<,<=,>=,>,=,between,in,不带%或者_开头的like
15、使用索引的缺点
1)减慢增删改数据的速度;
2)占用磁盘空间;
3)增加查询优化器的负担;
当查询优化器生成执行计划时,会考虑索引,太多的索引会给查询优化器增加工作量,导致无法选择最优的查询方案;
16、分析索引效率
方法:在一般的SQL语句前加上explain;
分析结果的含义:
1)table:表名;
2)type:连接的类型,(ALL/Range/Ref)。其中ref是最理想的;
3)possible_keys:查询可以利用的索引名;
4)key:实际使用的索引;
5)key_len:索引中被使用部分的长度(字节);
6)ref:显示列名字或者"const"(不明白什么意思);
7)rows:显示MySQL认为在找到正确结果之前必须扫描的行数;
8)extra:MySQL的建议;
17、使用较短的定长列
1)尽可能使用较短的数据类型;
2)尽可能使用定长数据类型;
a)用char代替varchar,固定长度的数据处理比变长的快些;
b)对于频繁修改的表,磁盘容易形成碎片,从而影响数据库的整体性能;
c)万一出现数据表崩溃,使用固定长度数据行的表更容易重新构造。使用固定长度的数据行,每个记录的开始位置都是固定记录长度的倍数,可以很容易被检测到,但是使用可变长度的数据行就不一定了;
d)对于MyISAM类型的数据表,虽然转换成固定长度的数据列可以提高性能,但是占据的空间也大;
18、使用not null和enum
尽量将列定义为not null,这样可使数据的出来更快,所需的空间更少,而且在查询时,MySQL不需要检查是否存在特例,即null值,从而优化查询;
如果一列只含有有限数目的特定值,如性别,是否有效或者入学年份等,在这种情况下应该考虑将其转换为enum列的值,MySQL处理的更快,因为所有的enum值在系统内都是以标识数值来表示的;
19、使用optimize table
对于经常修改的表,容易产生碎片,使在查询数据库时必须读取更多的磁盘块,降低查询性能。具有可变长的表都存在磁盘碎片问题,这个问题对blob数据类型更为突出,因为其尺寸变化非常大。可以通过使用optimize table来整理碎片,保证数据库性能不下降,优化那些受碎片影响的数据表。 optimize table可以用于MyISAM和BDB类型的数据表。实际上任何碎片整理方法都是用mysqlmp来转存数据表,然后使用转存后的文件并重新建数据表;
20、使用procere analyse()
可以使用procere analyse()显示最佳类型的建议,使用很简单,在select语句后面加上procere analyse()就可以了;例如:
select * from students procere analyse();
select * from students procere analyse(16,256);
第二条语句要求procere analyse()不要建议含有多于16个值,或者含有多于256字节的enum类型,如果没有限制,输出可能会很长;
21、使用查询缓存
1)查询缓存的工作方式:
第一次执行某条select语句时,服务器记住该查询的文本内容和查询结果,存储在缓存中,下次碰到这个语句时,直接从缓存中返回结果;当更新数据表后,该数据表的任何缓存查询都变成无效的,并且会被丢弃。
2)配置缓存参数:
变量:query_cache _type,查询缓存的操作模式。有3中模式,0:不缓存;1:缓存查询,除非与 select sql_no_cache开头;2:根据需要只缓存那些以select sql_cache开头的查询; query_cache_size:设置查询缓存的最大结果集的大小,比这个值大的不会被缓存。
22、调整硬件
1)在机器上装更多的内存;
2)增加更快的硬盘以减少I/O等待时间;
寻道时间是决定性能的主要因素,逐字地移动磁头是最慢的,一旦磁头定位,从磁道读则很快;
3)在不同的物理硬盘设备上重新分配磁盘活动;
如果可能,应将最繁忙的数据库存放在不同的物理设备上,这跟使用同一物理设备的不同分区是不同的,因为它们将争用相同的物理资源(磁头)。
⑵ 用命令行方式操作mysql数据库,为什么会出现错误。Mysql服务已启动,服务器名称为MySQL55
这个错误是无法连接到Mysql数据库,使用mysql命令进行登陆的参数为:
-h主机地址,如:localhost或者127.0.0.1
-u用户名,如:root
-p登陆密码,如果你有设置mysql密码就填
参数与值之间不需要空格,但是不同参数间有空格,
格式如:>mysql-hlocalhost-uroot-pa12346
mysql命令大全参考:http://wenku..com/view/e5f0ab07e87101f69e3195b0.html
如图:
⑶ 如何通过命令行打开mysql数据库
使用命令行连接MySQL数据库:
Windows操作系统下,开始——运行,打开"运行"对话框,输入cmd,点击“确定”即可进入DOS窗口。
DOS窗口输入登录MySQL数据库命令
mysql -h 127.0.0.1 -u root -p
命令参数说明:
mysql是登录数据库的命令,-h 后面跟服务器的IP,由于本示例MySql服务器安装在本地,因此IP地址为127.0.0.1;-u 后面跟用户名,本示例采用 root用户登录;-p 后面跟登录密码。
输入上述命令后回车,再输入登录密码,在回车即可完成登录MySQL数据库服务了。跟着可以运行use databaseName语句操作某个数据库了
⑷ 如何在Windows下编译或调试MySQL
用vs code 就可以了。
Visual Studio Code
Visual Studio Code(简称VS Code)是由微软开发的,同时支持Windows、linux和macOS操作系统的开源文本编辑器。它支持调试,内置了Git 版本控制功能,同时也具有开发环境功能,例如代码补全(类似于IntelliSense)、代码片段、代码重构等。该编辑器支持用户自定义配置,例如改变主题颜色、键盘快捷方式、编辑器属性和其他参数,还支持扩展程序并在编辑器中内置了扩展程序管理的功能。
安装LLDB
LLDB是LLVM编译器的一部分,推荐使用Homebrew安装LLVM工具集,不建议使用系统自带的LLDB,安装前必须先创建证书否则无法安装,步骤如下:
创建完成后,开始安装LLVM
brew install llvm --with-python@2--with-lldb
安装插件
VS Code自带有debug功能,这里我推荐使用LLDB Debugger插件。
接下来,为项目配置调试参数。
配置调试参数
使用VS Code打开MySQL源码目录,在侧边栏选择debug栏目,添加配置,program输入需要调试的程序路径,这里选择你编译好的mysqld路径,args输入程序启动所需的参数,通常会指定mysqld的配置文件。这样就配置好了,是不是很简单。
启动调试
点击启动按钮,启动后如果没有设置断点会mysqld会正常启动,如果触发了断点会如下图显示。
整个调试窗口基本分为六部分,所有的调试操作都在这里完成:
1:显示变量信息
2:设置重点关注的变量
3:显示调用栈信息
4:设置断点信息,在代码行号前也可以设置断点
5:代码显示区域,上方是调试按钮,包括 continue/stepover/step in/step out/restart/stop
6:调试终端输入输出区
断点设置
在代码行号前点击即可在该行为设置断点,也可以根据条件设置断点。以设置ConditionalBreakpoint为例,当程序启动后会按照你设置的条件表达式判断是否触发断点。
Conditional Breakpoint这种方式用在目标变量达到某条件时触发断点,其余则跳过继续执行。比如:设置变量等于目标表名时触发断点,其余表则跳过,相对函数名断点省去很多手工跳过操作。
远程调试
假如你想调试远程Linux服务器上的MySQL上面的方法就不合适了,这时需要远程调试。lldb和gdb都支持远程调试,这里以lldb为例。
需要先在远程主机上安装lldb,使用yum安装,源地址在这里http://mirror.centos.org/centos/7/sclo/x86_64/rh
remote$ yum install -y llvm-toolset-7
安装完成后,启动lldb-server
remote$ /opt/rh/llvm-toolset-7/root/usr/bin/lldb-serverplatform --listen"*:9191"--server
接下来,在VS Code调试界面中新增配置项。
{
"type":"lldb",
"request":"attach",
"name":"Remote attach",
"program":"~/mysql5626/usr/local/mysql/bin/mysqld",
"pid":"<target_pid>",
"initCommands": [
"platform select remote-linux",
"platform connect connect://<remote_host>:9191"
],
"sourceMap": {
"/export/home/pb2/build/sb_0-15908961-1436910670.17/mysql-5.6.26":"/Users/hongbin/workbench/mysql-server"
}
},
program:本机也要拷贝一份目标程序,加载
pid:填写远程主机的mysqld进程id
sourceMap:填写mysqld编译的代码路径与本机代码库路径的映射,这样调试时代码才可以和程序关联在一起看
注意:记得调试前将代码切换到与目标程序版本一致的branch
⑸ 查看mysql运行状态的命令是什么
一、用phpMyAdmin进行查看
二、用命令行的SHOW 语句
直接在命令行下登陆MySQL运行SHOW STATUS;查询语句
同样的语句还有SHOW VARIABLES;,SHOW STATUS是查看MySQL运行情况,和上面那种通过pma查看到的信息基本类似。
SHOW VARIABLES
SHOW VARIABLES是查看MySQL的配置参数,还可以使用类似SHOW VARIABLES LIKE ‘Key%’
SHOW PROCESSLIST
SHOW PROCESSLIST是查看当前正在进行的进程,对于有锁表等情况的排查很有用处。一般情况下,打开MySQL的慢查询记录同样有利于排查。
SHOW OPEN TABLES
SHOW OPEN TABLES是显示当前已经被打开的表列表。
三、用MySQL自带工具mysqladmin 查看
使用MySQL自带的mysqladmin 工具查看status,使用以下命令
mysqladmin -uroot -p密码 status
显示的结果如下:
Uptime: 502963 Threads: 2 Questions: 8561820 Slow queries: 734681 Opens: 553
45 Flush tables: 1 Open tables: 85 Queries per second avg: 17.023
另外可以添加 -i 5 参数,让其每五秒自动刷新之。
mysqladmin -uroot -p密码 status -i 5
mysqladmin extended-status
同样的可以使用mysqladmin -uroot -p密码 extended-status来查看更多的MySQL运行信息,这种方式和第一种查看的信息基本一样。
⑹ 在linux系统中,mysql 中的命令 -o 怎么用
MYSQL命令行参数的详细说明:Usage:mysql [OPTIONS] [database]
-?, --help #显示帮助信息并退出
-I, --help #显示帮助信息并退出
--auto-rehash #自动补全功能,就像linux里面,按Tab键出提示差不多
-A, --no-auto-rehash #默认状态是没有自动补全功能的。-A就是不要自动补全功能
-B, --batch #mysql不使用历史文件,禁用交互
--character-sets-dir=name #字体集的安装目录
--default-character-set=name #设置数据库的默认字符集
--column-type-info #结果集返回时,同时显示字段的类型等相关信息
-c, --comments #Preserve comments. Send comments to the server. The
default is --skip-comments (discard comments), enable
with –comments
-C, --compress #在客户端和服务器端传递信息时使用压缩
-#, --debug[=#] #bug调用功能
-D, --database=name #使用哪个数据库
--default-character-set=name #设置默认的字符集
--delimiter=name #设置默认命令结束符
-e, --execute=name #执行mysql的sql语句
-E, --vertical #垂直打印查询输出
-f, --force #如果有错误跳过去,继续执行下面的
-G, --named-commands #Enable named commands. Named commands mean thisprogram's
internal commands; see mysql> help . When enabled, the named commandscan be used from any line of the query, otherwise only from the first line,before an enter.
Disable with --disable-named-commands. This option is disabled by default.
-g, --no-named-commands
Named commands are disabled. Use * form only, or use named commands onlyin the beginning of a line ending with a semicolon (;) Since version 10.9 theclient now starts with this option ENABLED by default! Disable with '-G'. Longformat commands still work from the first line. WARNING: option deprecated;
use --disable-named-commands instead.
-i, --ignore-spaces #忽视函数名后面的空格.
--local-infile #启动/禁用LOAD DATA LOCAL INFILE.
-b, --no-beep #sql错误时,禁止嘟的一声
-h, --host=name #设置连接的服务器名或者Ip
-H, --html #以html的方式输出
-X, --xml #以xml的方式输出
--line-numbers #显示错误的行号
-L, --skip-line-numbers #忽略错误的行号
-n, --unbuffered #每执行一次sql后,刷新缓存
--column-names #查寻时显示列信息,默认是加上的
-N, --skip-column-names #不显示列信息
-O, --set-variable=name #设置变量用法是--set-variable=var_name=var_value
--sigint-ignore #忽视SIGINT符号(登录退出时Control-C的结果)
-o, --one-database #忽视除了为命令行中命名的默认数据库的语句。可以帮跳过日志中的其它数据库的更新。
--pager[=name] #使用分页器来显示查询输出,这个要在linux可以用more,less等。
--no-pager #不使用分页器来显示查询输出。
-p, --password[=name] #输入密码
-W, --pipe #Use named pipes to connect to server.
-P, --port=# #设置端口
--prompt=name #设置mysql提示符
--protocol=name #设置使用的协议
-q, --quick #不缓存查询的结果,顺序打印每一行。如果输出被挂起,服务器会慢下来,mysql不使用历史文件。
-r, --raw #写列的值而不转义转换。通常结合--batch选项使用。
--reconnect #如果与服务器之间的连接断开,自动尝试重新连接。禁止重新连接,使用--disable-reconnect。
-s, --silent #一行一行输出,中间有tab分隔
-S, --socket=name #连接服务器的sockey文件
--ssl #激活ssl连接,不激活--skip-ssl
--ssl-ca=name #CA file in PEM format (check OpenSSL docs, implies--ssl).
--ssl-capath=name #CA directory (check OpenSSL docs, implies --ssl).
--ssl-cert=name #X509 cert in PEM format (implies --ssl).
--ssl-cipher=name #SSL cipher to use (implies --ssl).
--ssl-key=name #X509 key in PEM format (implies --ssl).
--ssl-verify-server-cert #连接时审核服务器的证书
-t, --table #以表格的形式输出
--tee=name #将输出拷贝添加到给定的文件中,禁时用--disable-tee
--no-tee #根--disable-tee功能一样
-u, --user=name #用户名
-U, --safe-updates #Only allow UPDATE and DELETE that uses keys.
-U, --i-am-a-mmy #Synonym for option --safe-updates, -U.
-v, --verbose #输出mysql执行的语句
-V, --version #版本信息
-w, --wait #服务器down后,等待到重起的时间
--connect_timeout=# #连接前要等待的时间
--max_allowed_packet=# #服务器接收/发送包的最大长度
--net_buffer_length=# #TCP/IP和套接字通信缓冲区大小。
--select_limit=# #使用--safe-updates时SELECT语句的自动限制
--max_join_size=# #使用--safe-updates时联接中的行的自动限制
--secure-auth #拒绝用(pre-4.1.1)的方式连接到数据库
--server-arg=name #.
--show-warnings #显示警告
⑺ 在 my.cnf 里面的 [mysqld] 段增加一个启动参数 需要输入什么命令呢需要先进入数据库么
如果忘记root密码可以重新设置,方法如下:
Windows:
1.以系统管理员登陆;
2.停止MySQL服务;
3.进入CMD,进入MySQL的安装目录,假设是D:/MySQL/MySQL Server 5.0/;
4.跳过权限检查启动MySQL,
D:/MySQL/MySQL Server 5.0/bin/mysqld-nt –skip-grant-tables
5.重新打开一个CMD,进入D:/MySQL/MySQL Server 5.0/bin/,
重设root密码
D:/MySQL/MySQL Server 5.0/bin/mysqladmin -uroot flush-privileges password 逗newpassword地
D:/MySQL/MySQL Server 5.0/bin/mysqladmin -u root -p shutdown
将newpassword替换为你的新密码,第二个命令会让你重复输入一次新 密码。
6. 在cmd里net start mysql
Unix&Linux:
1.用root或者运行mysqld的用户登录系统;
2.利用kill命令结束掉mysqld的进程;
3.使用–skip-grant-tables参数启动MySQL Server
#mysqld_safe –skip-grant-tables &
4.然后用空密码方式使用root用户登录 MySQL;mysql -u root
5.为root@localhost设置新密码
mysql> update mysql.user set password=PASSWORD('新密码') where User='root'mysql> flush privileges;mysql> quit
6. 重新启动MySQL
⑻ 如何动态修改Mysql的配置参数
登入mysql:
mysql -h localhost -u root -p
然后会让输入密码
查看当前配置参数(wait_timeout为例):
show session variables like '%wait_timeout%'; (或去掉session也一样)这是当前会话配置参数
现在我们来改这个值:
set wait_timeout=90;
然后我们一起再查看下当前配置参数:
show variables like '%wait_timeout%';
这是修改当前会话配置,当退出再新起一个会话时就会恢复原样。
想在所有会话都有效可以设置全局配置,参数把session改为global就可以了
set global wait_timeout=90;后再查看
show global variables like '%wait_timeout%';
再退出后重新进入看看,值还是在。
⑼ mysql基础知识——管理和连接
内容简介
今天主要给大家讲解mysql的简单管理与连接
管理
查看MySQL运行状态
MySQL安装好之后,默认是处于启动状态,但是要如何确认它是否启动呢?
可以在运行界面输入命令:services.msc 进入服务窗口
在服务窗口,我们找到之前安装时配置的MySQL服务名:MySQL80
我们看到,MySQL的服务处于正在运行状态。
关闭MySQL
可以在CMD窗口使用命令关闭
也可以在服务窗口直接右键关闭
启动MySQL
可以在CMD窗口使用命令启动
也可以在服务窗口启动MySQL
连接MySQL
命令连接
在CMD窗口输入命令:mysql -uroot -p ,然后输入你安装时配置的root命令即可连接MySQL
工具连接
我们使用管理工具Navicat来连接MySQL,只需要配置几个参数就可以连接了。
我们只需要输入服务器的IP,端口号,账号和密码即可连接上MySQL了,连接后就可以看到服务器上的所有数据了。
以上就是今天的全部内容,记得动手尝试一下加深记忆。
⑽ 那有比较全的MySql命令啊
1. 连接mysql:
mysqlbinmysql -h主机地址 -u 用户名 -p 用户密码
2.退出mysql:exit
3. 修改密码:
mysqlbinmysqladmin -uroot -p(oldpassword) password newpassword
4.增加用户:
添加一个用户test1 密码为ABC;让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入
mysql,然后键入以下命令:grant select,insert,update,delete on *.* to test1@"%" Identified
by "abc";
增加一个用户test2密码为abc,让其只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地
主机,即mysql数据库所在的那台主机),这样用户即使用知道test2的密码,也无法从internet上直接访问数据库,只能通过mysql主机上的web页
来访问了。grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
增加一个可以从任何地方连接服务器的一个完全的超级用户
grant all privileges on *.* to test3@"%" identified by 'password' with grant option;
5.删除授权
revoke select,insert,update,delete om *.* from test2@localhost ;
--------------------------------------------------------
6.显示数据库
show databases;
7.显示数据库中的表
use dataname;
show tables;
8.显示表的结构
describe tablesname;
9.建库
create database 库名;
10.建表
use dataname;
create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default '深圳',
year date
); //建表结束
//以下为插入字段
insert into teacher values('','glchengang','深圳一中','1976-10-10');
insert into teacher values('','jack','深圳一中','1975-12-23');
注:在建表中
(1) 将ID设为长度为3的数字字段:int(3),并让它每个记录自动加一: auto_increment,
并不能为空:not null,而且让它成为主字段primary key
(2) 将NAME设为长度为10的字符字段
(3) 将ADDRESS设为长度50的字符字段,而且缺省值为深圳。varchar和char有什么区别
呢,只有等以后的文章再说了。
(4) 将YEAR设为日期字段。
如果你在mysql提示符键入上面的命令也可以,但不方便调试。 你可以将以上命令
原样写入一个文本文件中假设为school.sql,然后复制到c:下,并在DOS状态进入目录
mysql in,然后键入以下命令:
mysql -uroot -p密码 < c:school.sql
如果成功,空出一行无任何显示;如有错误,会有提示。(以上命令已经调试,你
只要将//的注释去掉即可使用)。
11.删除库和删除表
drop dataname;
drop tablename;
12.将表中的记录清空
delete from tablename;
13.显示表中的记录
select * from tablename;
14.表重命名
alter table t1 rename t2
---------------------------------------------------------
15. 备份数据库
mysqlbinmysqlmp -h(ip) -uroot -p(password) databasename > database.sql
16. 恢复数据库
mysqlbinmysql -h(ip) -uroot -p(password) databasename < database.sql
17.复制数据库
mysqlmp --all-databases > all-databases.sal
18.备份表
mysqlbinmysqlmp -h(ip) -uroot -p(password) databasename tablename > tablename.sql
19.恢复表(操作前先把原来的表删除)
mysqlbinmysql -h(ip) -uroot -p(password) databasename tablename < tablename.sql
----------------------------------------------------------
20.为了改变列a,从INTEGER改为TINYINT NOT NULL(名字一样),
并且改变列b,从CHAR(10)改为CHAR(20),同时重命名它,从b改为c:
ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);
增加一个新TIMESTAMP列,名为d:
ALTER TABLE t2 ADD d TIMESTAMP;
在列d上增加一个索引,并且使列a为主键:
ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a);
删除列c:
ALTER TABLE t2 DROP COLUMN c;
增加一个新的AUTO_INCREMENT整数列,命名为c:
ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);
注意,我们索引了c,因为AUTO_INCREMENT柱必须被索引,并且另外我们声明c为NOT NULL,
因为索引了的列不能是NULL
---------------------------------------------------------------
21.数据的导入导出
A。mysqlimport
语法:mysqlbinmysqlimport database tables.txt( 文件名需要与表名相同)
参数:-d or --delete 新数据导入数据表中之前删除数据数据表中的所有信息;
-f or --force 不管是否遇到错误,mysqlimport将强制继续插入数据;
-i or --ignore mysqlimport跳过或者忽略那些有相同唯一关键字的行, 导入文件中的数据将被忽略;
-l or -lock-tables 数据被插入之前锁住表,这样就防止了, 你在更新数据库时,用户的查询和更新受到影响;
--fields-enclosed- by= char
指定文本文件中数据的记录时以什么括起的, 很多情况下数据以双引号括起。 默认的情况下数据是没有被字符括起的。
--fields-terminated- by=char
指定各个数据的值之间的分隔符,在句号分隔的文件中,分隔符是句号。您可以用此选项指定数据之间的分隔符。默认的分隔符是跳格符
(Tab)
--lines-terminated- by=str
此选项指定文本文件中行与行之间数据的分隔字符串 或者字符。 默认的情况下mysqlimport以newline为行分隔符。 您可以选择用一个字
符串来替代一个单个的字符: 一个新行或者一个回车。
mysqlimport命令常用的选项还有-v 显示版本(version), -p 提示输入密码(password)等。
--------------------------------------------------------------
22.常用插入、修改、删除语句
插入记录:insert into teacher values('','glchengang','深圳一中','1976-10-10');
修改记录:update mytable set single=′y′ where name=′abccs′;
删除记录:delete from mytable where name=′abc′;