zoukankan      html  css  js  c++  java
  • 创建MySQL账户

    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    #----------------------------------------------------------#
    # Date    : xxxx-xx-xx                                     #
    # Author  : Created by zhouwanchun.                        #
    # Wechat  : lovemysql3306                                  #
    # Function: This scripts function is ...                   #
    # Version : 1.1                                            #
    #----------------------------------------------------------#
    
    # 导入模块
    import os
    import subprocess
    import mysql.connector
    import myloginpath
    
    # Linux终端清屏
    os.system('clear')
    
    # 注释信息
    print("""33[1;36m
    ############################################################
    # Date    : 2020-05-22                                     #
    # Author  : Created by zhouwanchun.                        #
    # Wechat  : loveoracle11g                                  #
    # Function: This scripts function is ...                   #
    # Version : v1.1                                           #
    ############################################################
    33[0m""")
    
    
    # 连接数据库账号
    conn_user = 'dba'
    
    print("""33[1;35m
    创建管理账号,请输入 : manager
    创建开发账号,请输入 : dev
    33[0m""")
    
    choices = input("请输入你要创建的账号类型 : ").strip()
    
    def create_mysql_user():
        user = input("请设置user : ").strip()
        host = input("请设置host : ").strip()
        password = input("请设置密码 : ").strip()
        create_user = "create user " + "'" + user + "'" + "@" + "'" + host + "'" + " identified by " + "'" + password + "';"
        if choices == 'manager':
            grant_user = "grant all privileges on *.* to " + "'" + user + "'" + "@" + "'" + host + "'" + " with grant option;"
        else:
            grant_user = "grant SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE TEMPORARY TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER on *.* to " + "'" + user + "'" + "@" + "'" + host + "'" + " with grant option;"
        show_grants = "show grants for " + "'" + user + "'" + "@" + "'" + host + "';"
        subprocess.run(['/usr/local/mysql/bin/mysql --login-path=' + conn_user + ' -e ' + '"' + create_user + '"'], shell=True)
        subprocess.run(['/usr/local/mysql/bin/mysql --login-path=' + conn_user + ' -e ' + '"' + grant_user + '"'], shell=True)
        subprocess.run(['/usr/local/mysql/bin/mysqladmin --login-path=' + conn_user + ' flush-privileges'], shell=True)
        subprocess.run(['/usr/local/mysql/bin/mysql --login-path=' + conn_user + ' -e ' + '"' + show_grants + '"'], shell=True)
        return
    
    
    if choices == 'manager':
        create_mysql_user()
    elif choices == 'dev':
        create_mysql_user()
    else:
        print("33[1;31m你输入有误!33[0m")
  • 相关阅读:
    Vue 框架怎么实现对象和数组的监听?
    能说下 vue-router 中常用的 hash 和 history 路由模式实现原理吗?
    vue-router 路由模式有几种?
    Vue 组件间通信有哪几种方式?
    v-model 的原理?
    华硕笔记本修复
    linux下制作u盘启动盘
    virtualbox不能启动虚拟机
    ubuntu14.04建立wifi热点
    git中文文件名和中文目录显示乱码
  • 原文地址:https://www.cnblogs.com/zhouwanchun/p/13269503.html
Copyright © 2011-2022 走看看