1. Install 

1.1 install mysql

      sudo apt-get install lamp-server^
(tip: Set password)

1.2 install MySQLdb

   sudo apt-get install python-dev
2 sudo apt-get install libmysqlclient-dev
3 sudo apt-get install python-pip
4  sudo pip install MySQL-python

2. Commands

2.1 View

     mysql -u root -ppasswd
  show databases;
use database;
show tables;
describe table;
select * from table where colname = "##";
(tip:count(*),limit;orderby;distinct,like)

2.2  Use

 create database ###;
CREATE TABLE chem_gene
(
chem_gene_id int NOT NULL AUTO_INCREMENT,
chemicalName varchar() NOT NULL,
genesymbol varchar() NOT NULL,
interaction text NOT NULL,
interactionActions text NOT NULL,
CONSTRAINT chem_gene PRIMARY KEY(chem_gene_id)
) ;
insert into tablename values(##,###,###)

2.3. update && delete

     update ### set colname1=### where colname2=###;
delete from tablename;
delete from tablename where colname = ###;
drop table tablename;
drop database databasename;

2.4. coding

   create table (character set = utf8;)
alter table ### convert to character set utf8;

2.5  create web user

   mysql -u root -ppasswd
grant insert ,create,delete,select,drop,alter,index,update on dbname.* to username identified by "passwd";
mysql -u username -ppasswd

 3. Mysql  Work with python 

3.1 sql script create database && create table

CREATE TABLE chem_gene
(
chem_gene_id int NOT NULL AUTO_INCREMENT,
chemicalName varchar(255) NOT NULL,
chemicalID varchar(100) NOT NULL,
casId varchar(100) NOT NULL,
genesymbol varchar(100) NOT NULL,
geneid varchar(100) NOT NULL,
geneforms varchar(255) NOT NULL,
organism varchar(100) NOT NULL,
organismid varchar(100) NOT NULL,
interaction text NOT NULL,
interactionActions text NOT NULL,
pubmedid varchar(100) NOT NULL,
CONSTRAINT chem_gene PRIMARY KEY(chem_gene_id)
)
character set = utf8;
(tip: mysql -u username -ppasswd -D dbname < ####.sql )

3.2. python  insert  by MySQLdb

#!/usr/bin/env/python
# -*- coding:UTF-8 -*-
from __future__ import print_function
import sys
import MySQLdb fin = sys.argv[1]
table = sys.argv[2] def mysql_conn(ip,user,passwd,db,port):
try:
conn = MySQLdb.connect(host=ip,user=user,
passwd=passwd,db=db,port=port,charset='utf8')
cur = conn.cursor()
return conn,cur
except MySQLdb.Error,e:
print(e.args)
sys.exit(1) def insert_db(conn,cursor,command):
try:
cursor.execute(command)
conn.commit()
except MySQLdb.Error,e:
print(e.args)
sys.exit(1) with open(fin) as input:
conn,cur = mysql_conn("192.168.1.104","tcd_net","tcd_net","ctd_net",3308)
for line in input:
if not line.startswith("#"):
content = line.strip().split("\t")
out = tuple([""]+content)
command = "insert into %s values%s;"%(table,out)
print(command)
try:
insert_db(conn,cur,command)
except:
print("insert failed")
sys.exit(1)
conn.close()
cur.close()
(tip: python ###.py ###.txt tablename )

3.3  python query  by MySQLdb

#!/usr/bin/env/python
# -*- coding:UTF-8 -*-
from __future__ import print_function
import MySQLdb
import sys chem_name = sys.argv[1] def mysql_connect():
try:
conn = MySQLdb.connect(host="localhost",user="tcd_net",
passwd='tcd_net',db='ctd_net',port=3306,charset='utf8')
cur = conn.cursor()
return conn,cur
except MySQLdb.Error,e:
print(e.args)
sys.exit(1) def query_db(conn,cursor,command):
try:
cursor.execute(command)
conn.commit()
results = cursor.fetchall()
return results
except MySQLdb.Error,e:
print(e.args)
sys.exit(1) def chem_gene_query(chem):
conn,cur = mysql_connect()
query_command = """select chemicalName,chemicalID,casId,
genesymbol,geneid,geneforms,organism,organismid,interaction,
interactionActions,pubmedid from chem_gene where chemicalName = "%s";"""%chem
chem_gene_result = query_db(conn,cur,query_command)
for res in chem_gene_result:
print("\t".join(res)) chem_gene_query(chem_name) (tip: python ###.py chem_name)

4. Mysql import && dump

    mysql -u root -ppasswd -D dbname < ****.sql
mysqldump -u root -ppasswd dbname > ****.sql

5..Mysql config

sudo service  mysql status/start/restart/stop
/etc/mysql/my.cnf
[client]
port =
socket = /var/run/mysqld/mysqld.sock
[mysqld]
user = mysql
port =
datadir = /var/lib/mysql
bind-address = 0.0.0.0 

Python 培训之MySql的更多相关文章

  1. 曾Python培训讲师-2年Python开发无包装简历-20191217-可公开

    目录 个人介绍 技能介绍 项目经历 自我评价 简历非完整版,需要完整版看下述信息,禁止任何一切私人用途.转发 我生日是27号,那就27元一份,有需求的来购买!只会涨价不会降价,大概卖10份涨1元:曾P ...

  2. Python中操作mysql的pymysql模块详解

    Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...

  3. python——django使用mysql数据库(二)

    上一篇中,我们已经讲述了如何初始化一个django数据库,这一章就来讲讲在实际的项目中如何使用我们初始化的数据库呢? 如还未进行初始化数据库操作,请参考python——django使用mysql数据库 ...

  4. python——django使用mysql数据库(一)

    之前已经写过如何创建一个django项目,现在我们已经有了一个小骷髅,要想这个web工程变成一个有血有肉的人,我们还需要做很多操作.现在就先来介绍如何在django中使用mysql数据库. 前提:已经 ...

  5. Python 3 and MySQL

    http://stackoverflow.com/questions/4960048/python-3-and-mysql up vote61down votefavorite 20 I am usi ...

  6. 智普教育Python培训之Python开发视频教程网络爬虫实战项目

    网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 01.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Python视频 02.mp4 网络爬虫项目实训:看我如何下载韩寒博客文章Pytho ...

  7. 2015老男孩Python培训第八期视频教程

    2015老男孩Python培训第八期视频教程,希望您通过本教程的学习,能学会常用方法和技巧.教程从基础知识开始讲解一直到后期的案例实战,完全零基础学习,从初学者的角度探讨分析问题,循序渐进由易到难,确 ...

  8. 老王Python培训视频教程(价值500元)【基础进阶项目篇 – 完整版】

    老王Python培训视频教程(价值500元)[基础进阶项目篇 – 完整版] 教学大纲python基础篇1-25课时1.虚拟机安装ubuntu开发环境,第一个程序:hello python! (配置开发 ...

  9. python & pandas链接mysql数据库

    Python&pandas与mysql连接 1.python 与mysql 连接及操作,直接上代码,简单直接高效: import MySQLdb try: conn = MySQLdb.con ...

随机推荐

  1. Xamarin Android -创建Splash Screen (一)

    ......(空话少说) Xamarin 开发的技术资料很少,通过学习,把自己的学习过程及其中碰到的问题与大家分享. Splash Screen 就是在应用程序启动时,出现的一张图片,一般App的Sp ...

  2. js的Array的map和sort实现方法

    Array.prototype.mapA = function(fun /*, thisp*/) { var len = this.length; if (typeof fun != "fu ...

  3. Socket网络编程--FTP客户端

    Socket网络编程--FTP客户端(1)(Windows) 已经好久没有写过博客进行分享了.具体原因,在以后说. 这几天在了解FTP协议,准备任务是写一个FTP客户端程序.直接上干货了. 0.了解F ...

  4. Android四大组件之Activity详解——创建和启动Activity

    前面我们已经对Activity有过简单的介绍: Android开发——初始Activity Android开发——响应用户事件 Android开发——Activity生命周期 先来看一下最终结果 项目 ...

  5. Extjs 使用图标字体来美化按钮)

    1. 使用Font Awesome,下载地址http://www.bootcss.com/p/font-awesome/#icons-new 2. 把font和css目录放到 Ext的app目录下面 ...

  6. Java--剑指offer(9)

    41.输出所有和为S的连续正数序列.序列内按照从小至大的顺序,序列间按照开始数字从小到大的顺序 import java.util.ArrayList; public class Solution { ...

  7. [转]《Hadoop基础教程》之初识Hadoop

    原文地址:http://blessht.iteye.com/blog/2095675 Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不 ...

  8. Mybatis 高级结果映射 ResultMap Association Collection

    在阅读本文章时,先说几个mybatis中容易混淆的地方: 1. mybatis中的列不是数据库里的列而是查询里的列,可以是别名(如 select user_name as userName,这时col ...

  9. js base64位和c# Base64位转换

    <script> /* 编码规则 Base64编码的思想是是采用64个基本的ASCII码字符对数据进行重新编码. 它将需要编码的数据拆分成字节数组. 以3个字节为一组.按顺序排列24 位数 ...

  10. python学习笔记10(Python的内存管理)

      用这张图激励一下自己,身边也就只有一位全栈数据工程师!!! 32. Python的内存管理 1. 对象的内存使用 对于整型和短字符串对象,一般内存中只有一个存储,多次引用.其他的长字符串和其他对象 ...