MYSQL常用操作及python操作MYSQL常用类

Mysql 常见操作

数据库操作

  • 创建数据库

    create database fuzjtest

  • 删除数据库

    drop database fuzjtest

  • 查询数据库

    show databases

  • 切换数据库

    use databas 123123 ###用户授权

  • 创建用户

    create user ‘用户名‘@‘IP地址‘ identified by ‘密码‘;

  • 删除用户

    drop user ‘用户名‘@‘IP地址‘;

  • 修改用户

    rename user ‘用户名‘@‘IP地址‘; to ‘新用户名‘@‘IP地址‘;;

  • 修改密码

    set password for ‘用户名‘@‘IP地址‘ = Password(‘新密码‘)

  • 查看权限

     show grants for ‘用户‘@‘IP地址‘

  • 授权

    grant 权限 on 数据库.表 to ‘用户‘@‘IP地址‘

    • 取消权限
      revoke 权限 on 数据库.表 from ‘用户‘@‘IP地址‘

      PS:用户权限相关数据保存在mysql数据库的user表中,所以也可以直接对其进行操作(不建议)
      授权数据库

all privileges  除grant外的所有权限
select          仅查权限
select,insert   查和插入权限
...
usage                   无访问权限
alter                   使用alter table
alter routine           使用alter procedure和drop procedure
create                  使用create table
create routine          使用create procedure
create temporary tables 使用create temporary tables
create user             使用create user、drop user、rename user和revoke  all privileges
create view             使用create view
delete                  使用delete
drop                    使用drop table
execute                 使用call和存储过程
file                    使用select into outfile 和 load data infile
grant option            使用grant 和 revoke
index                   使用index
insert                  使用insert
lock tables             使用lock table
process                 使用show full processlist
select                  使用select
show databases          使用show databases
show view               使用show view
update                  使用update
reload                  使用flush
shutdown                使用mysqladmin shutdown(关闭MySQL)
super                   ????使用change master、kill、logs、purge、master和set global。还允许mysqladmin????????调试登陆
replication client      服务器位置的访问
replication slave       由复制从属使用

相关权限

详细权限解释说明

对于目标数据库以及内部其他:
  数据库名.*           数据库中的所有
  数据库名.表          指定数据库中的某张表
  数据库名.存储过程     指定数据库中的存储过程
  *.*                所有数据库

针对数据库进行制授权

用户名@IP地址         用户只能在改IP下才能访问
用户名@192.168.1.%   用户只能在改IP段下才能访问(通配符%表示任意)
用户名@%             用户可以再任意IP下访问(默认IP地址为%)

针对用户及IP进行授权

grant all privileges on db1.tb1 TO ‘用户名‘@‘IP‘

grant select on db1.* TO ‘用户名‘@‘IP‘

grant select,insert on *.* TO ‘用户名‘@‘IP‘

revoke select on db1.tb1 from ‘用户名‘@‘IP‘

常用实例

表操作

  • 创建表

    • 语法
create table 表名(
    列名  类型  是否可以为空,
    列名  类型  是否可以为空
)
    • 创建表的参数

1.是否可空,null表示空,非字符串
          not null    - 不可空
          null        - 可空

2.默认值,创建列时可以指定默认值,当插入数据时如果未主动设置,则自动添加默认值
          create table tb1(
              nid int not null defalut 2,
              num int not null
          )
3.自增,如果为某列设置自增列,插入数据时无需设置此列,默认将自增(表中只能有一个自增列)
          create table tb1(
              nid int not null auto_increment primary key,
              num int null
          )
          或
          create table tb1(
              nid int not null auto_increment,
              num int null,
              index(nid)
          )
          注意:1、对于自增列,必须是索引(含主键)。
               2、对于自增可以设置步长和起始值
                   show session variables like ‘auto_inc%‘;
                   set session auto_increment_increment=2;
                   set session auto_increment_offset=10;

                   shwo global  variables like ‘auto_inc%‘;
                   set global auto_increment_increment=2;
                   set global auto_increment_offset=10;

 4.主键,一种特殊的唯一索引,不允许有空值,如果主键使用单个列,则它的值必须唯一,如果是多列,则其组合必须唯一。
          create table tb1(
              nid int not null auto_increment primary key,
              num int null
          )
          或
          create table tb1(
              nid int not null,
              num int not null,
              primary key(nid,num)
          )

 5.外键,一个特殊的索引,只能是指定内容
          creat table color(
              nid int not null primary key,
              name char(16) not null
          )

          create table fruit(
              nid int not null primary key,
              smt char(32) null ,
              color_id int not null,
              constraint fk_cc foreign key (color_id) references color(nid)
          )

