热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

MySQL5.5.35单机多实例配置详解

一、前言二、概述三、环境准备四、安装MySQL5.5.35五、新建支持多实例的配置文件(我这里配置的是四个实例)六、初始化多实例数据库七、提供管理脚本mysqld_mult

一、前言二、概述三、环境准备四、安装MySQL5.5.35五、新建支持多实例的配置文件(我这里配置的是四个实例)六、初始化多实例数据库七、提供管理脚本mysqld_mult

2.背景/需求、注意事项

(1).背景与需求

(2).注意事项


三、环境准备

1.安装yum源

[root@node1 src]# wget [root@node1 src]# rpm -ivh epel-release-6-8.noarch.rpm

2.同步时间

[root@node1 src]# yum install -y ntp [root@node1 src]# ntpdate 202.120.2.101 [root@node1 src]# hwclock –w

3.安装mysql5.5依赖包

[root@node1 ~]# yum install -y autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool* openssl*

4.安装cmake

[root@node1 ~]# yum install -y cmake


四、安装MySQL 5.5.35

1.创建安装目录与数据存放目录

[root@node1 ~]# mkdir /data/mysql [root@node1 ~]# mkdir /data/mysql/data

2.创建mysql用户与组

[root@node1 ~]# useradd mysql [root@node1 ~]# id mysql uid=500(mysql) gid=500(mysql) 组=500(mysql)

3.授权安装目录与数据目录

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

4.安装mysql

[root@node1 ~]# cd src/ [root@node1 src]# tar xf mysql-5.5.35.tar.gz [root@node1 src]# cd mysql-5.5.35 [root@node1 mysql-5.5.35]# cmake -DCMAKE_INSTALL_PREFIX=/data/mysql -DSYSCOnFDIR=/data/mysql/etc -DMYSQL_DATADIR=/data/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 [root@node1 mysql-5.5.35]# make && make install

好了,到这里我们的mysql就安装完成了,下面我们为mysql提供多实例配置文件。


五、新建支持多实例的配置文件(我这里配置的是四个实例)

1.删除默认的数据目录

[root@node1 ~]# cd /data/mysql/ [root@node1 mysql]# rm -rf data

2.创建多实例配置需要的目录

[root@node1 mysql]# mkdir etc tmp run log binlogs data data2 data3 data4 [root@node1 mysql]# chown -R mysql.mysql tmp run log binlogs data data2 data3 data4

3.提供配置文件

