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")
  • 相关阅读:
    Object-C支持多继承吗?可以实现多个接口吗?Category是什么?
    Action类为何要继承ActionSupport
    JAVA中的File类
    Oracle中奇怪的【不等于号】
    Oracle中INSTR、SUBSTR和NVL的用法
    【ERROR】Oracle11g两个监听同名进程的故障
    【ERROR】EXP-00091
    【ERROR】while loading shared libraries: /u01/app/oracle/product/11.2.0/lib/libclntsh.so.11.1: cannot
    【js】appendChild
    【js】正则表达式(II)
  • 原文地址:https://www.cnblogs.com/zhouwanchun/p/13269503.html
Copyright © 2011-2022 走看看