1.下载软件包

下载链接:https://dev.mysql.com/downloads/mysql/5.6.html#downloads

centos6--MySQL-5.6.35-1.el6.x86_64.rpm-bundle.tar

centos7--MySQL-5.6.35-1.el7.x86_64.rpm-bundle.tar

选择对应版本,否则会出现依赖不满足问题。

2.解压安装数据库

说明:以-Uvh安装是为了保险起见;测试发现依以下顺序安装是没有问题的,但如果出现某个包无法安装则先跳过放最后安装。

tar -xf MySQL-5.6.36-1.el6.x86_64.rpm-bundle.tar

rpm -Uvh MySQL-client-5.6.36-1.el6.x86_64.rpm
rpm -Uvh MySQL-shared-5.6.36-1.el6.x86_64.rpm
rpm -Uvh MySQL-devel-5.6.36-1.el6.x86_64.rpm
rpm -Uvh MySQL-shared-compat-5.6.36-1.el6.x86_64.rpm
rpm -Uvh MySQL-embedded-5.6.36-1.el6.x86_64.rpm
rpm -Uvh MySQL-test-5.6.36-1.el6.x86_64.rpm
rpm -Uvh MySQL-server-5.6.36-1.el6.x86_64.rpm

附server包安装后的提示:

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands: /usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h ls password 'new-password' Alternatively you can run:
/usr/bin/mysql_secure_installation which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

这步安装和yum install mysql mysql-server mysql-devel是等效的。

3.配置my.cnf文件

mkdir /etc/my.cnf.d

cat >/etc/my.cnf<<EOF
[mysqld]
datadir=/mysql/data
socket=/mysql/data/mysql.sock
user=mysql
symbolic-links= [mysqld_safe]
log-error=/mysql/log/mysql.log
pid-file=/mysql/log/mysql.pid # include all files from the config directory
!includedir /etc/my.cnf.d
EOF

4.配置password文件

说明:如所知的一样mysql的配置文件就是my.cnf,之所以还有下边这几个文件是因为my.cnf中的!includedir语句。

cat > /etc/my.cnf.d/password.cnfx<<EOF
[client]
user=root
password=abcd1234
EOF

5.配置客户端

cat >/etc/my.cnf.d/client.cnf <<EOF
[client]
socket=/mysql/data/mysql.sock
EOF

6.配置服务端

说明:如果要配置主备则不同主机下边的server_id不能相同;一些内存参数的大小可能需要根据机器情况进行修改

cat >/etc/my.cnf.d/server.cnf <<EOF
[mysqld]
port=3306
bind-address=0.0.0.0
default_storage_engine=innodb
symbolic_links=0
skip_name_resolve
skip_external_locking
lower_case_table_names=1
character_set_server=utf8
init_connect='SET NAMES utf8'
collation_server=utf8_general_ci
transaction_isolation='read-committed' # Avoid Warning
explicit_defaults_for_timestamp=true server_id=1 binlog_format=row
log_bin=mysql-bin
relay_log=relay-bin
skip_slave_start
expire_logs_days=3
max_binlog_size=1G
binlog_cache_size=64M
max_binlog_cache_size=128M
log-bin-trust-function-creators=1
back_log=600
max_connections=5000
max_user_connections=4000
max_connect_errors=6000
connect_timeout=60
query_cache_type=1
query_cache_size=256M
query_cache_limit=32M #query_cache_min_res_unit=2k
table_open_cache=4096
sort_buffer_size=32M
join_buffer_size=32M
thread_cache_size=300
long_query_time=2
key_buffer_size=256M
read_buffer_size=4M
read_rnd_buffer_size=16M
tmp_table_size=256M
max_heap_table_size=1G
max_allowed_packet=32M
bulk_insert_buffer_size=64M
innodb_buffer_pool_size=6G
innodb_log_file_size=512M
innodb_log_buffer_size=16M
innodb_log_files_in_group=2
innodb_max_dirty_pages_pct=90
innodb_lock_wait_timeout=120
innodb_file_per_table=1
innodb_file_io_threads=4
innodb_read_io_threads=8
innodb_write_io_threads=8
innodb_thread_concurrency=4
innodb_flush_log_at_trx_commit=2 EOF

 7.相应修改启动文件中相应的datadir等项的值

/etc/init.d/mysqld中修改datadir/errlogfile/mypidfile三项的值(不同版本赋值形式可能不一样)

