啰嗦的话不多说,直接开始部署吧,相信有一点linux基础的人都可以明白它。mysql5.7.22主从部署,既然是主从,那肯定至少需要2台服务器,2台服务器的安装是一样的,请看下面!1、创建mysql用户:useradd-m-d/home/mysqlmysql2,上传mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz安装包到/app目录下。附上官方下载链接:https://dev.mysql.com/downloads/file/?id=4769363,解压安装包到/app目录下tar-zxvfmysql-5.7.22-linux-glibc2.12-x86_64.tar.gz4。将解压后的安装包重命名为:mysql5722mvmysql-5.7.22-linux-glibc2.12-x86_64mysql57225。进入mysql5722目录创建data和logs目录。cdmysql5722/mkdirdata&&mkdirlogs6.在刚刚创建的logs目录下创建日志文件cdlogstoucherror.log&&touchgeneral.log。cd../bin/./mysqld--initialize--user=mysql--basedir=/app/mysql5722/--datadir=/app/mysql5722/data注意:初始化时会提示记得保存root用户的默认密码,首次登录需要。8、创建mysql配置文件:cd/etc/&&mvmy.cnfmy.cnf.bak新构建配置文件:touchmy.cnf,内容如下:Master节点配置文件内容:[mysqld]server-id=1log_bin=master-binlog_bin_index=master-bin.indexbinlog_do_db=mysqlexpire_logs_days=7#skip-grant-tableslower_case_table_names=1explicit_defaults_for_timestampport=3306datadir=/app/mysql5722/datasocket=/app/mysql5722/mysql.sockuser=mysqlsymbolic-links=0basedir=/app/mysql5722bisetg-tables字符服务器=utf8#general-log-file=/app/mysql5722/logs/general.loglanguage=/app/mysql5722/sharelc-messages-dir=/app/mysql5722/sharegenal-log=on#GENERAL_LOG=ONgeneral-log-file=/app/mysql5722/logs/mysqld.logslow-query-log=1pid-file=/app/mysql5722/mysql.pidslow-query-log-file=/app/mysql5722/logs/mysqld_slow.logslave-load-tmpdir=/app/mysql5722/tmpplugin-dir=/app/mysql5722/lib/pluginmax_connections=1000#innodb#innodb_log_file_size=512M#innodb_buffer_pool_size=2G[mysqld_safe]log-error=/app/mysql5722/logs/mysql_error.logpid-file=/应用程序/mysql5722/mysql.pid[客户端t]port=3306socket=/app/mysql5722/mysql.sockuser=mysql9,配置启动命令:cd/app/mysql5722/support-files/cpmysql.server/etc/init.d/mysqldcd/etc/init.d/modify在mysqld配置文件中加入如下两行信息:10.配置启动chkconfig--addmysqldchkconfigmysqldonchown-Rmysql:mysqlmysql5722/11。启动mysql数据库服务mysqldstart12。登录mysql./mysql-uroot-p'LRabR;xaS9lh'修改root默认密码,否则无法执行sql:./mysql-uroot-p'LRabR;xaS9lh'修改root默认密码,否则sql无法执行被执行:alteruseruser()identifiedby"Abcd@123";修改root用户密码flushprivileges;刷新用户mysql;createuser'master'@'%'identifiedby'Abcd@123';grantreplicationslaveon*.*to'master'@'%';flushprivilegesshowmasterstatus;备slave节点配置文件:[mysqld]server-id=2relay_log=slave-relay-binrelay_log_index=slave-relay-bin.indexbasedir=/app/mysql5722datadir=/app/mysql5722/datasocket=/app/mysql5722/mysql.sockuser=mysqlcharacter-set-server=utf8lower_case_table_names=1explicit_defaults_for_timestampport=3306general-log=1general-log-file=/app/mysql5722/logs/general.logslow-query-log=1long_query_time=1slow_query_log_file=/app/mysql5722/slowquery.logpid-file=/app/mysql5722/mysql.pidslave-load-tmpdir=/app/mysql5722/slavetmpmax_connections=1000#建议禁用符号链接以防止各种安全风险符号链接=0#sa[sql-grant-mysql]log-error=/app/mysql5722/logs/error.logpid-file=/app/mysql5722/mysql.pid[client]port=3306socket=/app/mysql5722/mysql.sockuser=mysql保存后重启slave节点mysql备份机器:(slave)上的配置:登录mysql后,执行:usermysql;changemastertomaster_host='10.1.60.71',master_user='master',master_password='abcd@123',master_log_file='master-bin.000001',master_log_pos=154;showslavestatus\G;确保下面两个值为YES,说明主从复制已经配置成功。需要注意的是两台服务器的防火墙策略必须互通。Slave_IO_Running:YESSlave_SQL_Running:YES当然,如果不想使用服务器真实IP对外提供本架构的服务,也可以安装keepalived作为VIP对外提供服务!
