您的位置:首页 > 数据库 > MySQL

mysql常用几个操作记录

2016-04-19 16:05 766 查看
一、数据库的导出导入

http://see.xidian.edu.cn/cpp/u/mysql_ml/

 

几个常用用例:

1. 进入数据库

mysql -u root -pmysql -h localhost databaseName;

2.创建帐号

         GRANTALL PRIVILEGES ON *.* TO mysql@localhost IDENTIFIED BY 'mysql' WITH GRANTOPTION;

 

允许IP连接数据库

grant allprivileges on *.* to '用户名'@'IP地址' identified by '密码';

1.导出整个数据库

mysqldump –u 用户名–p 数据库名> 导出的文件名

 mysqldump-u wcnc -p smgp_apps_wcnc > wcnc.sql

2.导出一个表

 mysqldump-u 用户名 -p 数据库名表名> 导出的文件名

 mysqldump-u wcnc -p smgp_apps_wcnc users> wcnc_users.sql

3.导出一个数据库结构

  mysqldump-u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql

  -d 没有数据 --add-drop-table在每个create语句之前增加一个drop table

4.导出一个数据库结构带存储过程

  mysqldump-u wcnc -p –d -R --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql

 -d 没有数据 --add-drop-table在每个create语句之前增加一个drop table

-R 加存储过程

5. 导出一个特定日期内的表的数据不带表结构

mysqldump -t --skip-tz-utc --where="Date>'$begin' andDate<'$end'" --opt -h182.254.133.118 -uroot -proot!@34 poker chargeInfo

-t 不带表创建--skip-tz-utc 使用当前时区导数据–where 符合条件

6.不加锁备份数据,默认备份时会对表加锁,insert,update等会阻塞

--lock-tables=false

(可能会导致数据不一致,还没细研究)

 

导入数据库

  常用source 命令

  进入mysql数据库控制台,

  如mysql -u root-p

 

  mysql>use数据库

  然后使用source命令,后面参数为脚本文件(如这里用到的.sql)

  mysql>sourced:\wcnc_db.sql

 

6.导入CSV数据。

load data infile '/tmp/test.csv'

into table XXXXX

fields terminated by ','  optionally enclosed by '"' escaped by'"'

lines terminated by '\r\n';

注意在LINUX上文件在存为ansi格式。在window上在存为UTF8

 

关联删除:

use poker;

delete from friends where

FriendId in(

select UserID from sys_users where 

and UserID < 65535

)

 

如果一条SQL执行时间太长了。需要停止这条SQL方法:

how processlist;

找出你要终止的语句的id

在系统下mysqladmin -uroot -ppassword kill 要杀的ID
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: