mysql读写分离(一)----------mysql安装

来源:互联网 发布:c语言中char占几个字节 编辑:程序博客网 时间:2024/06/06 16:35


环境:

centos:5.7

mysql:percona-server-5.6.23-72.1.tar


编译安装步骤:

简介

Percona server 是 MySQL 的衍生版,专注于 Linux/BSD 下 MySQL 数据库服务器的改进, 在功能和性能上较 MySQL 有着显著的提升。

Percona Server 的编译、配置和使用与 MySQL 完全一致,你完全可以把它当成是 MySQL 来使用。

下载percona:

wget http://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-5.6.23-72.1/source/tarball/percona-server-5.6.23-72.1.tar.gz

安装依赖

yum install gcc-c++ make cmake bison bison-devel ncurses-devel libaio-devel perl

对于 Fedora 20 和 CentOS 7 需要另外安装一个 perl-Data-Dumper 包:
yum install  perl-Data-Dumper

创建 MySQL 用户


useradd mysql  #添加mysqlpasswd mysql   #修改mysql用户密码


编译安装

tar zxf percona-server-5.6.23-72.1.tar.gz -C /usr/local/src/
cd /usr/local/src/percona-server-5.6.23-72.1/
创建目录:

mkdir /usr/local/mysql1811mkdir /usr/local/mysql1811/etcmkdir /home/mysql1811mkdir /home/mysql1811/data



cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql1811 \-DSYSCONFDIR=/usr/local/mysql1811/etc \-DMYSQL_DATADIR=/home/mysql1811/data \-DMYSQL_UNIX_ADDR=/home/mysql1811/mysql.sock \-DMYSQL_USER=mysql \-DMYSQL_TCP_PORT=3306 \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_MEMORY_STORAGE_ENGINE=1 \-DWITH_PARTITION_STORAGE_ENGINE=1 \-DEXTRA_CHARSETS=all \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DENABLED_LOCAL_INFILE=1 \-DWITH_READLINE=1

DENABLED_LOCAL_INFILE:允许导入文件到数据库,以加快数据导入速度, 使用 SQL 语句:LOAD DATA LOCAL INFILE 数据文件 INTO TABLE 表名

DWITH_READLINE:绑定 readline 的终端快捷键及历史记录功能。但是安装完后是不是仍然找不着 readline 的感觉, 因为 DWITH_READLINE 在 MySQL 5.6.5 版本就被移除了,同样 DWITH_LIBEDIT 在 MySQL 5.6.12 版本也被移除了。


点击查看 更多编译参数。

如果编译失败,清理源码目录下的 CMakeCache.txt 文件,重新编译即可。

make -j8make install

chmod 777 /etc/init.dchmod 777 /usr/local/mysql1811/


初始化数据库

mkdir /home/mysql1811chmod 777 /home/mysql1811cd /usr/local/mysql1811su mysql./scripts/mysql_install_db --user=mysql --datadir=/home/mysql1811/data


拷贝服务文件到 /etc/init.d/mysql1811,mysql56 这个文件名也是服务名,可以任意更改, 为了统一我们使用 mysql56 作为文件名:
cp support-files/mysql.server /etc/init.d/mysql1811

配置 my.cnf

mysql读取my.cnf配置文件位置的优先级:
MySQL读取各个my.cnf配置文件的先后顺序是:/etc/my.cnf/etc/mysql/my.cnf/usr/local/mysql/etc/my.cnf~/.my.cnf其他自定义路径下的my.cnf,例如:/data/mysql/yejr_3306/my.cnf

mkdir /home/mysql1811/logs

mkdir /usr/local/mysql1811/etc
touch /usr/local/mysql1811/etc/my.cnf
my.cnf:
[client]default-character-set = utf8mb4#port=3307[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4max_connections =500datadir=/home/mysql1811/datasocket=/home/mysql1811/mysql.sockuser=mysqlpid-file=/home/mysql1811/mysql.pidport=3307server-id=1811  #从库服务器 ID,注意服务器 ID 不能重复replicate-do-db=shantoo   #需要做复制的数据库名,如果复制多个数据库,重复设置这个选项即可replicate-do-db=boluofanreplicate-do-db=blf_bopsslave-skip-errors=1032,1062,126,1114,1146,1048,1396  #自动跳过的错误coderead-only # slave can only read.# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0slow-query-log-file = /home/mysql1811/logs/slow_query.logslow-query-log = 1long_query_time =1[mysqld_safe]log-error=/home/mysql1811/logs/error.log


启动 MySQL 服务

service mysql1811 start


更改 root 用户密码
打开数据库
/usr/local/mysql1811/bin/mysql -uroot

use mysql;update user set password=password('admin') where user='root';FLUSH PRIVILEGES;
delete from mysql.user where password = '';





0 0
原创粉丝点击