Mysql阶段学习总结

Tags: ,

Mysql安装

由于Ubuntu的便利导致这部分非常缺失

Mysql数据库引擎

1)MyISAM

2)InnoDB

3)NDB..

4)Blackhole..

一台机器多个Mysql实例

1) 使用mysqld_multi对各个mysql实例进行启动,停止

2)配置my.cnf(详细见附录)

2.1)配置[mysqld_multi]

2.2)配置[mysqldN],如果需要配置成主服务器,则需要增加内存配置,log-bin,

Mysql主从同步配置

超级有用的东西.

官方网站上也提供了基于主从同步的一些切换solution,挺有帮助的.

1)主服务器my.cnf配置server-id, log-bin, 配置同步用用户(repl_slave权限)

2)从服务器my.cnf配置master信息,server-id

Mysql Load Balancer

很奇怪的一个新东西,官方网站上有介绍,找不到下载.,,,猜测是扩展mysql proxy的新东西

Mysql Cluster

按照官方说明不支持一台服务器上的多实例配置.由于物理条件限制只好大致了解了一下.

1)NDBM管理节点,管理各个NDB数据节点用,可以和Mysql节点放在一台机器上.

2)Mysql节点,Client通过它连接到Cluster, 通过NDBM获取Cluster的Data.

3)Data节点,组成Cluster,同步数据,由NDBM统一管理.

遗留问题:

1)从服务器log-slave-update的作用

2)phpmyadmin只能通过默认socket文件位置连接

3)现存数据库得主从服务器搭建.

4)不同数据库引擎的主从服务器搭建.

5)Cluster中,mysqld节点如何连接NDBM.

附录:

多个mysql实例以及mysql主从的配置

[mysqld_multi]
mysqld     = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user       = multi_admin
password   = password

[mysqld2]
socket     = /var/run/mysqld/mysqld.sock
port       = 3306
pid-file   = /var/lib/mysql/hostname.pid
datadir    = /var/lib/mysql
language   = /usr/share/mysql/english
user       = mysql
log        =/var/lib/mysql/mysql.log
long_query_time = 2
key_buffer  = 16M
max_allowed_packet = 16M
thread_stack  = 128K
thread_cache_size = 8
query_cache_limit       = 1M
query_cache_size        = 16M
server-id = 1
log-bin=master-mysql-bin

[mysqld3]
socket     = /tmp/mysql.sock3
port       = 3308
pid-file   = /var/lib/mysql3/hostname.pid3
datadir    = /var/lib/mysql3
language   = /usr/share/mysql/english
user       = mysql

server-id = 2
master-host=localhost
master-port=3306
master-user=repl
master-password=repl
master-connect-retry=60

[mysqld4]
socket     = /tmp/mysql.sock4
port       = 3309
pid-file   = /var/lib/mysql4/hostname.pid4
datadir    = /var/lib/mysql4
language   = /usr/share/mysql/english
user       =mysql
 
[mysqld6]
socket     = /tmp/mysql.sock6
port       = 3311
pid-file   = /var/lib/mysql6/hostname.pid6
datadir    = /var/lib/mysql6
language   = /usr/share/mysql/english
user       = mysql

[client]
port  = 3308
socket  =  /tmp/mysql.sock3



Tags: Develop, mysql

无觅相关文章插件,快速提升流量