MySQL命令操作(Linux平台)
Linux shell 批量创建数据库/表
Shell 脚本如下:
- # create database and table
- HOST='localhost'
- PORT='3306'
- USER='root'
- PWD=''
- DBNAME='top123'
- TABLENAME='gametop800'
- mysql_login=''
- mysql_create_db=''
- mysql_create_table=''
- function mysql_create(){
- echo "login mysql $HOST:$PORT ..."
- mysql_login="sudo mysql -h $HOST -P $PORT -u $USER" # mysql -h host -P port -u root -p pwd
- echo | ${mysql_login}
- if [ $? -ne 0 ]; then
- echo "login mysql ${HOST}:${PORT} failed.."
- exit 1
- fi
- echo "create database $DBNAME ..."
- mysql_create_db="create database if not exists $DBNAME"
- echo ${mysql_create_db} | ${mysql_login}
- if [ $? -ne 0 ]; then
- echo "create db ${DBNAME} failed.."
- exit 1
- fi
- echo "create table $TABLENAME ..."
- mysql_create_table="create table $TABLENAME(
- id char(50) not null,
- top int,
- name char(100),
- category char(50),
- rating float,
- ratingcount char(20),
- download char(30),
- price char(20),
- publishdate char(20),
- version char(40),
- filesize char(40),
- requireandroid char(40),
- contentrating char(40),
- country char(10),
- dtime datetime not null,
- primary key(id, dtime)
- )"
- echo ${mysql_create_table} | ${mysql_login} ${DBNAME}
- if [ $? -ne 0 ]; then
- echo "create table ${TABLENAME} fail..."
- exit 1
- fi
- echo "create table ${TABLENAME} success!"
- }
# create database and table
HOST='localhost'
PORT='3306'
USER='root'
PWD=''
DBNAME='top123'
TABLENAME='gametop800' mysql_login=''
mysql_create_db=''
mysql_create_table='' function mysql_create(){
echo "login mysql $HOST:$PORT ..."
mysql_login="sudo mysql -h $HOST -P $PORT -u $USER" # mysql -h host -P port -u root -p pwd
echo | ${mysql_login}
if [ $? -ne 0 ]; then
echo "login mysql ${HOST}:${PORT} failed.."
exit 1
fi echo "create database $DBNAME ..."
mysql_create_db="create database if not exists $DBNAME"
echo ${mysql_create_db} | ${mysql_login}
if [ $? -ne 0 ]; then
echo "create db ${DBNAME} failed.."
exit 1
fi echo "create table $TABLENAME ..."
mysql_create_table="create table $TABLENAME(
id char(50) not null,
top int,
name char(100),
category char(50),
rating float,
ratingcount char(20),
download char(30),
price char(20),
publishdate char(20),
version char(40),
filesize char(40),
requireandroid char(40),
contentrating char(40),
country char(10),
dtime datetime not null,
primary key(id, dtime)
)" echo ${mysql_create_table} | ${mysql_login} ${DBNAME}
if [ $? -ne 0 ]; then
echo "create table ${TABLENAME} fail..."
exit 1
fi echo "create table ${TABLENAME} success!"
}
执行脚本后,结果如下:

MySQL 从常用操作命令:
显示数据库
show databases;
切换数据库 use top123;
显示数据库表
show tables;

修改主键
alter table gametop800 add primary key(id);
删除主键
alter table gametop800 drop primary key;
添加组合主键
alter table gametop800 add primary key(id, dtime);
如果感兴趣的话,可以深入综合运用awk,cut,paste,正则表达式,数据库操作等较为复杂的语法,完成MySQL数据库操作
下面是实现了一个抓取网页,提取特征,抽取信息,结果汇总,批量插入数据库永久保存
示例:

附加:
1) 查看正在处理的进程:
show processlist;
2) 查看数据库占空间大小:
show table status from some_database;
例如: show table status from top_500; # top_500 is a database
SELECT table_schema top_500, sum( data_length + index_length ) / 1024 / 1024 "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema ;
查询结果如下:

