• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Mysql5.6.36脚本编译安装及初始化教程

    概述

    本文为centos7.3自动化编译安装mysql5.3.6的脚本及后续初始化操作,话不多少,直接上脚本。

    安装脚本install.py如下:

    #coding=utf-8
    #!/usr/bin/python
    import os,commands
    #定义变量
    
    install_dir = '/data/mysql'
    data_dir = '/data/mysql/data'
    package_dir = '/data/mysql'
    log_dir = '/data/mysql/logs'
    current_dir = os.getcwd()
    cmake = 'cmake -DCMAKE_INSTALL_PREFIX=%s -DMYSQL_UNIX_ADDR=%s/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_DATADIR=%s -DMYSQL_TCP_PORT=3306' % (install_dir, install_dir, data_dir)
    
    #安装依赖包
    os.system('yum install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake perl -y')
    #安装函数
    def install_mysql():
     if os.system('groupadd mysql') == 0:
      print 'group mysql add success!'
     else:
      exit('group mysql add failed!')
     if os.system('useradd -r -g mysql -s /bin/false mysql') == 0:
      print 'user mysql add success!'
     else:
      exit('user mysql add failed!')
    
     if not os.path.exists(install_dir):
      os.system('mkdir -p %s' % install_dir)
     if not os.path.exists(data_dir):
      os.system('mkdir -p %s' % data_dir)
     if not os.path.exists(package_dir):
      os.system('mkdir -p %s' % package_dir)
     if not os.path.exists(log_dir):
      os.system('mkdir -p %s' % log_dir)
    
     if os.system('tar zxvf mysql-5.6.36.tar.gz') == 0:
      print 'uncompress v success!'
     else:
      exit('uncompress mysql-5.6.36.tar.gz failed!')
     os.chdir('mysql-5.6.36')
     if os.system(cmake) == 0:
      print '编译成功'
     else:
      exit('编译mysql失败')
     if os.system('make  make install') == 0:
      print '编译安装mysql成功'
     else:
      exit('编译安装mysql失败')
    
     if os.system('chown -R mysql:mysql %s' % install_dir) == 0:
      print '安装目录权限配置成功'
     else:
      exit()
     os.system('chown -R mysql:mysql %s' % data_dir)
     os.system('cd %s  touch mysql-error.log' % log_dir)
     os.system('chown -R mysql:mysql %s' % log_dir)
     os.chdir(install_dir)
    
     if os.system('./scripts/mysql_install_db --user=mysql --datadir=%s' % data_dir) == 0:
      print 'mysql初始化成功'
     else:
      exit('mysql初始化失败')
      
     os.system('cp support-files/mysql.server /etc/init.d/mysqld')
     os.system('mv /etc/my.cnf /etc/my.cnf.bak')
     os.chdir(current_dir)
     os.system('cp my.cnf /etc/my.cnf')
     os.system('service mysqld start')
     os.system('chkconfig mysqld on')
    
    install_mysql()
    
    if os.path.exists('/etc/profile'):
     os.system('cp /etc/profile /etc/profile.bak')
    if os.system('echo "PATH=%s/bin:%s/lib:$PATH" >> /etc/profile' % (install_dir, install_dir)) == 0:
     print '修改/etc/profile成功'
    else:
     exit()
    if os.system('echo "export PATH" >> /etc/profile') == 0:
     print '修改/etc/profile文件成功'
    else:
     exit()
    
    

    配置文件my.cnf

    [mysqld]
    basedir = /data/mysql
    datadir = /data/mysql/data
    tmpdir = /data/mysql
    socket = /data/mysql/mysql.sock
    skip-external-locking
    skip-name-resolve
    lower_case_table_names=1
    auto_increment_offset = 1 
    auto_increment_increment = 2 
    #server-id
    ########## binlog ##########
    log_bin = /data/mysql/logs/mysql-bin
    binlog_format = row
    binlog_cache_size = 2M
    expire-logs-days = 7
    
    ########## error log ##########
    log_error = /data/mysql/logs/mysql-error.log
    
    ########## slow log ##########
    slow_query_log = 1
    slow_query_log_file = /data/mysql/logs/mysql-slow.log
    long_query_time = 5
    
    ########## per_thread_buffers ##########
    max_connections = 1024
    max_connect_errors = 1000
    key_buffer_size = 64M
    max_allowed_packet = 128M
    table_open_cache = 6144
    table_definition_cache = 4096
    sort_buffer_size = 512K
    read_buffer_size = 512K
    join_buffer_size = 512K
    tmp_table_size = 64M
    max_heap_table_size = 64M
    thread_cache_size = 64
    thread_concurrency = 32
    bulk_insert_buffer_size = 64M
    
    ########innodb########
    innodb_buffer_pool_size = 45G
    innodb_log_file_size = 500M
    innodb_log_buffer_size = 64M
    innodb_flush_log_at_trx_commit = 2
    innodb_file_per_table = 1
    innodb_file_io_threads = 4
    innodb_flush_method = O_DIRECT
    innodb_thread_concurrency = 0
    innodb_additional_mem_pool_size = 16M
    
    [mysqlhotcopy]
    interactive-timeout
    [mysqld_safe]
    open_files_limit = 65535
    
    

    使用方法:

    1.操作系统需要配置yum源
    2.操作系统版本:centos7.3
    3.将install.py my.cnf 和mysql安装包放一个文件夹

    mysql安装包下载地址:链接: https://pan.baidu.com/s/1pKHbFlh 密码: tx9b

    初始化

    由于默认情况下编译安装的mysql5.6.36没有密码,命令行直接输入mysql进行登陆,执行以下sql语句

    -- 初始化数据
    use mysql;
    update user set password=PASSWORD("Abcd123") where user='root';
    grant all privileges on *.* to weihu@"%" identified by "Abcd123";
    delete from mysql.user where user = '';
    FLUSH PRIVILEGES;
    -- 创建demo数据库
    CREATE DATABASE `demo` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
    show databases;

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • MySQL 5.6.36 Windows x64位版本的安装教程详解
    • MySql 5.6.36 64位绿色版安装图文教程
    上一篇:浅谈Mysql指定顺序排序查询
    下一篇:linux系统下安装配置解压版的MySQL数据库图解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Mysql5.6.36脚本编译安装及初始化教程 Mysql5.6.36,脚本,编译,安装,