MariaDB配置、集群

MariaDB在centos 7.3的安装,配置和集群搭配

阿里云最新选配系统中,只有centos7.3可选,因此,基于centos 7的MariaDB的安装,配置。。。

全部删除MySQL/MariaDB

MySQL 已经不再包含在 CentOS 7 的源中,而改用了 MariaDB;

1.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:

[root@localhost ~]# rpm -qa | grep mariadb
mariadb-server-5.5.52-1.el7.x86_64
mariadb-libs-5.5.52-1.el7.x86_64

 如果存在,使用rpm -e --nodeps mariadb-*全部删除:

[root@localhost ~]# rpm -e mysql-*
错误:未安装软件包 mysql-* 

2.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:

 如果存在,使用yum remove mysql mysql-server mysql-libs compat-mysql51全部删除,这时候可能要下载一些依赖包;

再次使用rpm -qa|grep mariadb命令查看是否存在MariaDB,如有,重复执行上述删除即可。

3.开始新的安装, 创建MariaDB.repo文件

    vi /etc/yum.repos.d/MariaDB.repo

添加

[mariadb]
name = MariaDB
baseurl =  http://mirrors.ustc.edu.cn/mariadb/yum/10.2/centos7-amd64 
gpgkey=http://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB 
gpgcheck=1

系统及版本选择:https://downloads.mariadb.org/mariadb/repositories/#mirror=tuna

4.运行安装命令安装MariaDB

yum -y install MariaDB-server MariaDB-client

等待出现complete 则安装完成

一些配置:

systemctl start mariadb #启动服务
systemctl enable mariadb #设置开机启动
systemctl restart mariadb #重新启动
systemctl stop mariadb.service #停止MariaDB

5.登录到数据库

  用mysql -uroot命令登录到MariaDB,此时root账户的密码为空。

6.进行MariaDB的相关简单配置,使用mysql_secure_installation命令进行配置。

mysql_secure_installation

首先是设置密码,会提示先输入密码

Enter current password for root (enter for none):<–初次运行直接回车

设置密码

Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码

其他配置

Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车

Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车,

Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车

Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车

初始化MariaDB完成,接下来测试登录

mysql -uroot -p123456

7.配置MariaDB的字符集

  查看/etc/my.cnf文件内容,其中包含一句!includedir /etc/my.cnf.d 说明在该配置文件中引入/etc/my.cnf.d 目录下的配置文件。

  1)使用vi server.cnf命令编辑server.cnf文件,在[mysqld]标签下添加

        init_connect='SET collation_connection = utf8_unicode_ci' 
        init_connect='SET NAMES utf8' 
        character-set-server=utf8 
        collation-server=utf8_unicode_ci 
        skip-character-set-client-handshake

如果/etc/my.cnf.d 目录下无server.cnf文件,则直接在/etc/my.cnf文件的[mysqld]标签下添加以上内容。

  2)文件/etc/my.cnf.d/client.cnf

        vi /etc/my.cnf.d/client.cnf

在[client]中添加

        default-character-set=utf8

  3)文件/etc/my.cnf.d/mysql-clients.cnf

        vi /etc/my.cnf.d/mysql-clients.cnf

在[mysql]中添加

        default-character-set=utf8

全部配置完成,重启mariadb

        systemctl restart mariadb

之后进入MariaDB查看字符集

        mysql> show variables like "%character%";show variables like "%collation%";

显示为

        +--------------------------+----------------------------+  
        | Variable_name            | Value                      |  
        +--------------------------+----------------------------+  
        | character_set_client     | utf8                      |  
        | character_set_connection | utf8                      |  
        | character_set_database  | utf8                      |  
        | character_set_filesystem | binary                    |  
        | character_set_results    | utf8                      |  
        | character_set_server    | utf8                      |  
        | character_set_system    | utf8                      |  
        | character_sets_dir      | /usr/share/mysql/charsets/ |  
        +--------------------------+----------------------------+  
        8 rows in set (0.00 sec)  
        
        +----------------------+-----------------+  
        | Variable_name        | Value          |  
        +----------------------+-----------------+  
        | collation_connection | utf8_unicode_ci |  
        | collation_database  | utf8_unicode_ci |  
        | collation_server    | utf8_unicode_ci |  
        +----------------------+-----------------+  
        3 rows in set (0.00 sec)  

字符集配置完成。

8.MariaDB集群的配置

http://blog.csdn.net/ns2250225/article/details/52003630

9.常见问题

1)启动mysql时出错:SST in progress, setting sleep higher. ERROR!

  • 确保本机已安装rsync:[root@localhost ~]# yum list|grep rsync
  • 确保已允许galera sst使用的端口4444、4567、4568通过防火墙并重启防火墙功能
  • 确保selinux已对端口4444开放权限:

          [root@localhost ~]# semanage port -a -t mysqld_port_t -p tcp 4444

2)查看galera集群状态时wsrep_connected和wsrep_ready的值均为OFF!

 打开/etc/my.cnf.d/wsrep.cnf文件,找到wsrep_cluster_address="gcomm://"这一行,检查前面是否有"#",如果有则删掉并重启mysql。

一些其他的附录

  • MariaDB同步复制

    第一节点:
    service mysql start --wsrep-new-cluster

    其它节点:
    service mysql start

    查看tomcat进程

    ps -ef|grep tomcat

  • 查看tomcat进程

    ps -ef|grep tomcat

  • 解压

    tar -zxvf apache-tomcat-7.0.57.tar.gz

  • 授权

    GRANT ALL PRIVILEGES ON . TO 'root'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION;

    flush privileges;

  • 查看是否加入集群

    show status like 'wsrep%';

  • 查看selinux是否关闭

    cat /etc/sysconfig/selinux

  • CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下

    1、直接关闭防火墙

    systemctl stop firewalld.service #停止firewall

    systemctl disable firewalld.service #禁止firewall开机启动

    2、设置 iptables service

    yum -y install iptables-services

    如果要修改防火墙配置,如增加防火墙端口3306

    vi /etc/sysconfig/iptables

    增加规则

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

    保存退出后

    systemctl restart iptables.service #重启防火墙使配置生效

    systemctl enable iptables.service #设置防火墙开机启动

    最后重启系统使设置生效即可。

  • yum安装MariaDB发现缺少了一个包

      yum clean all  
    
      重新换源、安装。。

参考一些思路:

//这个是centos6下MariaDB5.5配置,已经过期。。。
http://www.cnblogs.com/river2005/p/6813618.html

http://www.cnblogs.com/liujiduo/p/5066803.html

转载于:https://www.cnblogs.com/esileme/p/7604486.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值