初识MySQL

MySQL使用

RDBMS

Relational Database Management System

  • 当前主要使用两种类型的数据库:关系型数据库非关系型数据库
  • 所谓的关系型数据库 RDBMS,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据
  • 查看数据库排名:数据库排名
  • 关系型数据库的主要产品:
    • oracle:在以前的大型项目中使用,银行,电信等项目
    • mysql:web时代使用最广泛的关系型数据库
    • ms sql server:在微软中的项目中使用
    • sqlite:轻量级数据库,主要应用在移动平台

SQL

Structured Query Language

SQL是结构化查询语言,是一种用来操作RDBMS的数据库语言,当前关系型数据库都支持使用SQL语言进行操作,也就是说可以通过 SQL 操作 oracle、sql server、mysql、sqlite 等等所有的关系型的数据库

  • SQL语句主要为:
    • DQL :数据查询语言,对于数据进行查询,如select
    • DML :数据操作语言,对数据进行增加、修改、删除,如insert、update、delete
    • TPL :事物处理语言,对事物进行处理,包括begin transaction、commit、rollback
    • DCL :数据控制语言,进行授权与权限回收,如grant、revoke
    • DDL :数据定义语言,进行数据库、表的管理等,如create、drop
    • CCL :指针控制语言,通过控制指针完成表的操作,如declare cursor
  • 对于web程序员来讲,重点是数据的crud(增删改查),必须熟练编写DQL、DML,能够编写DDL完成数据库、表的操作,其他语言如TPL、DCL、CCL了解即可
  • SQL是一门特殊的语言,专门用来操作关系数据库
  • 不区分大小写
# 创建Connection连接
conn = connect(host='localhost', port=3306, user='root', password='mysql', database='python')
# 得Cursor对象
cs = conn.cursor()
# 更新
# sql = 'update students set name="xxx" where id=6'
# 删除
# sql = 'delete from students where id=6'
# 执行select语句,并返回受影响得行数:查询一条学生数据
sql = 'select id, name from student where id=7'
# sql = 'SELECT id, name FROM students WHERE id=7'
count = cs.execute(sql)
# 打印受影响得行数
print(count)

MySQL简洁

  • MySQL是一个关系型数据库管理系统,有瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品

  • MySQL的安装

sudo apt-get install mysql-server
  • MySQL的启动
sudo service mysql start
  • 查看进程中是否存在mysql服务
ps ajx | grep mysql

在这里插入图片描述

  • 停止服务
sudo service mysql stop
  • 重启服务
sudo service mysql restart

配置

  • 配置文件目录为 /etc/mysql/mysql.cnf,打开文件如下图所示:

初识MySQL_第1张图片

  • 进入conf.d目录,打开mysql.cnf,发现并没有配置
  • 进入mysql.conf.d目录,打开mysql.cnf,可以看到配置项
bind-address表示服务器绑定的ip,默认为127.0.0.1

port表示端口,默认为3306

datadir表示数据库目录,默认为/var/lib/mysql

general_log_file表示普通日志,默认为/var/log/mysql/mysql.log

log_error表示错误日志,默认为/var/log/mysql/error.log

初识MySQL_第2张图片

你可能感兴趣的:(学习笔记,mysql,python)