发布网友 发布时间:2022-04-27 10:58
共3个回答
懂视网 时间:2022-04-29 22:22
前言:领导要求在1台DELL R710上安装多个mysql实例 一、安装第1个实例 1、当前系统 cat /etc/debian_version 6.0.10 2、查看安装包 apt-cache search mysql-server|grep "mysql-server" mysql-server-5.1 - MySQL database server binaries and system database setup mysql-server-core-5.1 - MySQL database server binaries mysql-server - MySQL database server (metapackage depending on the latest version) 3、安装mysql(会安装mysql相关的一系列的包) apt-get -y install mysql-server --force-yes 二、安装第二个实例 1、创建目录(我这边将第二个实例安装在/opt下) cd /opt/ mkdir mysql3307 2、复制mysql表和配置文件 cd /var/lib/mysql/ cp -a mysql /opt/mysql3307/ cp /etc/mysql/my.cnf /opt/mysql3307/ 3、修改配置(一般就是改下port和sock和pid和datadir路径) port = 3307 socket = /var/run/mysqld/mysqld3307.sock pid-file = /var/run/mysqld/mysqld3307.pid datadir = /opt/mysql3307 4、给mysql权限 chown -R mysql.root /opt/mysql3307/ 5、启mysql(这里使用mysql用户启) 修改/etc/passed文件 mysql:x:102:104:MySQL Server,,,:/var/lib/mysql:/bin/bash su - mysql /usr/sbin/mysqld --defaults-file=/opt/mysql3307/my.cnf --basedir=/usr --datadir=/opt/mysql3307/ --user=mysql --pid-file=/var/run/mysqld/mysqld3307.pid --skip-external-locking --port=3307 --socket=/var/run/mysqld/mysqld3307.sock & [1] 2484 150505 9:30:06 [Note] Plugin ‘FEDERATED‘ is disabled. 150505 9:30:07 InnoDB: Initializing buffer pool, size = 8.0M 150505 9:30:07 InnoDB: Completed initialization of buffer pool InnoDB: The first specified data file ./ibdata1 did not exist: InnoDB: a new database to be created! 150505 9:30:07 InnoDB: Setting file ./ibdata1 size to 10 MB InnoDB: Database physically writes the file full: wait... 150505 9:30:07 InnoDB: Log file ./ib_logfile0 did not exist: new to be created InnoDB: Setting log file ./ib_logfile0 size to 5 MB InnoDB: Database physically writes the file full: wait... 150505 9:30:07 InnoDB: Log file ./ib_logfile1 did not exist: new to be created InnoDB: Setting log file ./ib_logfile1 size to 5 MB InnoDB: Database physically writes the file full: wait... InnoDB: Doublewrite buffer not found: creating new InnoDB: Doublewrite buffer created InnoDB: Creating foreign key constraint system tables InnoDB: Foreign key constraint system tables created 150505 9:30:07 InnoDB: Started; log sequence number 0 0 150505 9:30:07 [Note] Event Scheduler: Loaded 0 events 150505 9:30:07 [Note] /usr/sbin/mysqld: ready for connections. Version: ‘5.1.73-1‘ socket: ‘/var/run/mysqld/mysqld3307.sock‘ port: 3307 (Debian) 6、最后查看2个mysql实例是否正常运行着 ps aux|grep mysql root 2152 0.0 0.0 3956 616 ? S 08:53 0:00 /bin/sh /usr/bin/mysqld_safe mysql 2276 0.0 3.6 182456 37560 ? Sl 08:53 0:01 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306 root 2277 0.0 0.0 5348 688 ? S 08:53 0:00 logger -t mysqld -p daemon.error mysql 2480 0.0 0.1 36884 1232 pts/0 S 09:29 0:00 su - mysql mysql 2481 0.0 0.1 19220 1976 pts/0 S 09:29 0:00 -su mysql 2484 5.5 3.6 174064 37004 pts/0 Sl 09:30 0:00 /usr/sbin/mysqld --defaults-file=/opt/mysql3307/my.cnf --basedir=/usr --datadir=/opt/mysql3307/ --user=mysql --pid-file=/var/run/mysqld/mysqld3307.pid --skip-external-locking --port=3307 --socket=/var/run/mysqld/mysqld3307.sock mysql 2495 0.0 0.1 16340 1136 pts/0 R+ 09:30 0:00 ps aux mysql 2496 0.0 0.0 7548 820 pts/0 S+ 09:30 0:00 grep mysql 7、登陆2个mysql实例看下 mysql -uroot -predhat -S /var/run/mysqld/mysqld.sock Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 54 Server version: 5.1.73-1 (Debian) Copyright (c) 2000, 2013, 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. mysql> quit Bye mysql -uroot -predhat -S /var/run/mysqld/mysqld3307.sock Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 1 Server version: 5.1.73-1 (Debian) Copyright (c) 2000, 2013, 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. mysql> quit Bye mysql@10:~$ 三、引擎 当前版本引擎 mysql -uroot -predhat -S /var/run/mysqld/mysqld.sock -e "show engines;" +------------+---------+----------------------------------------------------------------+--------------+------+------------+ | Engine | Support | Comment | Transactions | XA | Savepoints | +------------+---------+----------------------------------------------------------------+--------------+------+------------+ | InnoDB | YES | Supports transactions, row-level locking, and foreign keys | YES | YES | YES | | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO | | BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO | | CSV | YES | CSV storage engine | NO | NO | NO | | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO | | FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL | | ARCHIVE | YES | Archive storage engine | NO | NO | NO | | MyISAM | DEFAULT | Default engine as of MySQL 3.23 with great performance | NO | NO | NO | +------------+---------+----------------------------------------------------------------+--------------+------+------------+ 配置修改默认引擎为innodb 是在[mysqld]这个里面 default_table_type = innodb 5.5的话默认引擎直接是innodb了 不需要修改
本文出自 “7928217” 博客,请务必保留此出处http://7938217.blog.51cto.com/7928217/1650434
安装多个mysql实例(debian版本)
标签:mysql 多实例 debian 引擎
热心网友 时间:2022-04-29 19:30
这种架构一般用在以下三类场景
1. 备份多台 Server 的数据到一台如果按照数据切分方向来讲,那就是垂直切分。比如图 2,业务 A、B、C、D 是之前拆分好的业务,现在需要把这些拆分好的业务汇总起来备份,那这种需求也很适用于多源复制架构。实现方法我大概描述下:业务 A、B、C、D 分别位于 4 台 Server,每台 Server 分别有一个数据库来隔离前端的业务数据,那这样,在从库就能把四台业务的数据全部汇总起来,而不需要做额外的操作。那没有多源复制之前,要实现这类需求,只能在汇总机器上搭建多个 MySQL 实例,那这样势必会涉及到跨库关联的问题,不但性能急剧下降,管理多个实例也没有单台来的容易。
2. 用来聚合前端多个 Server 的分片数据。
同样,按照数据切分方向来讲,属于水平切分。比如图 3,按照年份拆分好的数据,要做一个汇总数据展现,那这种架构也非常合适。实现方法稍微复杂些:比如所有 Server 共享同一数据库和表,一般为了开发极端透明,前端配置有分库分表的中间件,比如爱可生的 DBLE。
3. 汇总并合并多个 Server 的数据
第三类和第一种场景类似。不一样的是不仅仅是数据需要汇总到目标端,还得合并这些数据,这就比第一种来的相对复杂些。比如图 4,那这样的需求,是不是也适合多源复制呢?答案是 YES。那具体怎么做呢?
热心网友 时间:2022-04-29 20:48
可以使用mysql_multi在一台主机上启动多实例数据库,用一个配置文件即可,要指定以下内容(不同实例的配置,根据自己的实际情况配置):