# mySQL
# 安装 mySQL 数据库
# 进入 mysql
mysql -uroot -p
- ⚠️ -参数后面最好不要留空格,否则可能会出错
# mySQL 常用参数
mysql命令参数详解:
-u 用户名
-p 用户密码
-h 服务器IP地址
-D 连接的数据库
-N 不输出列信息
-B 使用tab键代替默认交互分隔符(可能要写在-e之前的最后一个参数才会生效)(awk/sed处理起来更方便)
-e 执行SQL语句
其他选项
-E 垂直输出
-H 以HTML格式输出
-X 以XML格式输出
例如:
mysql -uroot -p20052017 -D school -e "select * from student"
+------+-----------+----------------+--------+
| s_id | s_name | s_birth | s_sex |
+------+-----------+----------------+--------+
| 1001 | zhaolei | 1990-1001-1001 | male |
| 1002 | lihang | 1990-12-21 | male |
+------+-----------+----------------+--------+
mysql -uroot -p20052017 -D school -N -B -e "select * from student"
1001 zhaolei 1990-1001-1001 male
1002 lihang 1990-12-21 male
mysql -uroot -p20052017 -D school -N -E -B -e "select * from student"
*************************** 1. row ***************************
1001
zhaolei
1990-1001-1001
male
*************************** 2. row ***************************
1002
lihang
1990-12-21
male
mysql -uroot -pyawjsljc20052017 -D school -H -B -e "select * from student"
<TABLE BORDER=1><TR><TH>s_id</TH><TH>s_name</TH><TH>s_birth</TH><TH>s_sex</TH></TR><TR><TD>1001</TD><TD>zhaolei</TD><TD>1990-1001-1001</TD><TD>male</TD></TR><TR><TD>1002</TD><TD>lihang</TD><TD>1990-12-21</TD><TD>male</TD></TR><TR><TD>1003</TD><TD>yanwen</TD><TD>1990-1005-20</TD><TD>male</TD></TR><TR><TD>1004</TD><TD>hongfei</TD><TD>1990-1008-1006</TD><TD>male</TD></TR><TR><TD>1005</TD><TD>ligang</TD><TD>1991-12-1001</TD><TD>female</TD></TR><TR><TD>1006</TD><TD>zhousheng</TD><TD>1992-1003-1001</TD><TD>female</TD></TR><TR><TD>1007</TD><TD>wangjun</TD><TD>1989-1007-1001</TD><TD>female</TD></TR><TR><TD>1008</TD><TD>zhoufei</TD><TD>1990-1001-20</TD><TD>female</TD></TR></TABLE>
# 常用命令
# 查看数据库版本
- 命令行进入数据库之后
select version();
查看数据库版本 ⚠️ 分号不能少
# 查看数据库 List
show databases;
# 创建数据库
create database 库名;
# 删除数据库
drop database 库名;
例如:
create database school default character set utf8;
⚠️ 库名直接写,不要加任何引号
# 使用某个数据库
use 数据库名称
# 创建表
create table 表名(字段名 类型 options);
多个字段逗号隔开
例如:
create table 表名(ID int NOT NULL);
# 查看表
show tables;
# 查看表内容
select * from student;
# 执行某个文件的 mysql
- 命令行中
mysql -u root -p school < school.sql
,输入密码然后执行 ⚠️ 这种操作 macos 中.sql 不能够有--注释
# shell 结合 sql 的使用
基本使用流程就是通过 sql 语句查出需要的数据,然后转 txt 最后转成 excel 等方便阅读
也可以使用插件直接在命令行处理数据直接转成.xlsx
# 查询数据
sh test1.sh "select * from student"
# 插入数据
sh test1.sh school "insert into score values("1021","1020","100")"
test1.sh
user=root
pwd=yawjsljc20052017
sql=$1
mysql -u"$user" -p"$pwd" -D school -B -e "$sql" > text.txt
← awk 练习 将文本内容插入数据库 →