[root@node1 ~]# cd src/ [root@node1 src]# cd mysql-5.5.35 [root@node1 mysql-5.5.35]# cp support-files/my-small.cnf /data/mysql/etc/my.cnf [root@node1 ~]# cd /data/mysql/etc/ [root@node1 etc]# vim my.cnf # This server may run 4+ separate instances. So we use mysqld_multi to manage their services. [client] default-character-set = utf8 [mysqld_multi] mysqld = /data/mysql/bin/mysqld_safe mysqladmin = /data/mysql/bin/mysqladmin log = /data/mysql/log/mysqld_multi.log user = root #password = # This is the general purpose database. # The locations are default. # They are left in [mysqld] in case the server is started normally instead of by mysqld_multi. [mysqld1] socket = /data/mysql/run/mysqld.sock port = 3306 pid-file = /data/mysql/run/mysqld.pid datadir = /data/mysql/data lc-messages-dir = /data/mysql/share/english # These support master - master replication #auto-increment-increment = 4 #auto-increment-offset = 1 # Since it is master 1 log-bin = /data/mysql/binlogs/bin-log-mysqld1 log-bin-index = /data/mysql/binlogs/bin-log-mysqld1.index #binlog-do-db = # Leave this blank if you want to control it on slave max_binlog_size = 1024M # This is exlusively for mysqld2 # It is on 3307 with data directory /data/mysqld/data2 [mysqld2] socket = /data/mysql/run/mysqld.sock2 port = 3307 pid-file = /data/mysql/run/mysqld.pid2 datadir = /data/mysql/data2 lc-messages-dir = /data/mysql/share/english # Disable DNS lookups #skip-name-resolve # These support master - slave replication log-bin = /data/mysql/binlogs/bin-log-mysqld2 log-bin-index = /data/mysql/binlogs/bin-log-mysqld2.index #binlog-do-db = # Leave this blank if you want to control it on slave max_binlog_size = 1024M # Relay log settings #relay-log = /data/mysql/log/relay-log-mysqld2 #relay-log-index = /data/mysql/log/relay-log-mysqld2.index #relay-log-space-limit = 4G # Slow query log settings #log-slow-queries = /data/mysql/log/slow-log-mysqld2 #long_query_time = 2 #log-queries-not-using-indexes # This is exlusively for mysqld3 # It is on 3308 with data directory /data/mysqld/data3 [mysqld3] socket = /data/mysql/run/mysqld.sock3 port = 3308 pid-file = /data/mysql/run/mysqld.pid3 datadir = /data/mysql/data3 lc-messages-dir = /data/mysql/share/english #Disable DNS lookups #skip-name-resolve # These support master - slave replication log-bin = /data/mysql/binlogs/bin-log-mysqld3 log-bin-index = /data/mysql/binlogs/bin-log-mysqld3.index #binlog-do-db = # Leave this blank if you want to control it on slave max_binlog_size = 1024M # This is exlusively for mysqld4 # It is on 3309 with data directory /data/mysqld/data4 [mysqld4] socket = /data/mysql/run/mysqld.sock4 port = 3309 pid-file = /data/mysql/run/mysqld.pid4 datadir = /data/mysql/data4 lc-messages-dir = /data/mysql/share/english # Disable DNS lookups #skip-name-resolve # These support master - slave replication log-bin = /data/mysql/binlogs/bin-log-mysqld4 log-bin-index = /data/mysql/binlogs/bin-log-mysqld4.index #binlog-do-db = # Leave this blank if you want to control it on slave max_binlog_size = 1024M # The rest of the my.cnf is shared # Here follows entries for some specific programs # The MySQL server [mysqld] basedir = /data/mysql tmpdir = /data/mysql/tmp socket = /data/mysql/run/mysqld.sock port = 3306 pid-file = /data/mysql/run/mysqld.pid datadir = /data/mysql/data lc-messages-dir = /data/mysql/share/english skip-external-locking key_buffer_size = 16K max_allowed_packet = 1M table_open_cache = 4 sort_buffer_size = 64K read_buffer_size = 256K read_rnd_buffer_size = 256K net_buffer_length = 2K thread_stack = 128K # Increase the max connections max_cOnnections= 2 # The expiration time for logs, including binlogs expire_logs_days = 14 # Set the character as utf8 character-set-server = utf8 collation-server = utf8_unicode_ci # This is usually only needed when setting up chained replication #log-slave-updates # Enable this to make replication more resilient against server crashes and restarts # but can cause higher I/O on the server #sync_binlog = 1 # The server id, should be unique in same network server-id = 1 # Set this to force MySQL to use a particular engine/table-type for new tables # This setting can still be overridden by specifying the engine explicitly # in the CREATE TABLE statement default-storage-engine = INNODB # Enable Per Table Data for InnoDB to shrink ibdata1 innodb_file_per_table = 1 # Uncomment the following if you are using InnoDB tables #innodb_data_home_dir = /data/mysql/data #innodb_data_file_path = ibdata1:10M:autoextend #innodb_log_group_home_dir = /data/mysql/data # You can set .._buffer_pool_size up to 50 - 80 % of RAM # but beware of setting memory usage too high innodb_buffer_pool_size = 16M innodb_additional_mem_pool_size = 2M # Set .._log_file_size to 25 % of buffer pool size innodb_log_file_size = 5M innodb_log_buffer_size = 8M innodb_flush_log_at_trx_commit = 1 innodb_lock_wait_timeout = 50 [mysqldump] quick max_allowed_packet = 16M [mysql] no-auto-rehash [myisamchk] key_buffer_size = 8M sort_buffer_size = 8M [mysqlhotcopy] interactive-timeout [mysql.server] user = mysql [mysqld_safe] log-error = /data/mysql/log/mysqld.log pid-file = /data/mysql/run/mysqld.pid open-files-limit = 8192
推荐阅读
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • 本文介绍了在MacOS系统上安装MySQL的步骤,并详细说明了如何设置MySQL服务的开机启动和如何修改MySQL的密码。通过下载MySQL的macos版本并按照提示一步一步安装,在系统偏好设置中可以找到MySQL的图标进行设置。同时,还介绍了通过终端命令来修改MySQL的密码的具体操作步骤。 ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 本文介绍了如何在MySQL中将零值替换为先前的非零值的方法,包括使用内联查询和更新查询。同时还提供了选择正确值的方法。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在Mac上安装Xamarin并使用Windows上的VS开发iOS app的方法,包括所需的安装环境和软件,以及使用Xamarin.iOS进行开发的步骤。通过这种方法,即使没有Mac或者安装苹果系统,程序员们也能轻松开发iOS app。 ... [详细]
  • 本文讨论了如何使用Web.Config进行自定义配置节的配置转换。作者提到,他将msbuild设置为详细模式,但转换却忽略了带有替换转换的自定义部分的存在。 ... [详细]
  • 本文介绍了如何使用JSONObiect和Gson相关方法实现json数据与kotlin对象的相互转换。首先解释了JSON的概念和数据格式,然后详细介绍了相关API,包括JSONObject和Gson的使用方法。接着讲解了如何将json格式的字符串转换为kotlin对象或List,以及如何将kotlin对象转换为json字符串。最后提到了使用Map封装json对象的特殊情况。文章还对JSON和XML进行了比较,指出了JSON的优势和缺点。 ... [详细]
  • 本文介绍了Android中的assets目录和raw目录的共同点和区别,包括获取资源的方法、目录结构的限制以及列出资源的能力。同时,还解释了raw目录中资源文件生成的ID,并说明了这些目录的使用方法。 ... [详细]
author-avatar
江西小毒i哈
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有