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 ...
随机推荐
- [转] 下载文件旁边附的MD5/SHA256等有什么用途?
在我们下载很多软件时,旁边会出现md5,sha1/sha256/sha512等一长串字符串,这些字符串是什么意义呢? 因为怕盗版或者怕软件被植入病毒或者插件等,要对软件的完整性做校验.步骤:先下载完软 ...
- Beautiful Soup库入门
1.安装:pip install beautifulsoup4 Beautiful Soup库是解析.遍历.维护“标签树”的功能库 2.引用:(1)from bs4 import BeautifulS ...
- Anaconda3配置多版本python环境开发
关注公众号:TJHIT
- JVM堆内存参数优化,让性能飞起来
堆内存是Java进程的重要组成部分,几乎所有与应用相关的内存空间都和堆有关.现在主要介绍与堆内存相关的参数设置,这些参数对Java虚拟机中非常重要的,也是对程序性能有着重要的影响.让你彻底脱离OOM内 ...
- xe.10.2的下载路径
为了这个玩意,我折腾了一天,为了以后自己还用到 官网地址: http://altd.embarcadero.com/download/radstudio/10.2/delphicbuilder10_2 ...
- Django框架之第八篇(模型层补充)--数据库的查询与优化:only/defer,select_related与prefetch_related,事务
在设置外键字段时需要注意: 当你使用django2.x的版本时候,在建立外键关系时,需要你手动添加几个关键点参数 models.cascade #设置级联删除 db_constraints 数据库查询 ...
- Android apk逆向:反编译,回编译,签名,打包。
Android apk逆向:反编译,回编译,签名,打包流程. 第一步: apk 反编译. 1) 打开命令行窗口,输入java -version, 检测当前java版本,若版本较低, 则下载JAVA S ...
- deppin Linux下安装docker
首先楼主用的是deppin15.11 docker 简介:Docker作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中,然后很容易地发布和应用到任意平台中. ...
- DbParameter关于Like查询的传参数无效问题
用传参方式模糊查询searchName 按常规的思路,我们会这样写 ,代码如下: String searchName ="Sam"; String strSql = "s ...
- Java自学-数组 Arrays
java.util.Arrays类常用方法 Arrays是针对数组的工具类,可以进行 排序,查找,复制填充等功能. 大大提高了开发人员的工作效率. 步骤 1 : 数组复制 与使用System.arra ...