职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 1717|回复: 4

mysql常用经典操作

[复制链接]
cayean 发表于 2007-5-10 15:57 | 显示全部楼层 |阅读模式
.连接服务器
mysql -u cnscn
-h 192.168.0.1
[-D dbname]
[-P 3306]
[--protocol=name] The protocol of connection (tcp,socket,pipe,memory)
[-S, --socket=name] 连接所用的套接字文件
[--character-sets-dir=name] 字符集所位于的目录

[--default-character-set=name] 默认的字符集
[-E, --vertical] 垂直地打列出查询输出


.创建数据库
Mysql>create database dbname;


.显示数据库列表
mysql>show databases;


.显示数据表列表
mysql>show tables;

.查看mysql设置参数
$mysqladmin -u root -p variables;


.开启服务器
$/etc/rc.d/init.d/mysqld start

$mysqld_safe --user=mysql &

$/etc/rc.d/init.d/mysqld stop

$mysqladmin shutdown -u root -p


.优化表
mysql>optimize table tblA,tblB;
或 [进行优化并检查修复任务]
$mysqlcheck -o dbname tblA tblB tblC -u root -p



.对表进行分析
mysql>analyze table tblA;

$mysqlcheck -a dbname [tblA tblB tblC ] -u root -p


.对表进行检查
mysql>check table tblA,tblB,tblC;



.


.赋权
mysql>grant all on dbname.* to username@ identified by 'localhostpassword'

刷新权限表
mysql>flush privileges;


.从txt文本文件向数据库导入文件
1)用select into做备份
select * from table where ... order... group by ...
into outfile '/tmp/data.dat'
[fields
[terminated by '\\t']
[[optionally] enclosed by '']
[escaped by '\\']
]
[lines terminated by '\\n']
[ignore number lines]
[(col_name,...)]


mysql>select * from tblName where id<10 int outfile &#39;a.dat&#39; fields terminated by &#39;|&#39; lines terminated by &#39;\\n&#39;;


2)用load data恢复
load data [low_priority | concurrent]
[local]
infile &#39;a.dat&#39;
[fields
[terminated by &#39;\\t&#39;]
[[optionally] enclosed by &#39;&#39;]
[escaped by &#39;\\&#39;]
]
[lines terminated by &#39;\\n&#39;]
[ignore number lines]
[(col_name,...)]

mysql>load data
infile &#39;a.dat&#39;
into table tblName
fields terminated by &#39;|&#39;
lines terminated by &#39;\\n&#39;;

3)mysqlimport---load data的等价命令
mysqlimport
dbname
-u root
-h localhost
-password
[--fields-terminated-by=...]
[--fields-enclosed-by=...]
[--fields-optionally-enclosed-by=...]
[--fields-escaped-by=...]
[--lines-terminated-by=...]

[--port=3306]
[--socket=/path/to/socket]
[--character-sets-dir=name]
[-d,--delete] 输入文件前,清空表
]-l,--lock-tables] 锁定准备写入的表
%mysqlimport dbname -u root -password a.dat

.导出成.sql语句
1)用mysqldump备份
--add-locks 加上锁表语句,建议使用,将加快速度,以加快insert时的速度
--add-drop-table 添加drop table
-A, --all-databases 导出所有的数据库
--allow-keywords 为避免不允许列名与关键字名不同,而在列名前加表名
-c,--complete-insert 使用完整的插入语句
-C,--compress 压缩数据
-B,--databases 存储指定的几个库
-e,--extended-insert 利用多行insert方式使结果更紧凑,速度更快,因为索引缓存器只在每个insert命令后刷新
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--lines-terminated-by=...
-h, --host=... 主机
-l,--lock-tables 锁表
-K,--disable-keys 在insert前使索引无效,之后有效,使插入有效
--opt等效于--quick --add-drop-table --add-locks --extened-insert --lock-tables的组合 这是最快的恢复
--password 提示输入密码
-P portnumber,--port=portnumber 指明TCP/IP端口号
-q,--quick 不对表进行暂存,但直接存储在stdout.用mysql_use_result()去做,对于大的表,必须这样做
-Q,--quote-names 把表和列的名放入单引号里
-r,--result-file=... 输出到指定文件.这在DOS中有用,因为它可以阻止UNIX的新行\\n符被转换成\\n\\r
-S /tmp/socket, 指定socket文件
--socket=/tmp/socket
-T,--tab=path-to-some-directory 为每一个表创建两个文件tblname.sql, tblname.txt
-u username, 连接的用户名
--user=username
-w,--where=&#39;where-condition&#39; 导出的条件
-X,--xml 以符合方法的XML形式存储数据库
-O net_buffer_length=n 当创建多行插入语句时,该数创建行数的大小最多为n(-e或-opt参数,n必须小于16MB)



%mysqldump
--where=&#39;id>5&#39; #只备份id大于5的记录
dbname
[tblname]
>/tmp/a.sql

2)导出到mysql_db.xml
%mysqldump mysql -X > mysql_db.xml

3)最快导出方式
%mysqldump mysql --opt >msyql.sql


4)恢复用mysqldump备份的数据库
%mysql dbname < /tmp/a.sql

mysql>source /tmp/a.sql


.查询参数
1) \\g 在语句尾,同;
2) \\G 在语句尾,使查询结果以竖形输出
3) \\c 在语句尾,使当前语句不执行
帕帕 发表于 2007-7-11 17:41 | 显示全部楼层
挺酷,多发点
阿伦 发表于 2007-7-12 02:47 | 显示全部楼层
勤奋真能造就财富吗?
我要全世界 发表于 2007-7-15 11:09 | 显示全部楼层
挺酷,多发点
金融小美女 发表于 2007-7-16 11:38 | 显示全部楼层
.  .  .  .
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-5-14 21:47 , Processed in 0.128879 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表