码迷,mamicode.com
首页 > 数据库 > 详细

数据库连接

时间:2017-08-18 13:36:08      阅读:291      评论:0      收藏:0      [点我收藏+]

标签:mysq   取数据   log   color   创建   输入密码   文件   地址   防火墙   

  Python初次连接数据库总结

  用JDBC访问Oracle,即java连接本机数据库的时候,地址用localhost和127.0.0.1都可以。但是这两者有什么区别?哪个更好?有很多人认为这两个是完全一样的,也有人认为127.0.0.1更好,因为是本地IP,不需要从域名解析。

一. 两者区别

1. localhost也叫local ,正确解释为:本地服务器;

   127.0.0.1在系统的正确解释是:本机地址(本机服务器)。

2. localhot(local)是不经网卡传输!所以它不受网络防火墙和网卡相关的的限制。访问localhost也不会解析成ip,不会占用网卡、网络资源;

   127.0.0.1是需要通过网卡传输,依赖网卡,并受到网络防火墙和网卡相关的限制。

3. 这就是为什么有时候用localhost可以访问,但用127.0.0.1就不可以的情况,所以还是尽量用localhost。

二. 数据库默认端口号

SQL Server 1433   ; Oracle  1521  ; MySQL  3306  。

三. Python访问数据库实例

1. 将数据原始文件“law.sql”导入数据库(windows环境下)

  1) 在设置过环境变量后,进入数据库:

  C:\>MySQL -h hostname -u username -p

  按ENTER键,等待然后输入密码。这里hostname为服务器的名称,如localhost,username为MySQL的用户名,如root。

  2) 创建数据库:

  mysql->create database mydb1

  3) 退出MySQL:

  exit; 或quit;

  4) 导入数据:

  C:\>MySQL -h hostname -u username -p mydb1 < law.sql

2. Python访问数据库

 1 #!/usr/bin/env python
 2 #-*- coding:utf-8 -*-
 3 
 4 import pandas as pd 
 5 from sqlalchemy import create_engine  #create_engine建立连接
 6 
 7 engine=create_engine(mysql+pymysql://root:cjwCJW920613.@localhost:3306/mydb1?charset=utf8)
 8 #engine=create_engine(‘mysql+pymysql://root:cjwCJW920613.@127.0.0.1:3306/mydb1?charset=utf8‘)
 9 
10 sql=pd.read_sql(all_gzdata,engine,chunksize=10000)  
11 
12 ‘‘‘
13 用create_engine建立连接,连接地址的意思依次为“数据库格式(mysql)+程序名(pymysql)+账号密码@地址端口/数据库名(mydb1)”,最后指定编码为utf8;
14 all_gzdata是表名,engine是连接数据的引擎,chunksize指定每次读取1万条记录。这时候sql是一个容器,为真正读取数据。
15 ‘‘‘

 

数据库连接

标签:mysq   取数据   log   color   创建   输入密码   文件   地址   防火墙   

原文地址:http://www.cnblogs.com/cygalaxy/p/7388932.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!