/usr/bin/mysqld_safe中修改DATADIR的值(此操作似乎只是CentOS需要)

8.在mysql家目录下创建基本目录

mkdir /mysql
cd /mysql
mkdir adm
mkdir data
mkdir log
ln -s /etc/my.cnf.d/ /mysql/conf
ln -s /var/data/mysql/data/mysql.sock /mysql/data/mysql.sock

9.将配置文件赋权给mysql用户

chown -R mysql:mysql /mysql
chown mysql:mysql /etc/my.cnf
chown -R mysql:mysql /etc/my.cnf.d

10.配置mysql可sudo

cat >/etc/sudoers.d/mysql <<EOF
mysql ALL=NOPASSWD: /sbin/service mysql *
EOF

11.安装数据库

说明:

在最后一个命令中要求的root初始密码在/root/.mysql_secret文件中

如果是5.1等旧版本root为空密码要求输入密码时直接回车即可

在Set root password和Reload privilege tables选择Y将密码修改为为password.cnf中配置的密码。

setenforce 0               #关闭selinux,不然可能service无法启动mysql(mysqld_safe可以)
mysql_install_db #依配置文件初始化数据库data,并创建系统表
service mysql start #启动mysql
ln -s /mysql/data/mysql.sock /var/lib/mysql/mysql.sock #mysql_secure_installation中的sock文件位置未修改所以要创软链接包过去
mysql_secure_installation #增删用户和修改密码等

12.将password文件名字改.cnf以使配置生效

mv /etc/my.cnf.d/password.cnfx /etc/my.cnf.d/password.cnf

到此单个数据库的安装已经安装完成启动后即可修用password文件中的用户名密码登录。

其实由于我们在password.cnf中设了用户名密码所以直接执行mysql命令即可登录,mysql会自动使用password.cnf中的用户名和密码去登录。

如果配置主从,则主从都按以上步骤完成安装后继续执行以下步骤。

13.安装半同步组件

登录数据库后都执行:

INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';(主)

INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';(从)

SHOW PLUGINS;

14.创建用于同步的REPLICATION用户

grant replication slave, replication client on *.* to 'repl'@'91.2.9.21' identified by 'rEp^1@3#';(主)

grant replication slave, replication client on *.* to 'repl'@'91.2.9.22' identified by 'rEp^1@3#';(从)

flush privileges;

select * from mysql.user\G;

15.主库查看同步信息

 show master status \G;

16.从库指向主库

CHANGE MASTER TO MASTER_HOST='192.168.220.136',

-> MASTER_USER='ls',--之前在主中添加的用以同步的用户      

-> MASTER_PASSWORD='ls',--之前添加的用户的密码       

-> MASTER_LOG_FILE='mysql-bin.000001',--值为主中查询到的File

-> MASTER_LOG_POS=; --值为从主中查询到的Position

17.从库启动slave

start slave;

show slave status\G;

18.启动半同步

动态修改(即登录数据库后执行,主备都要):

set global rpl_semi_sync_master_enabled =;(主)

set global rpl_semi_sync_master_timeout = ;(主)

set global rpl_semi_sync_slave_enabled =;(从)

静态修改(即在6中的server.cnf文件中加入,主从都要):

rpl_semi_sync_master_enabled=

rpl_semi_sync_slave_enabled=

rpl_semi_sync_master_timeout=

19.设置从库只读

即在从库的server.cnf中再加:

read_only=

20.从查看是否成功启动同步

show slave status \G;

如果Slave_IO_Running和Slave_SQL_Running的值为yes表示启动成功

启动报错: log file ./ib_logfile0 is of different size 0 5242880 bytes InnoDB: than specified in the .cnf file 0 536870912 bytes!

find / -name ib_logfile0                   #定位文件位置
mv ib_logfile0 ib_logfile0.bak
mv ib_logfile1 ib_logfile1.bak
service mysqld start #再次启动即可

参考:http://www.cnblogs.com/sysk/p/5801934.html

