前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mysql和workbench在windows的安装和使用

mysql和workbench在windows的安装和使用

原创
作者头像
languageX
发布2023-03-01 09:37:57
1.6K0
发布2023-03-01 09:37:57
举报
文章被收录于专栏:计算机视觉CV计算机视觉CV

在实操大数据之前,我们可以先在本地进行一些小型数据库的操作,对sql和spark进行一些初步了解。本文就先介绍下mysql和workbenck的安装和使用,以及介绍python链接数据库的操作。后续文章再介绍详细的使用python对库表的sql操作,以及spark计算。

1. mysql安装和使用

按照指示操作默认安装,在安装时,MySQL会要求我们设置一个本地登陆账号,账号名一般命为root,端口为3306,自定义一个password即可。

官方下载MySQL Installer:

下载后按照步骤安装,安装完成后启动

输入密码就可以进入啦~

2. workbenck安装和使用

官方下载链接:https://dev.mysql.com/downloads/workbench/

按照步骤进行安装,安装完成后启动

输入设置的mysql的密码进入,然后创建一个schema

创建后,在左侧Schemas的tab就能看见创建的数据库了,然后就可以在里面创建自己的tables。

3. python链接数据库

3.1 链接数据库

由于 MySQL 服务器以独立的进程运行,并通过网络对外服务,所以,需要支持 Python 的 MySQL 驱动来连接到 MySQL 服务器。

目前,有两个 MySQL 驱动:

1. mysql-connector-python:是 MySQL 官方的纯 Python 驱动

2. MySQL-python :是封装了 MySQL C驱动的 Python 驱动

我们用python链接,所以需要pip库

代码语言:javascript
复制
install mysql-connector-python

mysql安装我们已经有了用户名和密码, 因为链接的本地数据库,所以ip:port默认是localhost:3306,在workbenck里面我们已经创建了一个数据库test。

使用代码创建数据库链接:

代码语言:javascript
复制
config = {
    'user' : 'root',         #用户名
    'password' : '123456',   #自己设定的密码
    'host' : '127.0.0.1',    #ip地址,本地填127.0.0.1,也可以填localhost
    'port' : '3306',         #端口,本地的一般为3306
    'database' : 'test',     #数据库名字,这里选用test
}
con = mysql.connector.connect(**config)
# buffered = True 不设的话,查询结果没有读完会报错
# raise errors.InternalError("Unread result found")
mycursor = con.cursor(buffered = True)

3.2 创建库表

通过执行sql语句,创建库表以及往表内插入数据:

代码语言:javascript
复制
def create_table_test(table_name):
    # 创建一个表
    sql = "CREATE TABLE %s (id INT AUTO_INCREMENT PRIMARY KEY, \
                                   name VARCHAR(255) , address VARCHAR(255), \
                                   sex VARCHAR(225) , age INT(10) , sl INT(10))"%(table_name)
    mycursor.execute(sql)
    
def insert_table_test(table_name):
    # 往表里插入一些记录
    sql = "INSERT INTO " + table_name + "(name,address,sex,age,sl) VALUES(%s,%s,%s,%s,%s)"
    # print("sql", sql)
    val = ("zhangsan", "beijing", "M", 23, 30000)
    mycursor.execute(sql, val)
    val = ("lisi", "shanghai", "F", 23, 30000)
    mycursor.execute(sql, val)
    val = [("zhangsan", "shenzhen", "M", 35, 30000),
           ("zhangsan", "beijing", "M", 28, 30000),
           ("zhangsan", "aomen", "F", 30, 40000),
           ("zhangsan", "hongkang", "M", 35, 30000),
           ("zhangsan", "taiwan", "M", 32, 20000)]
    mycursor.executemany(sql, val)
    con.commit()    

3.3 导入excel到库表

如果有大量数据,通过以上插入就比较麻烦, 我们也可以通过导入本地,这里就需要使用ORM技术。

ORM技术:Object-Relational Mapping,把关系数据库的表结构映射到对象上。在Python中,最有名的ORM框架是SQLAlchemy。

我们先安装SQLAlchemy:

代码语言:javascript
复制
pip install sqlalchemy
pip install pandas

为了方便,我们先在workbenck里创建sql_test表,

右键-->create table。

然后执行如下代码:

代码语言:javascript
复制
import pandas as pd
from sqlalchemy import create_engine
import pymysql
excelFile = r'F:\spark_code\my_sql_test.xlsx'

def create_table_from_excel():
    df = pd.DataFrame(pd.read_excel(excelFile))
    engine =create_engine('mysql+pymysql://root:123456@localhost:3306/test')
  df.to_sql('sql_test',con=engine,if_exists='replace',index=False)

参考:

https://www.cnblogs.com/PacificOcean/p/14558449.html

https://cloud.tencent.com/developer/article/1443032

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. mysql安装和使用
  • 2. workbenck安装和使用
  • 3. python链接数据库
    • 3.1 链接数据库
      • 3.2 创建库表
        • 3.3 导入excel到库表
        相关产品与服务
        大数据
        全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档