【MYSQL】一台centos6.5主机建两个mysql实例实现主从复制环境

来源:互联网 发布:成都工作怎么样知乎 编辑:程序博客网 时间:2024/05/16 11:33

【mysql5.5】安装略!<源码包编译安装>

===================================



# mysqladmin -ppassword  ping  

mysqld is alive


/etc/init.d/mysqld status


MySQL running (21075)[  OK  ]


----------------------------------------------

mysql服务器正确运行中


# mysqld_multi --example


# This is an example of a my.cnf file for mysqld_multi.# Usually this file is located in home dir ~/.my.cnf or /etc/my.cnf## SOME IMPORTANT NOTES FOLLOW:## 1.COMMON USER##   Make sure that the MySQL user, who is stopping the mysqld services, has#   the same password to all MySQL servers being accessed by mysqld_multi.#   This user needs to have the 'Shutdown_priv' -privilege, but for security#   reasons should have no other privileges. It is advised that you create a#   common 'multi_admin' user for all MySQL servers being controlled by#   mysqld_multi. Here is an example how to do it:##   GRANT SHUTDOWN ON *.* TO multi_admin@localhost IDENTIFIED BY 'password'##   You will need to apply the above to all MySQL servers that are being#   controlled by mysqld_multi. 'multi_admin' will shutdown the servers#   using 'mysqladmin' -binary, when 'mysqld_multi stop' is being called.## 2.PID-FILE##   If you are using mysqld_safe to start mysqld, make sure that every#   MySQL server has a separate pid-file. In order to use mysqld_safe#   via mysqld_multi, you need to use two options:##   mysqld=/path/to/mysqld_safe#   ledir=/path/to/mysqld-binary/##   ledir (library executable directory), is an option that only mysqld_safe#   accepts, so you will get an error if you try to pass it to mysqld directly.#   For this reason you might want to use the above options within [mysqld#]#   group directly.## 3.DATA DIRECTORY##   It is NOT advised to run many MySQL servers within the same data directory.#   You can do so, but please make sure to understand and deal with the#   underlying caveats. In short they are:#   - Speed penalty#   - Risk of table/data corruption#   - Data synchronising problems between the running servers#   - Heavily media (disk) bound#   - Relies on the system (external) file locking#   - Is not applicable with all table types. (Such as InnoDB)#     Trying so will end up with undesirable results.## 4.TCP/IP Port##   Every server requires one and it must be unique.## 5.[mysqld#] Groups##   In the example below the first and the fifth mysqld group was#   intentionally left out. You may have 'gaps' in the config file. This#   gives you more flexibility.## 6.MySQL Server User##   You can pass the user=... option inside [mysqld#] groups. This#   can be very handy in some cases, but then you need to run mysqld_multi#   as UNIX root.## 7.A Start-up Manage Script for mysqld_multi##   In the recent MySQL distributions you can find a file called#   mysqld_multi.server.sh. It is a wrapper for mysqld_multi. This can#   be used to start and stop multiple servers during boot and shutdown.##   You can place the file in /etc/init.d/mysqld_multi.server.sh and#   make the needed symbolic links to it from various run levels#   (as per Linux/Unix standard). You may even replace the#   /etc/init.d/mysql.server script with it.##   Before using, you must create a my.cnf file either in /usr/local/mysql/my.cnf#   or /root/.my.cnf and add the [mysqld_multi] and [mysqld#] groups.##   The script can be found from support-files/mysqld_multi.server.sh#   in MySQL distribution. (Verify the script before using)#[mysqld_multi]mysqld     = /usr/local/mysql/bin/mysqld_safemysqladmin = /usr/local/mysql/bin/mysqladminuser       = multi_adminpassword   = my_password[mysqld2]socket     = /tmp/mysql.sock2port       = 3307pid-file   = /mnt/myweb/mysql2/hostname.pid2datadir    = /mnt/myweb/mysql2language   = /usr/local/mysql/share/mysql/englishuser       = unix_user1[mysqld3]mysqld     = /path/to/mysqld_safeledir      = /path/to/mysqld-binary/mysqladmin = /path/to/mysqladminsocket     = /tmp/mysql.sock3port       = 3308pid-file   = /mnt/myweb/mysql3/hostname.pid3datadir    = /mnt/myweb/mysql3language   = /usr/local/mysql/share/mysql/swedishuser       = unix_user2[mysqld4]socket     = /tmp/mysql.sock4port       = 3309pid-file   = /mnt/myweb/mysql4/hostname.pid4datadir    = /mnt/myweb/mysql4language   = /usr/local/mysql/share/mysql/estoniauser       = unix_user3 [mysqld6]socket     = /tmp/mysql.sock6port       = 3311pid-file   = /mnt/myweb/mysql6/hostname.pid6datadir    = /mnt/myweb/mysql6language   = /usr/local/mysql/share/mysql/japaneseuser       = unix_user4

# vi /etc/my.cnf

粘贴到配置文件尾部


# 多实例配置#[mysqld_multi]mysqld     = /usr/local/mysql/bin/mysqld_safemysqladmin = /usr/local/mysql/bin/mysqladminuser       = rootpassword   = 123456[mysqld2]socket     = /tmp/mysql.sock2port       = 3307pid-file   = /mnt/myweb/data2/hostname.pid2datadir    = /mnt/myweb/data2#language   = /usr/local/mysql/share/mysql/englishlog-slow-queries = /var/log/mysql2/slow-query-loguser       = mysqllog-bin  = mysql-binserver-id = 2


新建对应的日志目录 和 数据库目录   并授权


利利用 mysql_install_db 安装初始化库  

# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/mnt/myweb/data2 &


启动实例2

# mysqld_multi start 2


连接msyql 实例2 空密码  可以连接后 修改root密码  --- 授权


mysql -S /tmp/mysql.sock2 -uroot -p


配置主从


实现简单主从  : 点击打开链接



0 0
原创粉丝点击