代码拉取完成,页面将自动刷新
同步操作将从 冷川/Linux-Tutorial 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
/opt
目录下创建一个目录 setups
用来存放各种软件安装包;在 /usr
目录下创建一个 program
用来存放各种解压后的软件包,下面的讲解也都是基于此习惯EPEL、RepoForge
,如果你出现 yum install XXXXX
安装不成功的话,很有可能就是你没有相关源,请查看我对源设置的文章wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.29.tar.gz
(大小:31 M)wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.11.tar.gz
(大小:47 M)cd /opt/setups
tar zxvf mysql-5.6.29.tar.gz
mv /opt/setups/mysql-5.6.29 /usr/program/
yum install -y make gcc-c++ cmake bison-devel ncurses-devel
cd /usr/program/mysql-5.6.29/
mkdir -p /usr/program/mysql/data
sudo cmake -DCMAKE_INSTALL_PREFIX=/usr/program/mysql -DMYSQL_DATADIR=/usr/program/mysql/data -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=utf8 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1
sudo make
,这个过程比较漫长,一般都在 30 分钟左右,具体还得看机子配置,如果最后结果有 error,建议删除整个 mysql 目录后重新解压一个出来继续处理sudo make install
sudo cp /usr/program/mysql-5.6.29/support-files/mysql.server /etc/init.d/mysql
sudo chmod 755 /etc/init.d/mysql
sudo chkconfig mysql on
sudo cp /usr/program/mysql-5.6.29/support-files/my-default.cnf /etc/my.cnf
rm -rf /usr/program/mysql-5.6.29/
sudo groupadd mysql
#添加组sudo useradd -g mysql mysql -s /bin/false
#创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统sudo chown -R mysql:mysql /usr/program/mysql/data
#设置MySQL数据库目录权限sudo /usr/program/mysql/scripts/mysql_install_db --basedir=/usr/program/mysql --datadir=/usr/program/mysql/data --skip-name-resolve --user=mysql
sudo iptables -I INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
sudo service iptables save
sudo service iptables restart
vim /etc/selinux/config
SELINUX=enforcing
改为 SELINUX=disabled
sudo ln -s /usr/program/mysql/bin/mysql /usr/bin
sudo ln -s /usr/program/mysql/bin/mysqladmin /usr/bin
find / -name "my.cnf"
,我查到的结果:/etc/my.cnf
/usr/program/mysql/my.cnf
/usr/program/mysql/mysql-test/suite/ndb/my.cnf
/usr/program/mysql/mysql-test/suite/ndb_big/my.cnf
.............
/usr/program/mysql/mysql-test/suite/ndb_rpl/my.cnf
service mysql start
ps aux | grep mysql
mysql -uroot
SET PASSWORD = PASSWORD('123456');
mysql -uroot -p
service mysql stop
/usr/program/mysql/bin/mysqld --skip-grant-tables
mysql -u root mysql
UPDATE user SET Password=PASSWORD('填写你要的新密码') where USER='root';FLUSH PRIVILEGES;
service mysql restart
主库操作步骤
mkdir -p /usr/program/mysql/data/mysql-bin
vim /etc/my.cnf
,
log-bin = /usr/program/mysql/data/mysql-bin
binlog-do-db=ssm
SHOW VARIABLES LIKE '%slow_query_log%';
,如果显示 OFF 则表示关闭,ON 表示开启SHOW MASTER STATUS;
grant replication slave on *.* to 'slave01'@'192.168.1.135' identified by '123456';
flush privileges;
从库操作步骤
SHOW VARIABLES LIKE '%slow_query_log%';
,如果显示 OFF 则表示关闭,ON 表示开启。sudo mysql -h 192.168.1.105 -u slave01 -p
,必须要连上下面的操作才有意义。
service iptables stop
sudo iptables -I INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
sudo service iptables save
sudo service iptables restart
vim /etc/my.cnf
,把 server-id 改为跟主库不一样 CHANGE MASTER TO
master_host='192.168.1.113',
master_user='slave01',
master_password='123456',
master_port=3306,
master_log_file='mysql3306-bin.000006',>>>这个值复制刚刚让你记录的值
master_log_pos=1120;>>>这个值复制刚刚让你记录的值
执行该 SQL 语句,启动 slave 同步:START SLAVE;
执行该 SQL 语句,查看从库机子同步状态:SHOW SLAVE STATUS;
在查看结果中必须下面两个值都是 Yes 才表示配置成功:
Slave_IO_Running:Yes
Slave_SQL_Running:Yes
如果你的 Slave_IO_Running 是 No,一般如果你是在虚拟机上测试的话,从库的虚拟机是从主库的虚拟机上复制过来的,那一般都会这样的,因为两台的 MySQL 的 UUID 值一样。你可以检查从库下的错误日志:cat /usr/program/mysql/data/mysql-error.log
vim /usr/program/mysql/data/auto.cnf
,把配置文件中的:server-uuid 值随便改一下,保证和主库是不一样即可。此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。