创建MySQL账户

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#----------------------------------------------------------#
# Date    : xxxx-xx-xx                                     #
# Author  : Created by zhouwanchun.                        #
# Wechat  : loveoracle11g                                  #
# Function: This scripts function is ...                   #
# Version : 1.1                                            #
#----------------------------------------------------------#

# 导入模块
import os
import subprocess
import mysql.connector
import myloginpath

# Linux终端清屏
os.system(‘clear‘)

# 注释信息
print("""\033[1;36m
############################################################
# Date    : 2020-05-22                                     #
# Author  : Created by zhouwanchun.                        #
# Wechat  : loveoracle11g                                  #
# Function: This scripts function is ...                   #
# Version : v1.1                                           #
############################################################
\033[0m""")


# 连接数据库账号
conn_user = ‘dba‘

print("""\033[1;35m
创建管理账号,请输入 : manager
创建开发账号,请输入 : dev
\033[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("\033[1;31m你输入有误!\033[0m")

相关推荐