3) 日期模糊查询
对于日期如: 2012-01-03 12:34:54 , 2012-01-03 18:14:34, 2012-01-04 14:35:59等日期,想按日期,即 2012-01-03, 2012-01-04, 2012-01-05求和排序,可用 date_format(time, '%Y-%m-%d') 格式,如下:
select name, time, sum(num) from click_table where name='com.wordsmobile' group by date_format(time, '%Y-%m-%d') order by time desc limit 30;
2011-12-06 10:04:26 格式:
date_format(time, '%Y-%m-%d %H:%m:%S')
如查询今天签到的同学
select true_name from sign_in WhereDATE_FORMAT((datetime),'%Y-%m-%d') = DATE_FORMAT(NOW(),'%Y-%m-%d')group by true_name;
4)MySql 查询一周内最近7天记录
本周内:
select * from wap_content where week(created_at) = week(now);
查询一天:
select * from table where to_days(column_time) = to_days(now());
select * from table where date(column_time) = curdate();
查询7天:
select * from table where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time);
查询一个月:
select * from table where DATE_SUB(CURDATE(), INTERVAL 1 MONTH) <= date(column_time);
MySQL命令操作(Linux平台)的更多相关文章
- Mysql 命令 操作
1.user表 如果需要从其他机器连接 mysql 服务器报这个错“ERROR 1130: Host 'root' is not allowed to connect to this M ...
- 关于如何测试cpu性能的命令操作 linux系统
for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/d ...
- (0.2.1)mysql数据库环境-操作系统配置
目录 1.基于Linux平台的Mysql项目场景介绍 2.mysql数据库运行环境准备-最优配置 2.1.如何查看官方文档了解环境要求 2.2.安装虚拟机环境与操作系统 2.3.操作系统最优配置9大步 ...
- mysql常用操作与日志
在linux上的mysql命令 mysql -e "mysql内部命令" #可在外部显示myslq内的输出,-e可跟多条命令用;隔开 在mysql内的mysql命令 system ...
- linux命令-jdk及mysql安装操作
1. VMware虚拟机 VMWare虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Windows.DOS.LINUX系统. 1.1. vmware15安装配置 Work ...
- mysql命令行的导入导出sql,txt,excel(都在linux或windows命令行操作)(转自筑梦悠然)
原文链接https://blog.csdn.net/wuhuagu_wuhuaguo/article/details/73805962 Mysql导入导出sql,txt,excel 首先我们通过命令行 ...
- linux shell 操作 mysql命令(不进入mysql操作界面)
由于需要,需要将一系列mysql的操作制作成.sh文件,只需要shell操作bash命令就可以傻瓜式的完成黑盒任务. #!/bin/bash mysql -uroot -p??? -e "c ...
- Linux平台卸载MySQL总结
如何在Linux下卸载MySQL数据库呢? 下面总结.整理了一下Linux平台下卸载MySQL的方法. MySQL的安装主要有三种方式:二进制包安装(Using Generic Binaries).R ...
- linux下mysql命令
一.总结一下: 1.linux下启动mysql的命令: mysqladmin start/ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysq ...
随机推荐
- Linux文件的基本操作函数
1.Linux文件的基本操作 Linux文件的基本操作主要包括了文件的创建.打开.读写和关闭等基本操作. 1.1.文件操作系统调用 (1)创建文件系统函数 int creat(const char * ...
- charles 4.2.1 Ubuntu破解版安装
charles 4.2.1 Ubuntu破解版安装 下载 charles-proxy-4.2.1_amd64.tar.gz 破解版 charles.jar 破解包 解压 sudo tar -zxvf ...
- Java IO 与 NIO 服务器&客户端通信小栗子
本篇包含了入门小栗子以及一些问题的思考 BIO package com.demo.bio; import java.io.*; import java.net.ServerSocket; import ...
- [Linux] 在 Ubuntu 19.10 上开启 SSH 服务并允许远程登录
在 Ubuntu 19.10 上安装 SSH,并开启服务 0.检查并确认系统当前是否已安装SSH: sudo ps -e | grep ssh 如果只有 ssh-agent 说明 ssh-server ...
- 列表,元组以及range
列表,元组以及range 一.列表(list) 列表是数据类型之一,它有序,可变,支持索引 作用:存储数据,支持的数据类型很多:字符串,数字,布尔值,列表等 # 定义一个列表 lst = ['alex ...
- 法那科 三菱 CNC虚拟机
有虚拟机,就不用去线上 接线调机了,影响生产,还怕搞坏机子,很方便.
- 【Oracle】获取SQL执行计划
一.plsql developer工具F5 在sqldeveloper中选中sql按F5即可查看执行计划
- 复制Linux虚拟机(VMware vSphere Client 工具)
1.VMware vSphere Client 工具 登录,如下图 IP.用户名/密码均是物理机,登录完成界面: 2.选择一个复制的原虚拟机 A,点击左上角[文件]——导出——导出O ...
- 解决clover配置文件conf.plist中nv_disable=1或者nvda_drv=1不生效或者说不能删除的问题
情况一:U盘安装MacOS的时候conf.plist中设置了nv_disable=1,但是启动的时候任然显示nvda_drv=1. 这种情况一般出现在该机器曾经安装过MacOS,MacOS会将这个参数 ...
- 魔法 [线段树优化DP]
也许更好的阅读体验 \(\mathcal{Description}\) 小 \(D\) 正在研究魔法. 小 \(D\) 得到了远古时期的魔法咒语 \(S\),这个咒语共有 \(n\) 个音节,每个音节 ...