zoukankan      html  css  js  c++  java
  • centos6多实例安装mysql

    基本环境:
    setenforce 0
    service iptables stop

    yum install cmake libaio-devel ncurses-devel -y
    yum install gcc gcc-c++ -y
    yum install cmake -y
    useradd mysql -s /sbin/nologin -M -g mysql


    下载:
    cd /application/
    wget https://downloads.mysql.com/archives/get/file/mysql-5.5.33.tar.gz
    tar -zxvf mysql-5.5.33.tar.gz
    cd /application/mysql-5.5.33


    开始编译:
    #cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.33

    -DMYSQL_DATADIR=/application/mysql-5.5.33/data

    -DMYSQL_UNIX_ADDR=/application/mysql-5.5.33/tmp/mysql.sock

    -DDEFAULT_CHARSET=utf8

    -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii

    -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1

    -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1

    -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1

    -DWITH_FAST_MUTEXES=1

    -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1

    -DWITH_READLINE=1

    -DWITH_EMBEDDED_SERVER=1

    -DWITH_DEBUG=0

    #make && make install
    #ln -s /application/mysql-5.5.33/ /application/mysql

    编译成功
    若编译过程中出现报错,则一定要先删除
    [root@mysql mysql-5.5.32]# rm CMakeCache.txt ###删除这个文件,重新cmake

    创建各实例的数据文件目录:
    #mkdir -p /data/{3306,3307}/data
    #tree /data/
    /data/
    ├── 3306
    │   └── data
    └── 3307
    └── data

    创建多实例的配置文件:

    3306的

    [client]
    port =3306
    socket =/data/3306/mysql.sock
    [mysql]
    no-auto-rehash
    [mysqld]
    user = mysql
    port =3306
    socket =/data/3306/mysql.sock
    basedir =/application/mysql
    datadir =/data/3306/data
    open_files_limit =1024
    back_log =600
    max_connections =800
    max_connect_errors =3000
    table_cache =614
    external-locking = FALSE
    max_allowed_packet =8M
    sort_buffer_size =1M
    join_buffer_size =1M
    thread_cache_size =100
    thread_concurrency =2
    query_cache_size =2M
    query_cache_limit =1M
    query_cache_min_res_unit =2k
    #default_table_type = InnoDB
    thread_stack =192K
    #transaction_isolation = READ-COMMITTED
    tmp_table_size =2M
    max_heap_table_size =2M
    long_query_time =1
    #log_long_format
    #log-error = /data/3306/error.log
    #log-slow-queries = /data/3306/slow.log
    pid-file =/data/3306/mysql.pid
    log-bin =/data/3306/mysql-bin
    relay-log =/data/3306/relay-bin
    relay-log-info-file =/data/3306/relay-log.info
    binlog_cache_size =1M
    max_binlog_cache_size =1M
    max_binlog_size =2M
    expire_logs_days =7
    key_buffer_size =16M
    read_buffer_size =1M
    read_rnd_buffer_size =1M
    bulk_insert_buffer_size =1M
    #myisam_sort_buffer_size = 1M
    #myisam_max_sort_file_size = 10G
    #myisam_max_extra_sort_file_size = 10G
    #myisam_repair_threads = 1
    #myisam_recover
    lower_case_table_names =1
    skip-name-resolve
    slave-skip-errors =1032,1062
    replicate-ignore-db=mysql
    server-id =1
    innodb_additional_mem_pool_size =4M
    innodb_buffer_pool_size =32M
    innodb_data_file_path = ibdata1:128M:autoextend
    innodb_file_io_threads =4
    innodb_thread_concurrency =8
    innodb_flush_log_at_trx_commit =2
    innodb_log_buffer_size =2M
    innodb_log_file_size =4M
    innodb_log_files_in_group =3
    innodb_max_dirty_pages_pct =90
    innodb_lock_wait_timeout =120
    innodb_file_per_table =0
    [mysqldump]
    quick
    max_allowed_packet =2M
    [mysqld_safe]
    log-error=/data/3306/mysql_oldboy3306.err
    pid-file=/data/3306/mysqld.pid

    3307的:

    [client]
    port =3307
    socket =/data/3307/mysql.sock
    [mysql]
    no-auto-rehash
    [mysqld]
    user = mysql
    port =3307
    socket =/data/3307/mysql.sock
    basedir =/application/mysql
    datadir =/data/3307/data
    open_files_limit =1024
    back_log =600
    max_connections =800
    max_connect_errors =3000
    table_cache =614
    external-locking = FALSE
    max_allowed_packet =8M
    sort_buffer_size =1M
    join_buffer_size =1M
    thread_cache_size =100
    thread_concurrency =2
    query_cache_size =2M
    query_cache_limit =1M
    query_cache_min_res_unit =2k
    #default_table_type = InnoDB
    thread_stack =192K
    #transaction_isolation = READ-COMMITTED
    tmp_table_size =2M
    max_heap_table_size =2M
    #long_query_time = 1
    #log_long_format
    #log-error = /data/3307/error.log
    #log-slow-queries = /data/3307/slow.log
    pid-file =/data/3307/mysql.pid
    #log-bin = /data/3307/mysql-bin
    relay-log =/data/3307/relay-bin
    relay-log-info-file =/data/3307/relay-log.info
    binlog_cache_size =1M
    max_binlog_cache_size =1M
    max_binlog_size =2M
    expire_logs_days =7
    key_buffer_size =16M
    read_buffer_size =1M
    read_rnd_buffer_size =1M
    bulk_insert_buffer_size =1M
    #myisam_sort_buffer_size = 1M
    #myisam_max_sort_file_size = 10G
    #myisam_max_extra_sort_file_size = 10G
    #myisam_repair_threads = 1
    #myisam_recover
    lower_case_table_names =1
    skip-name-resolve
    slave-skip-errors =1032,1062
    replicate-ignore-db=mysql
    server-id =3
    innodb_additional_mem_pool_size =4M
    innodb_buffer_pool_size =32M
    innodb_data_file_path = ibdata1:128M:autoextend
    innodb_file_io_threads =4
    innodb_thread_concurrency =8
    innodb_flush_log_at_trx_commit =2
    innodb_log_buffer_size =2M
    innodb_log_file_size =4M
    innodb_log_files_in_group =3
    innodb_max_dirty_pages_pct =90
    innodb_lock_wait_timeout =120
    innodb_file_per_table =0
    [mysqldump]
    quick
    max_allowed_packet =2M
    [mysqld_safe]
    log-error=/data/3307/mysql_oldboy3307.err
    pid-file=/data/3307/mysqld.pid


    创建启动文件:

    3306的:

    #init

    port=3306
    mysql_user="root"
    mysql_pwd="123.asd"
    CmdPath="/application/mysql/bin"
    function_start_mysql()
    {
    if [ ! -e "$mysql_sock" ];then
    printf "Starting MySQL... "
    else
    printf "MySQL is running... "
    exit
    fi
    }


    #stop function
    function_stop_mysql()
    {
    if [ ! -e "$mysql_sock" ];then
    printf "MySQL is stopped... "
    exit
    else
    printf "Stoping MySQL... "
    fi
    }


    #restart function
    function_restart_mysql()
    {
    printf "Restarting MySQL... "
    function_stop_mysql
    sleep 2
    function_start_mysql
    }


    case $1 in
    start)
    function_start_mysql
    ;;
    stop)
    function_stop_mysql
    ;;
    restart)
    function_restart_mysql
    ;;
    *)
    printf "Usage: /data/${port}/mysql {start|stop|restart} "
    esac

    3307的:

    #init

    port=3307
    mysql_user="root"
    mysql_pwd="123.asd"
    CmdPath="/application/mysql/bin"
    function_start_mysql()
    {
    if [ ! -e "$mysql_sock" ];then
    printf "Starting MySQL... "
    else
    printf "MySQL is running... "
    exit
    fi
    }


    #stop function
    function_stop_mysql()
    {
    if [ ! -e "$mysql_sock" ];then
    printf "MySQL is stopped... "
    exit
    else
    printf "Stoping MySQL... "
    fi
    }


    #restart function
    function_restart_mysql()
    {
    printf "Restarting MySQL... "
    function_stop_mysql
    sleep 2
    function_start_mysql
    }


    case $1 in
    start)
    function_start_mysql
    ;;
    stop)
    function_stop_mysql
    ;;
    restart)
    function_restart_mysql
    ;;
    *)
    printf "Usage: /data/${port}/mysql {start|stop|restart} "
    esac

    目录结构如下:
    [root@centos6 /data ]#tree
    .
    ├── 3306
    │   ├── data
    │   ├── my.cnf
    │   └── mysql
    └── 3307
    ├── data
    ├── my.cnf
    └── mysql

    给启动文件执行权限:

    [root@centos6 / ]#find /data -type f -name "mysql"
    /data/3306/mysql
    /data/3307/mysql
    [root@centos6 / ]#find /data -type f -name "mysql" |xargs chmod +x
    [root@centos6 / ]#find /data -type f -name "mysql" |xargs ls -l
    -rwxr-xr-x. 1 root root 762 Jul 6 16:15 /data/3306/mysql
    -rwxr-xr-x. 1 root root 762 Jul 6 16:16 /data/3307/mysql

    让mysql用户管理data目录:

    [root@centos6 / ]#chown -R mysql.mysql /data/

    初始化:

    #cd /application/mysql/scripts/

    ./mysql_install_db --basedir=/application/mysql --datadir=/data/3306/data --user=mysql

    ./mysql_install_db --basedir=/application/mysql --datadir=/data/3307/data --user=mysql

    报错-bash: scripts/mysql_install_db: Permission denied则:修改mysql_install_db的权限,可能该文件没有执行权限

    WARNING: The host 'centos6.8' could not be looked up with resolveip---主机名没有解析

    #vi /etc/hosts中加入

    192.168.1.33 db01

    /data/3306/mysql start

    /data/3307/mysql start

  • 相关阅读:
    【题解】P3796【模板】AC自动机(加强版)
    【模板】P3806点分治1
    【题解】P2602[JZOI2010]数字计数
    【题解】P2444 病毒
    【题解】[P3557 POI2013]GRA-Tower Defense Game
    【题解】DZY Loves Chinese
    【题解】[Ghd]
    【题解】CF264B Good Sequences
    【题解】P3162CQOI2012组装
    【题解】P2279消防局的设立
  • 原文地址:https://www.cnblogs.com/dbslinux/p/9653268.html
Copyright © 2011-2022 走看看