一、导出数据外部
1)mysql 连接 + 将查询结果输出到文件。在命令行中执行(windows 的 cmd 命令行,mac 的终端)
- mysql - hxx - uxx - pxx - e "query statement"db > file
-h:后面跟的是链接的 host(主机)
-u: 后面跟的是用户名
-p: 后面跟的是密码
db: 你要查询的数据库
file: 你要写入的文件,绝对路径
例如:
下面将 sql 语句 select * from edu_iclass_areas 的查询结果输出到了 /Users/zhengcanrui/WORK/test/test.xls 这个文件中。
- mysql - h127.0.0.1 - uroot - p123 - e "select * from edu_iclass_areas"test > /Users/zhengcanrui / WORK / test / test.xls
2)mysql 连接 和 将查询结果输出到数据库分开执行
- mysql - hxxx - uxx - pxx select * from table into outfile 'xxx.txt';
-h/-u/-p 的参数都没的内容和上面一致, xxx.txt 是要输出的文件路径及其名称。
如:
- --登录mysql mysql - h127.0.0.1 - uroot - p123--将查询结果输出到文件中select * from edu_iclass_areas into outfile / Users / zhengcanrui / WORK / test / test.xls
上面两种的执行效果是等价的。
二、遇到的问题
1、mac 在终端启动 mysql 的命令
1)安装好 MySQL 服务后(安装步骤可以参考系列经验 1)。打开 "系统偏好设置",单击下端的 "MySQL" 图标。
2)在 "MySQL" 对话框中,单击 "启动 MySQL 服务" 按钮
3)在 Finder 的侧边栏中单击 "应用程序",然后在 "实用工具" 中,双击启动 "终端" 命令。
4)在终端中输入添加 MySQL 路径的命令:
- PATH = "$PATH": /usr/local / mysql / bin
5)在终端登录到 MySQL 的命令如下:
- mysql - u root - p
2、Access denied for user 'mysql 用户名'@'主机或 IP' (using password: YES)'
原因:
mysql 的权限对 localhost 的访问没有放开。
可以使用如下命令来放开权限 (授权):
首先进入到 mysql 的客户端命令行。
然后输入:
1:你想使用 mysql 的用户名 myuser 从任何主机连接到 mysql 服务器,并使用 mypassword 作为密码
- GRANT ALL PRIVILEGES ON * . * TO 'myuser'@'%'IDENTIFIED BY 'mypassword'WITH GRANT OPTION;
- flush privileges;
2:你想使用 mysql 的用户名 myuser 从 ip 为 192.168.1.3 的主机连接到 mysql 服务器,并使用 mypassword 作为密码
- GRANT ALL PRIVILEGES ON * . * TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword'WITH GRANT OPTION;
- flush privileges;
执行完这两条命令就可以。
来源: http://www.cnblogs.com/0201zcr/p/5846153.html