因为我用的linux机器事先已经装好了mysql,所以安装部门就先忽略。

  进入mysql,如果发现没权限的话,使用 mysql -uroot -p 输入密码即可

  

  首先我们使用 create database 数据库名; 来建一个 bryan_test的数据库:

  

  然后使用 show databases; 来查询当前有的数据库,可以看到bryan_test是存在的。

  接下来的操作,我们都是针对这个数据库的,因此我们第一步需要使用 use 数据库名;

  然后再使用建表语句:

create table bryan_test( md5 varchar(16) primary key, eng varchar(256), chi varchar(256), cate varchar(20), url varchar(50), create_time date );

  

  建完表之后,我们就可以使用 show tables; 来查看我们建的表了。

  使用 desc 表名; 就可以看到数据库的字段属性了:

  

  试着插入一条记录看看:

insert into translation values("12ab42cf4632def13",  "hello world", "你好,世界", "计算机用语", "www.testsql.com", '2017/01/12');

  

  插完之后查询一下,使用下面语句:

select * from translation;

  

  顺便再看看如果要更新的话,例如我们要更新cate这一列内容:

update translation set cate="计算机|||日常用语" where eng="hello world";

  

  最后我们看删除:

delete from translation where cate like '%计算机%';

  

  到此为止。增、删、改、查我们已经都学习了。接下来我们看看如何进行批量的插入,首先我们准备一个文件,内容如下:

  

  我们通过shell脚本读取文件中的内容,然后写入到数据库中:

#!/bin/bash

#db相关
username="root"
password="******"
dbname="bryan_test"
tablename="translation" #数据相关
md5="default"
eng=""
chi="" # 读取文件
echo "read file"
mysql -u${username} -p${password} -e "use ${dbname};" while read line
do
# 删除最后一个|||字符左边的所有字符
chi=${line##*|||}
#echo $chi # 删除第一个|||字符右边的所有字符
md5=${line%%|||*}
#echo $md5 # 先删除最后一个|||右边的所有字符
tmp=${line%|||*}
# 再删除第一个|||字符左边的所有字符
eng=${tmp#*|||}
#echo $eng insert_sql="insert into ${tablename} values(\"${md5}\", \"${eng}\", \"${chi}\", \"计算机用语\", \"www.testsql.com\", '2017/01/12');"
mysql -u${username} -p${password} ${dbname} -e "${insert_sql}" done < data.txt mysql -u${username} -p${password} ${dbname} -e "show tables;" echo "end"

  运行之后,我们就将这些数据插入到了数据库中,我们来查看一下,由于数据较多我们使用 limit 5来查看前三条数据(mysql 没有top这种用法),另外文本太长,我们选择用\G按行垂直显示,命令为:

select * from translation order by md5 limit 5 \G;

  

  可见我们已经导入了至少1w条的数据了。这次的数据库相关操作就演示到这里了。

Linux下MySQL小尝试的更多相关文章

  1. linux下MySQL安装登录及操作

    linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

  2. 【MySQL】Linux下MySQL 5.5、5.6和5.7的RPM、二进制和源码安装

      [MySQL]Linux下MySQL 5.5.5.6和5.7的RPM.二进制和源码安装 1.1  BLOG文档结构图 1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后, ...

  3. (原创)Linux下MySQL 5.5/5.6的修改字符集编码为UTF8(彻底解决中文乱码问题)

    « CloudStack+XenServer详细部署方案(10):高级网络功能应用 (总结)CentOS Linux 5.x在GPT分区不能引导的解决方法 » 2013-1 11 (原创)Linux下 ...

  4. Linux下MySQL Error 1130 不能远程访问(转)

    Linux下MySQL Error 1130 不能远程访问 内容简介:远程连接MySQL时总是报出erro 2003: Can't connect to MySQL server on '211.87 ...

  5. Linux下MySQL忘记密码

    系统:CentOS6.6 64位 参考文档(截图请看原网址): Linux下MySQL忘记root密码怎么办_百度经验 http://jingyan.baidu.com/article/1709ad8 ...

  6. linux 下mysql的启动 、调试、排错

    Linux 下 MySQL 启动与关闭 说明 一.启动 1.1  MySQL 进程 可以用ps 命令查看进程: [root@rac2 ~]# ps -ef|grep mysql root     21 ...

  7. linux下mysql远程访问

    // */ // ]]>   linux下mysql远程访问 Mysql默认root用户只能本地访问,不能远程连接管理mysql数据库,但项目中必须要远程导 入导出数据,所以研究了一下. Tab ...

  8. linux下mysql字符集编码问题的修改

    安装完的MySQL的默认字符集为 latin1 ,为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件:由于linux下MySQL的默认安装目录分布在不同的文件下:不像windo ...

  9. Linux下MySQL的备份与还原

    Linux下MySQL的备份与还原 1. 备份 [root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录) [roo ...

随机推荐

  1. 阿里云ECS服务器磁盘挂载(转)

    买了阿里云的ECS云服务器,本机赠送20GB的磁盘,感觉不够用,又买了一块500GB的磁盘,本文就是记录怎么把这500GB的磁盘挂载上. 检查现在磁盘情况 我们可以看到买的那个500GB的磁盘没有出现 ...

  2. CSS Box Model(盒子模型)

    CSS Box Model(盒子模型) 一.简介 所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封 ...

  3. 20145328 《Java程序设计》课程总结

    20145328 <Java程序设计>课程总结 每周学习总结链接汇总 20145328 <Java程序设计>第0周学习总结 20145328 <Java程序设计>第 ...

  4. 20145328 《Java程序设计》实验一实验报告

    20145328 <Java程序设计>实验一实验报告 实验名称 Java开发环境的熟悉(Windows + IDEA) 实验内容 使用JDK编译.运行简单的Java程序: 使用IDEA 编 ...

  5. TCP深入详解

    TCP三次握手.四次挥手时序图: #TCP协议状态机 1.TCP建立连接时的初始化序列号X.Y可以是写死固定的吗?      如果初始化序列号(缩写为ISN:Inital Sequence Numbe ...

  6. c# 过滤HTML代码 源代码,案例 下载

    #region 过滤HTML代码 //替换掉html字符,只显示文字信息. public string replaceHtmlCode(string Htmlstring) { Htmlstring ...

  7. java堆排序(大根堆)

    实现堆排序的算法思路是先创建堆,也就是从叶子节点起对每一层的孩子节点及其对应位置的父亲节点进行比较,较大的孩子节点替换较小的父亲节点,一级一级比较替换,就创建出了大根堆,小根堆反之.创建好大根堆以后, ...

  8. Mysql事物的4种隔离级别

    SQL标准定义了4种隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的. 低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销. 首先,我们使用 test 数据库, ...

  9. HDFS读写流程learning

    有许多对流程进行描述的博客,但是感觉还是应当学习一遍代码,不然总感觉怪怪的,https://blog.csdn.net/popsuper1982/article/details/51615285,首先 ...

  10. Vuex访问状态对象的方法

    除了<Vuex最基本样例>中的方法外,还有两种方法访问状态对象state: 只需要改app.vue文件 方法一:引入computed <template> <div id ...