Get the App
SLTechnology News&Howtos  ›  Database  › 

Mysql5.6.36 script compilation, installation and initialization tutorial

Shulou Source: shulou.com Published: 2022-06-01 04:04:08 10月06日 Update

Overview

This article for centos7.3 automatic compilation and installation of mysql5.3.6 scripts and subsequent initialization operations, not much, directly on the script.

The installation script install.py is as follows:

The definition variable 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) # install dependency package os.system ('yum install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake perl-y') # install function def install_mysql (): if os.system (' groupadd mysql') = = 0: print 'group mysql add packages Else: exit ('group mysql add failed') If os.system ('useradd-r-g mysql-s / bin/false mysql') = = 0: print' user mysql add examples' 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 subscription' Else: exit ('uncompress mysql-5.6.36.tar.gz failed') Os.chdir ('mysql-5.6.36') if os.system (cmake) = 0: print' compiled successfully 'else: exit (' compiled mysql failed') if os.system ('make & & make install') = 0: print' compiled and installed mysql successfully 'else: exit (' compiled and installed mysql failed') if os.system ('chown-R mysql:mysql% s' install_dir) = = 0: print 'installation directory permissions Successfully configured '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 beginning Initialization succeeded 'else: exit (' mysql initialization failed') 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 'modified / etc/profile successful' else: exit () if os.system ('echo "export PATH" > > / etc/profile') = 0: print' modified / etc/profile file succeeded 'else: exit ()

Profile my.cnf

[mysqld] basedir = / data/mysqldatadir = / data/mysql/datatmpdir = / data/mysqlsocket = / data/mysql/mysql.sockskip-external-lockingskip-name-resolvelower_case_table_names=1auto_increment_offset = 1autoincrement _ increment = 2 # server-id# binlog # log_bin = / data/mysql/logs/mysql-binbinlog_format = rowbinlog_cache_size = 2Mexpire-logs-days = steps # # error log# log_error = / data/mysql/logs/mysql-error.log# slow log# slow_query_log = 1slow_query_log_file = / data/mysql/logs/mysql-slow.loglong_query_time = per_thread_buffers # max_connections = 1024max_connect_errors = 1000key _ buffer_size = 64Mmax_allowed_packet = 128Mtable_open_cache = 6144table_definition_cache = 4096sort_buffer_size = 512Kread_buffer_size = 512Kjoin_buffer_size = 512Ktmp_table_size = 64Mmax_heap_table_size = 64Mthread_cache_size = 64thread_concurrency = 32bulk_insert_buffer_size = 64M#innodb#innodb_buffer_pool_size = 45Ginnodb_log_file_size = 500Minnodb_log_buffer_size = 64Minnodb_flush_log _ at_trx_commit = 2innodb_file_per_table = 1innodb_file_io_threads = 4innodb_flush_method = O_DIRECTinnodb_thread_concurrency = 0innodb_additional_mem_pool_size = 16m [mysqlhotcopy] interactive-timeout [mysqld_safe] open_files_limit = 65535

How to use it:

1. The operating system needs to configure the yum source

two。 Operating system version: centos7.3

3. Put the install.py my.cnf and mysql installation packages in a folder

Download address of mysql installation package: link: https://pan.baidu.com/s/1pKHbFlh password: tx9b

Initialization

Since the compiled and installed mysql5.6.36 by default does not have a password, enter mysql directly on the command line to log in and execute the following sql statement

-initialize data 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;-- create demo database CREATE DATABASE `demo` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;show databases

The above is the whole content of this article, I hope it will be helpful to your study, and I also hope that you will support it.

Tags: Success compilation script file configuration operating system password data system lower editor usage content function variable command address that is case database folder Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno OPPO Reno macOS Docker MySQL Huawei