当前位置:Gxlcms > 数据库问题 > CENTOS6.5 安装 mysql5.6 以及搭建双主

CENTOS6.5 安装 mysql5.6 以及搭建双主

时间:2021-07-01 10:21:17 帮助过:43人阅读

第一种是你[root@localhostsrc]#./mysql_install_db --user=mysql --datadir=/data/mysql/data --basedir=/usr/local/mysql路径不对那么重新执行这句

第二种则是你有老的数据库没有关闭或者你多次service mysqld start导致的。解决办法如下

[root@localhost support-files]# service mysqld restart

 ERROR! MySQL server PID file could not be found!

Starting MySQL.. ERROR! The server quit without updating PID file (/data/mysql/data/localhost.localdomain.pid).

[root@localhost support-files]# ps -ef |grep mysql

root     47388     1  0 17:03 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql/data --pid-file=/data/mysql/data/localhost.localdomain.pid

mysql    47503 47388  0 17:03 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/data/localhost.localdomain.err --pid-file=/data/mysql/data/localhost.localdomain.pid

root     62679 11100  0 22:06 pts/0    00:00:00 grep mysql

[root@localhost support-files]# kill -9 47503

[root@localhost support-files]# service mysqld restart

 ERROR! MySQL server PID file could not be found!

Starting MySQL.. SUCCESS!

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

二、MYSQL5.5.34编译安装

Mysql5.5.34的安装步骤与上面基本一致编译的地方需要编译完全点另外模板复制方面也有些许不同

[root@localhost mysql-5.6.10]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

-DMYSQL_DATADIR=/data/mysql/data/ \

-DSYSCONFDIR=/etc \

-DWITH_TCP_PORT=3306 \

-DMYSQL_USER=mysql \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EXTRA_CHARSETS:STRING=all \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_FEDERATED_STORAGE_ENGINE=1

[root@localhost support-files]# cp  my-medium.cnf /etc/my.cnf  

vim  /etc/my.cnf

将上面的参数加到mysqld中存在的改变参数

ARCHIVE    : ARCHIVE存储引擎被用来无索引地,非常小地覆盖存储的大量数据

BLACKHOLE :存储引擎接受但不存储数据,并且检索总是返回一个空集但是会记录到日志里。

FEDERATED :储引擎把数据存在远程数据库中

InnoDB and BDB     :InnoDB和BDB存储引擎提供事务安全表

MEMORY    :MEMORY存储引擎提供“内存中”表,MEMORY存储引擎正式地被确定为HEAP引擎。

MyISAM     :MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。

EXAMPLE   :EXAMPLE存储引擎是一个“存根”引擎,它不做什么。

NDB Cluster  : 是被MySQL Cluster用来实现分割到多台计算机上的表的存储引擎。它在MySQL-Max 5.1二进制分发版里提供。这个存储引擎当前只被Linux, Solaris, 和Mac OS X 支持。

CSV        : 存储引擎把数据以逗号分隔的格式存储在文本文件中。

MERGE     : 存储引擎允许集合将被处理同样的MyISAM表作为一个单独的表。就像MyISAM一样,MEMORY和MERGE存储引擎处理非事务表,这两个引擎也都被默认包含在MySQL中。在5.6中等同于MRG_MYISAM

 

最后如果你的存储引擎少安装了或者多安装了都没有关系你可以安装也可以卸载

1,查看一下,mysql配置是不是支持动态添加插件

mysql> show variables like "have_%";

+----------------------+-------+

| Variable_name        | Value |

+----------------------+-------+

| have_compress        | YES   |

| have_crypt           | YES   |

| have_csv             | YES   |

| have_dynamic_loading | YES   |    //在这里是YES表示是支持的

 

如果是no呢,就不太好办,因为have_dynamic_loading是只读变量,

mysql> set have_dynamic_loading=1;

mysql> install plugin INNODB soname "ha_innodb.so";

mysql> install plugin INNODB_TRX soname "ha_innodb.so";

mysql> install plugin INNODB_LOCKS soname "ha_innodb.so";

mysql> install plugin INNODB_LOCK_WAITS soname "ha_innodb.so";

mysql> install plugin INNODB_CMP soname "ha_innodb.so";

mysql> install plugin INNODB_CMP_RESET soname "ha_innodb.so";

mysql> install plugin INNODB_CMPMEM soname "ha_innodb.so";

mysql> install plugin INNODB_CMPMEM_RESET soname "ha_innodb.so"

mysql> install plugin ARCHIVE soname "ha_archive.so";

安装好后,在用 show engines;或者show plugins;来查看

 

)

2: 搭建双主

(1): 在2台服务器上将mysql装好后修改2边的配置文件

vi /etc/my.cnf

master1开启日志模式:log_bin=mysql_bin

server_id=1

master2开启日志模式:log_bin=mysql_log

server_id=2

在master1上登入mysql:   mysql –phaowu123

授权:grant replication slave on *.* to slave@‘%’ identified by ‘haowu@yunwei’;

刷新授权:flush privileges;

 (2): master1上show master status; 查看master状态

reset master;

在master2上用slave用户登入master1测试授权是否成功

mysql –u –p –h

在master2上登入mysql做changer master to (注;先stop slave;)

CHANGE MASTER TO

MASTER_HOST=‘’,

MASTER_USER=‘’,

MASTER_PASSWORD=‘’,

MASTER_PORT=3306,

   MASTER_LOG_FILE=‘’,

   MASTER_LOG_POS=

   MASTER_CONNECT_RETRY=10;

start slave;

show slave status\G

看到:

Slave_IO_Running: Yes

            Slave_SQL_Running: Yes    说明OK

(3): 2台上做法一样

到此 mysql互为主从搭建完成

CENTOS6.5 安装 mysql5.6 以及搭建双主

标签:实现   open   ted   err   etc   nec   分发   blackhole   连接   

人气教程排行