MySQL安装教程(mysql5.6_bundle)的更多相关文章

  1. Windows之MySQL安装教程

    MySQL安装说明 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,My ...

  2. windowns环境下mysql 安装教程

    windowns环境下mysql 安装教程 一:这里以绿色版安装为例(解压就可以使用) 下载地址: 下载页面:https://dev.mysql.com/downloads/mysql/  2:点击 ...

  3. mysql安装教程,mysql安装配置教程

    MySQL的安装教程 一.MYSQL的安装 首先登入官网下载mysql的安装包,官网地址:https://dev.mysql.com/downloads/mysql/ 一般下载这个就好,现在的最新版本 ...

  4. CentOS下Mysql安装教程

    CentOS下Mysql安装教程 本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个 ...

  5. MySql安装教程

    一.MYSQL的安装 1.打开下载的mysql安装文件mysql-5.0.27-win32.zip,双击解压缩,运行“setup.exe”. 2.选择安装类型,有“Typical(默认)”.“Comp ...

  6. MySQL安装教程图解

    核心提示:下面的是MySQL安装的图解,用的可执行文件安装的,详细说明了一下! 下面的是MySQL安装的图解,用的可执行文件安装的,详细说明了一下! MySQL下载地址 打开下载的mysql安装文件m ...

  7. Docker系列之MySQL安装教程

    Docker系列之MySQL安装教程 有了前面的基础教程Docker系列之常用命令操作手册之后,本博客记录一篇mysql的安装教程 mysql镜像查询命令 docker search mysql 几个 ...

  8. 2021 MySQL安装教程(最新教程)- 含网盘下载

    大家好,我是 我玩亚索我会C.最近电脑重装系统了,然后就想着装个MySQL,由于很久没装过了,于是上网搜索了教程,但是发现现在MySQL安装和之前的不一样了,网上都是旧版的安装教程,所以我就做一篇新版 ...

  9. mysql 安装教程(详细说明)

    如果你装过,一定要先卸载干净,并且重启重新装.卸载教程(保证成功)https://www.cnblogs.com/qzhc/p/11354678.html 大家都知道MySQL是一款中.小型关系型数据 ...

  10. mySql 安装教程

    看了好久别人的文章,今天就开始自己写第一篇.希望给别人能提供帮助,也可以方便自己查阅. 前两天自己安装了mysql,感觉是比oracle好装多了. mysql安装有两种方式,一种是安装包安装方式,一种 ...

随机推荐

  1. 小米MAX开发者选项 以及如何连接MAC开发RN

    打开开发者选项:设置--我的设备---全部参数-- 多次点击MiUI版本 打开开发者选项 然后返回到设置的主页面里面的更多设置就可以看到开发者选项了 在开发者选项中打开 USB调试/USB安装 将启动 ...

  2. 小tip: margin:auto实现绝对定位元素的水平垂直居中

    转载自:http://www.zhangxinxu.com/wordpress/?p=3794 一.绝对定位元素的居中实现 如果要问如何CSS实现绝对定位元素的居中效果,很多人心里已经有答案了. 兼容 ...

  3. 踩坑记录:ubuntu下,http代理无法修改的问题

    事情经过: 今天在ubuntu下使用http代理的时候,碰到一个奇怪的现象.就是在当前shell窗口下,输入“env  | grep proxy”,显示的http_proxy一直都存在,即使我修改了本 ...

  4. 【转】构造自己的DIB类

    ZC: 搜索"DIB_HEADER_MARKER"时,看到的这个文章 http://blog.csdn.net/yyyuhan/article/details/2026652   ...

  5. nodejs + ts 配置

    参考:https://github.com/nestjs/typescript-starter 和 How to get auto restart and breakpoint support wit ...

  6. Qt5数据库

     对于习惯使用SQL语法的用户,QSqlQuery类提供了直接执行SQL语句并处理返回结果的方法.对于习惯使用较高层数据库接口避免使用SQL语句的用户,QSqlTableModel类和QSqlRela ...

  7. Qt5标准文件对话框类

    getOpenFileName()函数返回用户选择的文件名,其函数形式如下: QString QFileDialog::getOpenFileName(QWidget *parent = Q_NULL ...

  8. git分支错误提交导致代码丢失--窗口提示HEAD detached错误

    今天开发时git 检出分支到本地时操作错误,导致在一个临时分支上开发,且把代码提交了,结果代码未提交到任何分支,提交时还报了个错: HEAD detached at 4d927fa4 后来把代码重新检 ...

  9. Python splinter 环境搭建

    今天无意间看到了splinter. Splinter是一个使用Python开发的开源Web应用测试工具.它可以帮你实现自动浏览站点和与其进行交互. Splinter对已有的自动化工具(如:Seleni ...

  10. dataway_代码规范

    无论何时无论何地,只要写代码,请遵从这样的规范. ----------------------------------------------------------------- css代码规范. ...