创建表参数

时间: 2024-10-09 14:42:13

MYSQL常用操作及python操作MYSQL常用类的相关文章

python学习道路(day12note)(mysql操作,python链接mysql,redis)

1,针对mysql操作 1 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 设置密码 2 update user set password=passworD("test") where user='root';修改密码 3 flush privileges; 4 grant all on *.* to [email protected]'%' identified by 'your_password'; 5 mysq

MySQL在cmd和python下的常用操作

环境配置1:安装mysql,环境变量添加mysql的bin目录 环境配置2:python安装MySQL-Python 请根据自身操作系统下载安装,否则会报c ++ compile 9.0,import _mysql等错误 windows10 64位操作系统可到 http://www.lfd.uci.edu/~gohlke/pythonlibs/  下载安装MySQL-Python包,至于whl和tar.gz在windows和Linux下的安装方法可查看我的上一篇文章 一 .cmd命令下的操作:

Home / Python MySQL Tutorial / Calling MySQL Stored Procedures in Python Calling MySQL Stored Procedures in Python

f you are not familiar with MySQL stored procedures or want to review it as a refresher, you can follow the MySQL stored procedures tutorial. We will create two stored procedures for the demonstration in this tutorial. The first stored procedure gets

python操作db2和mysql ,ibm_db

我需要提取mysql和db2的数据进行对比,所以需要用python对其都进行操作. python对mysql进行操作应该没什么问题,就是安装drive后就可以了,在上一篇中有讲安装python-mysql的包即可... python操作db2,我查了有两种方法,一个是DB2的包,一个是ibm_db的包,在我安装db2后,没有找到DB2的包,但是自动安装了ibm_db的包,所以我就选择了直接import ibm_db 这里附上一些ibm_db的操作方法 https://www-01.ibm.com

26. Python 对 mysql 的操作

mysql数据库现在已经成为市场占有率最高的数据库,在开发过程中,很多情况下我们都需要操作mysql,所以对于python操作mysql的了解是必不可少的. Python标准数据库接口为Python DB-API, Python DB-API为开发人员提供了数据库应用 编程接口. 参考地址:https://wiki.python.org/moin/DatabaseInterfaces,你可以查看python支持数据库的详细列表. 不同的数据库需要下载不同的DB API模块. DB-API是一个规

Python开发【第十九篇】:Python操作MySQL

Python开发[第十九篇]:Python操作MySQL 本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 下载安装 ? 1 pip3 install pymysql 使用操作 1.执行SQL + ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

Python操作三大主流数据库

第1章 数据库简介讲解数据库基本知识,关系型数据库和非关系型数据库的对比,非关系型数据库的分类以及其应用场景,最后介绍MySQL数据库.1-1 python操作三大主流数据库导学篇1-2 数据库简介(1)1-3 MySQL简介(1) 第2章 mysql基础介绍MySQL的安装及配置,使用Navicat 和 phpMyAdmin 进行图形化管理数据库.然后讲解SQL基础,重点包括建表.建库语句,新增.修改.删除.查询语句等重点知识.为了巩固基础,在此处安排了一个"设计新闻表"的实战.2-

192.168.62.124python运维开发(十一)----python操作缓存memcache、redis

内容目录: 缓存 memcache redis memcache Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信. Memcached安装配置 #安装依赖包 yum install libeve

使用python操作redis(管道)

一.redis连接 redis提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是StrictRedis的子类,用于向后兼容旧版本的redis-py. redis连接实例是线程安全的,可以直接将redis连接实例设置为一个全局变量,直接使用.如果需要另一个Redis实例(or Redis数据库)时,就需要重新创建redis连接实例来获取一个新的连接. 安装redis pip install re