zoukankan      html  css  js  c++  java
  • mysql二进制安装,升级,多实例部署

    目标

    • 理解线上部署考虑的因素
    • 学会编译安装以及二进制安装mysql
    • 学会升级mysql
    • 学会多实例部署mysql数据库
    • 学会合理部署mysql线上库
     
    考虑因素:
    • 版本选择,5.1,5.5还是5.6?
    • 分支选择,官方社区版?percona server?mariadb?
      • 推荐官方版,简单易上手
    • 安装方式,包安装?二进制包安装?源码安装?
      • 线上推荐二进制包安装
    • 路径配置,参数配置(尽量模板化,标准化)
    • 一个实例多个库,or多个实例单个库?
     
    二进制安装mysql

     
    1. 下载软件安装包
    2. 解压放到指定目录(比如/usr/local)并将mysql目录放到PATH中
    3. 初始化实例,编辑配置文件 并启动
    4. 账号安全设置
     
     
    1)下载
     
    2)解压到指定目录,并将mysql目录放到PATH中
     
    #tar -zxf mysql-5.5.50-linux2.6-i686.tar.gz
    #mv mysql-5.5.50-linux2.6-i686  /usr/local/
    #cd /usr/local
    #mv mysql-5.5.50-linux2.6-i686 mysql55
    #cd mysql55/bin
    #export PATH=/usr/local/mysql55/bin:$PATH
    3)初始化实例 使用脚本mysql_install_db
     
    #mkdir -p /tmp/mysqldata/node1
    #/usr/local/mysql55/script/mysql_install_db --user=mysql --basedir=/usr/local/mysql55 --datadir=/tmp/mysqldata/node1
    #cd /tmp/mysqldata/node1
    出现问题1 没有libaio.so.1库
    /tmp/mysql55/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
    解决:查询libaio库并按照libaio.so.1
    查询
    aiapple@aiapple:/tmp$ sudo apt-cache search libaio
    libaio-dev - Linux kernel AIO access library - development files
    libaio1 - Linux kernel AIO access library - shared library
    libaio1-dbg - Linux kernel AIO access library - debugging symbols
    安装
    aiapple@aiapple:/tmp$ sudo apt-get install libaio1
    初始化成功:
    aiapple@aiapple:/usr/local/mysql/data$ ls -l /tmp/mysqldata/node1/
    total 12
    drwx------ 2 aiapple aiapple 4096  7月 27 21:27 mysql
    drwx------ 2 aiapple aiapple 4096  7月 27 21:27 performance_schema
    drwx------ 2 aiapple aiapple 4096  7月 27 21:25 test
    拷贝配置文件:support-files中拷贝my-medium.cnf
    cp /usr/local/mysql56/support-files/my-medium.cnf /tmp/mysqldata
    3)使用mysqld_safe脚本,启动
    /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf &
    问题2:没有/usr/local/mysql/data 目录
    aiapple@aiapple:/usr/local/mysql55/support-files$ /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf &
    [1] 3349
    aiapple@aiapple:/usr/local/mysql55/support-files$ 160727 21:33:26 mysqld_safe Logging to '/usr/local/mysql/data/aiapple.err'.
    touch: cannot touch ‘/usr/local/mysql/data/aiapple.err’: No such file or directory
    chmod: cannot access ‘/usr/local/mysql/data/aiapple.err’: No such file or directory
    160727 21:33:26 mysqld_safe The file /usr/local/mysql/bin/mysqld
    does not exist or is not executable. Please cd to the mysql installation
    directory and restart this script from there as follows:
    ./bin/mysqld_safe&
    See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information
    /usr/local/mysql55/bin/mysqld_safe: 128: /usr/local/mysql55/bin/mysqld_safe: cannot create /usr/local/mysql/data/aiapple.err: Directory nonexistent
    ^C
    [1]+  Exit 1                  /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf
    View Code
    解决:创建目录并赋权
    aiapple@aiapple:/usr/local$ sudo mkdir -p mysql/data
    aiapple@aiapple:/usr/local/mysql$ sudo chown -R aiapple .
    aiapple@aiapple:/usr/local/mysql$ sudo chgrp -R aiapple .
    问题3:不存/usr/local/mysql/bin/mysqld 文件
    aiapple@aiapple:/usr/local/mysql$ /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf &
    [1] 3773
    aiapple@aiapple:/usr/local/mysql$ 160727 21:37:32 mysqld_safe Logging to '/usr/local/mysql/data/aiapple.err'.
    160727 21:37:32 mysqld_safe The file /usr/local/mysql/bin/mysqld
    does not exist or is not executable. Please cd to the mysql installation
    directory and restart this script from there as follows:
    ./bin/mysqld_safe&
    See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information
    ^C
    [1]+  Exit 1                  /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf
    View Code
    怀疑 Ubuntu定死了basedir 在/usr/local/mysql 下
    解决:拷贝mysql55中内容到该目录中
    aiapple@aiapple:/usr/local/mysql$ cp -ar ../mysql55/* .
    问题4:mysqld从 /usr/local/mysql/data中启动库文件;
    aiapple@aiapple:/usr/local/mysql$ /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf &
    [1] 3983
    aiapple@aiapple:/usr/local/mysql$ 160727 21:39:05 mysqld_safe Logging to '/usr/local/mysql/data/aiapple.err'.
    160727 21:39:05 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
    160727 21:39:07 mysqld_safe mysqld from pid file /usr/local/mysql/data/aiapple.pid ended
     
    [1]+  Done                    /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf
    且mysqld没有启动
    aiapple@aiapple:~$ ps -ef | grep mysqld
    aiapple   2129  2097  0 19:35 pts/2    00:00:00 grep --color=auto mysqld
    View Code
     
    查看aiapple.err:需要的一些表不在/usr/local/mysql/data
    160727 21:41:59 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
    160727 21:41:59 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.5.50-log) starting as process 4500 ...
    160727 21:41:59 [Note] Plugin 'FEDERATED' is disabled.
    /usr/local/mysql/bin/mysqld: Table 'mysql.plugin' doesn't exist
    160727 21:41:59 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
    160727 21:41:59 InnoDB: The InnoDB memory heap is disabled
    160727 21:41:59 InnoDB: Mutexes and rw_locks use GCC atomic builtins
    160727 21:41:59 InnoDB: Compressed tables use zlib 1.2.3
    160727 21:41:59 InnoDB: Using Linux native AIO
    160727 21:41:59 InnoDB: Initializing buffer pool, size = 128.0M
    160727 21:41:59 InnoDB: Completed initialization of buffer pool
    160727 21:41:59 InnoDB: highest supported file format is Barracuda.
    InnoDB: Log scan progressed past the checkpoint lsn 48941
    160727 21:41:59  InnoDB: Database was not shut down normally!
    InnoDB: Starting crash recovery.
    InnoDB: Reading tablespace information from the .ibd files...
    InnoDB: Restoring possible half-written data pages from the doublewrite
    InnoDB: buffer...
    InnoDB: Doing recovery: scanned up to log sequence number 1595675
    160727 21:41:59  InnoDB: Starting an apply batch of log records to the database...
    InnoDB: Progress in percents: 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
    InnoDB: Apply batch completed
    160727 21:41:59  InnoDB: Waiting for the background threads to start
    160727 21:42:00 InnoDB: 5.5.50 started; log sequence number 1595675
    160727 21:42:00 [Note] Recovering after a crash using mysql-bin
    160727 21:42:00 [Note] Starting crash recovery...
    160727 21:42:00 [Note] Crash recovery finished.
    160727 21:42:00 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
    160727 21:42:00 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
    160727 21:42:00 [Note] Server socket created on IP: '0.0.0.0'.
    160727 21:42:00 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
    160727 21:42:00 mysqld_safe mysqld from pid file /usr/local/mysql/data/aiapple.pid ended
    View Code
     
    解决:将原初始化的datadir目录中所有拷贝过去
    aiapple@aiapple:/usr/local/mysql/data$ rm -rf test/
    aiapple@aiapple:/usr/local/mysql/data$ cp -ar /tmp/mysqldata/node1/* .
     
    成功安装:
    aiapple@aiapple:/usr/local/mysql/data$ ps -ef | grep mysqld
    aiapple   4536  2146  0 21:43 pts/0    00:00:00 /bin/sh /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf
    aiapple   4773  4536  1 21:43 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/tmp/mysqldata/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/aiapple.err --pid-file=/usr/local/mysql/data/aiapple.pid --socket=/tmp/mysql.sock --port=3306
    aiapple   4792  2097  0 21:44 pts/2    00:00:00 grep --color=auto mysqld
    View Code
    疑问:
    不知是Ubuntu指定了basedir=/usr/local/mysql,datadir=/usr/local/mysql/data;还是最开始的初始化没有管用,还是有什么配置没有写在配置文件中。
     
    当然是没有写在配置文件中了,可以查看一下my-medium.cnf内容
    [client]
    #password       = your_password
    port            = 3306
    socket          = /tmp/mysql.sock
     
    # Here follows entries for some specific programs
     
    # The MySQL server
    [mysqld]
    port            = 3306
    socket          = /tmp/mysql.sock
    skip-external-locking
    key_buffer_size = 16M
    max_allowed_packet = 1M
    table_open_cache = 64
    sort_buffer_size = 512K
    net_buffer_length = 8K
    read_buffer_size = 256K
    read_rnd_buffer_size = 512K
    myisam_sort_buffer_size = 8M
    View Code
    没有相关目录的配置;
     
     
    在my.cnf 增加一下配置
    my.cnf
    port            = 3306
    socket          = /tmp/mysqldata/node1/mysql.sock
     
    [mysqld_safe]
    user=aiapple
     
    # Here follows entries for some specific programs
     
    # The MySQL server
    [mysqld]
    port            = 3306
    socket          = /tmp/mysqldata/node1/mysql.sock
    pid-file        = /tmp/mysqldata/node1/mysqld.pid
    basedir         = /usr/local/mysql55
    datadir         = /tmp/mysqldata/node1
    innodb_data_home_dir = /tmp/mysqldata/node1
    innodb_log_group_home_dir =/tmp/mysqldata/node1
    tmpdir          = /tmp/mysqldata/node1
    log-error       = /tmp/mysqldata/node1/aiapple.log
    log-bin         = /tmp/mysqldata/node1/mysql-bin.log
     
    View Code
    重新启动
    问题一:配置文件权限太大
    aiapple@aiapple:/usr/local/mysql$ /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf &
    Warning: World-writable config file '/tmp/mysqldata/my.cnf' is ignored
    解决:降权
    aiapple@aiapple:sudo chmod 600 /tmp/mysqldata/my.cnf
    问题二:bin目录未指定
    aiapple@aiapple:/usr/local/mysql$ /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf &
    160806 16:07:29 mysqld_safe The file /usr/local/mysql/bin/mysqld does not exist or is not executable. Please cd to the mysql installation
    directory and restart this script from there as follows: ./bin/mysqld_safe&
    解决:在配置文件中通过ledir指定bin目录
    #my.cnf增加
    ledir  =  /usr/local/mysql55
    问题三:aiapple.err报错,插件被禁止
    160806 16:48:46 [Note] Plugin 'FEDERATED' is disabled.
    160806 16:48:46 InnoDB: The InnoDB memory heap is disabled
    160806 16:48:46 InnoDB: Mutexes and rw_locks use GCC atomic builtins
    160806 16:48:46 InnoDB: Compressed tables use zlib 1.2.3
    160806 16:48:46 InnoDB: Using Linux native AIO
    160806 16:48:46 InnoDB: Initializing buffer pool, size = 128.0M
    View Code
    解决:在配置文件中启用,nice=0
    #my.cnf增加
    nice  =  0
    4)账号安全设置
     
    #删除空用户
    mysql -uroot --socket=/tmp/mysql.sock
    select user,host,password from mysql.user;
    delete from mysql.user where user='';
    delete from mysql.user where host<>'localhost';
     
    mysql> select user,host,password from mysql.user;
    +------+-----------+----------+
    | user | host      | password |
    +------+-----------+----------+
    | root | localhost |          |
    +------+-----------+----------+
    1 row in set (0.00 sec)
    #设置root密码
    mysql> set password for root@'localhost'=password('000000');
    Query OK, 0 rows affected (0.00 sec)
     
    #使设置生效
    flush privileges;
     
    #删除test库
     
    看看只读权限的test用户能用test库做什么
    创建test用户
    #mysql -uroot -p123456--socket=/tmp/mysql.sock
    grant select on *.* to test@'localhost' identified by '123';
     
    使用test用户,在test库中建表
    #mysql -utest -p123 --socket=/tmp/mysql.sock
    use test
    create table t1(id int);
    mysql> show tables;
    +----------------+
    | Tables_in_test |
    +----------------+
    | t1             |
    +----------------+
    1 row in set (0.01 sec)
    删除test库
    mysql> drop database test;
    Query OK, 1 row affected (0.01 sec)
     
     
     
    mysql升级

     
    从5.5升级到5.6
    1. 下载mysql5.6安装包并配置mysql5.6安装包安装路径
    2. 关闭mysql5.5的实例,修改部分参数,使用mysql5.6软件启动
    3. 执行mysql5.6路径下mysql_upgrade脚本
    4. 验证是否成功升级
    MySQL升级
     
    1)关闭mysql
    查看mysql是否启动
    aiapple@aiapple:/tmp/mysqldata$ ps -ef | grep mysqld
    aiapple   4931  2146  0 22:32 pts/0    00:00:00 /bin/sh /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf
    aiapple   5168  4931  0 22:32 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/tmp/mysqldata/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/aiapple.err --pid-file=/usr/local/mysql/data/aiapple.pid --socket=/tmp/mysql.sock --port=3306
    aiapple   5187  4889  0 22:33 pts/13   00:00:00 grep --color=auto mysqld
    使用mysqladmin工具关闭mysql服务
    aiapple@aiapple:/usr/local/mysql$ mysqladmin -uroot --socket=/tmp/mysql.sock shutdown -p
    Enter password:
    160727 22:28:46 mysqld_safe mysqld from pid file /usr/local/mysql/data/aiapple.pid ended
    [1]+  Done                    /usr/local/mysql55/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf  (wd: /usr/local/mysql/data)
    (wd now: /usr/local/mysql)
    检查是否关闭
    aiapple@aiapple:/usr/local/mysql$ ps -ef | grep mysqld
    aiapple   4918  2146  0 22:28 pts/0    00:00:00 grep --color=auto mysqld
    2)更改my.cnf
    #vim my.cnf(把55目录都改成56的)
    3)使用mysql5.6启动软件;
    #使用5.6拉起实例
    aiapple@aiapple:/tmp/mysqldata$ /usr/local/mysql56/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf &
    [1] 9121
    aiapple@aiapple:/tmp/mysqldata$ 160806 21:29:11 mysqld_safe Logging to '/tmp/mysqldata/node1/aiapple.log'.
    160806 21:29:11 mysqld_safe Starting mysqld daemon with databases from /tmp/mysqldata/node1
    #查看mysqld进程有没有起来
    aiapple@aiapple:/tmp/mysqldata$ ps -ef | grep mysql
    aiapple   9121  8547  0 21:29 pts/2    00:00:00 /bin/sh /usr/local/mysql56/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf
    aiapple   9489  9121  0 21:29 pts/2    00:00:00 /usr/local/mysql56/bin/mysqld --defaults-file=/tmp/mysqldata/my.cnf --basedir=/usr/local/mysql56 --datadir=/tmp/mysqldata/node1 --plugin-dir=/usr/local/mysql56/lib/plugin --log-error=/tmp/mysqldata/node1/aiapple.log --pid-file=/tmp/mysqldata/node1/mysqld.pid --socket=/tmp/mysqldata/node1/mysql.sock --port=3306
    aiapple   9564  8547  0 21:35 pts/2    00:00:00 grep --color=auto mysql
    #登陆后查看mysql状态
    mysql> status
    --------------
    mysql  Ver 14.14 Distrib 5.6.32, for linux-glibc2.5 (x86_64) using  EditLine wrapper
     
    Connection id:        3
    Current database:   
    Current user:        root@localhost
    SSL:            Not in use
    Current pager:        stdout
    Using outfile:        ''
    Using delimiter:    ;
    Server version:        5.6.32-log MySQL Community Server (GPL)
    Protocol version:    10
    Connection:        Localhost via UNIX socket
    Server characterset:    latin1
    Db     characterset:    latin1
    Client characterset:    utf8
    Conn.  characterset:    utf8
    UNIX socket:        /tmp/mysqldata/node1/mysql.sock
    Uptime:            7 min 27 sec
     
    Threads: 1  Questions: 5  Slow queries: 0  Opens: 32  Flush tables: 1  Open tables: 25  Queries per second avg: 0.011
    --------------
     
    View Code
    4)升级库mysql_upgrade
    aiapple@aiapple:/tmp/mysqldata$ /usr/local/mysql56/bin/mysql_upgrade -uroot --socket=/tmp/mysqldata/node1/mysql.sock -p
    Enter password:
    Looking for 'mysql' as: /usr/local/mysql56/bin/mysql
    Looking for 'mysqlcheck' as: /usr/local/mysql56/bin/mysqlcheck
    Running 'mysqlcheck' with connection arguments: '--socket=/tmp/mysqldata/node1/mysql.sock'
    Warning: Using a password on the command line interface can be insecure.
    Running 'mysqlcheck' with connection arguments: '--socket=/tmp/mysqldata/node1/mysql.sock'
    Warning: Using a password on the command line interface can be insecure.
    mysql.columns_priv                                 OK
    mysql.db                                           OK
    mysql.event                                        OK
    mysql.func                                         OK
    mysql.general_log                                  OK
    mysql.help_category                                OK
    mysql.help_keyword                                 OK
    mysql.help_relation                                OK
    mysql.help_topic                                   OK
    mysql.host                                         OK
    mysql.ndb_binlog_index                             OK
    mysql.plugin                                       OK
    mysql.proc                                         OK
    mysql.procs_priv                                   OK
    mysql.proxies_priv                                 OK
    mysql.servers                                      OK
    mysql.slow_log                                     OK
    mysql.tables_priv                                  OK
    mysql.time_zone                                    OK
    mysql.time_zone_leap_second                        OK
    mysql.time_zone_name                               OK
    mysql.time_zone_transition                         OK
    mysql.time_zone_transition_type                    OK
    mysql.user                                         OK
    Running 'mysql_fix_privilege_tables'...
    Warning: Using a password on the command line interface can be insecure.
    Running 'mysqlcheck' with connection arguments: '--socket=/tmp/mysqldata/node1/mysql.sock'
    Warning: Using a password on the command line interface can be insecure.
    Running 'mysqlcheck' with connection arguments: '--socket=/tmp/mysqldata/node1/mysql.sock'
    Warning: Using a password on the command line interface can be insecure.
    OK
    View Code
    #验证库有没有升级成功
    aiapple@aiapple:/tmp/mysqldata$ /usr/local/mysql56/bin/mysql_upgrade -uroot --socket=/tmp/mysqldata/node1/mysql.sock -p
    Enter password:
    Looking for 'mysql' as: /usr/local/mysql56/bin/mysql
    Looking for 'mysqlcheck' as: /usr/local/mysql56/bin/mysqlcheck
    This installation of MySQL is already upgraded to 5.6.32, use --force if you still need to run mysql_upgrade
     
    mysql多实例安装

     
    1. 部署好mysql软件
    2. 编辑多个配置文件,初始化多个实例
    3. 启动mysql实例
     
    为啥多实例部署?
    • 充分利用系统资源
    • 资源隔离
    • 业务,模块隔离
     多实例安装
    #mkdir -p /mysqldata/node3
    a) 初始化实例 使用脚本mysql_install_db
    aiapple@aiapple:/tmp/mysqldata/node1$ /usr/local/mysql56/scripts/mysql_install_db --user=aiapple --basedir=/usr/local/mysql56 --datadir=/tmp/mysqldata/node3
    #查看
    aiapple@aiapple:/tmp/mysqldata/node1$ ls ../node3
    ibdata1  ib_logfile0  ib_logfile1  mysql  performance_schema  test
    b) 给node3配置文件
    cp my2.cnf my3.cnf
    vim my3.cnf(修改相关参数)
    [client]
    #password       = your_password
    port            = 3308
    socket          = /tmp/mysqldata/node3/mysql.sock
     
    [mysqld_safe]
    user=aiapple
    ledir = /usr/local/mysql56/bin
    #ledir = /usr/local/mysql55/bin
    nice = 0
    # Here follows entries for some specific programs
     
    # The MySQL server
    [mysqld]
    port            = 3308
    socket          = /tmp/mysqldata/node3/mysql.sock
    pid-file        = /tmp/mysqldata/node3/mysqld.pid
    basedir         = /usr/local/mysql56
    #basedir         = /usr/local/mysql55
    datadir         = /tmp/mysqldata/node3
    innodb_data_home_dir      = /tmp/mysqldata/node3
    innodb_log_group_home_dir = /tmp/mysqldata/node3
    tmpdir          = /tmp/mysqldata/node3
    log-error       = /tmp/mysqldata/node3/aiapple.log
    log-bin         = /tmp/mysqldata/node3/mysql-bin.log
    View Code
    c) 使用mysqld_safe,及my3.cnf拉起实例
    aiapple@aiapple:/tmp/mysqldata/node3$ /usr/local/mysql56/bin/mysqld_safe --defaults-file=/tmp/mysqldata/node3/my3.cnf &
    [2] 9861
    aiapple@aiapple:/tmp/mysqldata/node3$ 160806 22:03:17 mysqld_safe Logging to '/tmp/mysqldata/node3/aiapple.log'.
    160806 22:03:17 mysqld_safe Starting mysqld daemon with databases from /tmp/mysqldata/node3
    d)查看
    aiapple@aiapple:/tmp/mysqldata/node3$ ps -ef | grep mysqld
    aiapple   9121  8547  0 21:29 pts/2    00:00:00 /bin/sh /usr/local/mysql56/bin/mysqld_safe --defaults-file=/tmp/mysqldata/my.cnf
    aiapple   9489  9121  0 21:29 pts/2    00:00:02 /usr/local/mysql56/bin/mysqld --defaults-file=/tmp/mysqldata/my.cnf --basedir=/usr/local/mysql56 --datadir=/tmp/mysqldata/node1 --plugin-dir=/usr/local/mysql56/lib/plugin --log-error=/tmp/mysqldata/node1/aiapple.log --pid-file=/tmp/mysqldata/node1/mysqld.pid --socket=/tmp/mysqldata/node1/mysql.sock --port=3306
    aiapple   9861  8547  0 22:03 pts/2    00:00:00 /bin/sh /usr/local/mysql56/bin/mysqld_safe --defaults-file=/tmp/mysqldata/node3/my3.cnf
    aiapple  10327  9861  0 22:03 pts/2    00:00:00 /usr/local/mysql56/bin/mysqld --defaults-file=/tmp/mysqldata/node3/my3.cnf --basedir=/usr/local/mysql56 --datadir=/tmp/mysqldata/node3 --plugin-dir=/usr/local/mysql56/lib/plugin --log-error=/tmp/mysqldata/node3/aiapple.log --pid-file=/tmp/mysqldata/node3/mysqld.pid --socket=/tmp/mysqldata/node3/mysql.sock --port=3308
    aiapple  10350  8547  0 22:04 pts/2    00:00:00 grep --color=auto mysqld
     
    可以看到有两个端口的mysqld,分别是3306,3308
    e) 登陆新实例,删除test库,空用户,设置root密码
    aiapple@aiapple:/tmp/mysqldata/node3$ mysql -uroot --socket=/tmp/mysqldata/node3/mysql.sock
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 1
    Server version: 5.6.32-log MySQL Community Server (GPL)
     
    Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
     
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
     
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
     
    delete from msyql.user where user='';
    delete from mysql.user where host<>'localhost';
    set password for root@'localhost'=password('000000');
    delete from mysql.db;
    drop database test;
    flush privileges;
    View Code
    mysql线上安装小结

     
    • 根据需求选择合适的版本以及分支,建议使用或升级到较高版本5.5或5.6
    • 如果需要定制mysql功能的话,可以考虑编译安装,否则的话建议使用二进制包安装,比较省事。
    • 根据机器配置选择部署多个mysql实例还是单个实例,机器配置非常好的话,建议部署多实例
  • 相关阅读:
    oracle 11g 断电后 无法启动 ora 00600 kcratr_scan_lastbwr 修复小计
    arcgis for python (arcpy) 入门
    解决 构造函数 包含业务逻辑 IDE无法初始化界面的问题
    arcgis 10.1 发布 气温插值GP服务小计
    执行 Animation先决条件
    ASP.NET MVC3学习心得视图和模型
    Axure使用心得分享
    ASP.NET MVC3学习心得表单和HTML辅助方法
    ASP.NET MVC3学习心得入门和控制器
    WindowsPhone 中SQL CE数据库的使用
  • 原文地址:https://www.cnblogs.com/Aiapple/p/5745045.html
Copyright © 2011-2022 走看看