zoukankan      html  css  js  c++  java
  • Linux下面安装和配置MySQL

    如何从MySQL官方Yum仓库安装MySQL5.6

    首先我们需要从MySQL开发者网站下载Yum仓库文件

    Download MySQL Yum Repository

    从上面的连接地址下载:Red Hat Enterprise Linux 6 / Oracle Linux 6 (Architecture Independent), RPM Package ,点击下载

    下载完成后将Yum库导入到你的本地:

    sudo yum localinstall mysql-community-release-el6-5.noarch.rpm -y

    安装MYSQL官方教程:http://dev.mysql.com/doc/refman/5.6/en/linux-installation-yum-repo.html

    mysql-community-release-el6-5.noarch.rpm这个Yum库包含了MySQL Server,MySQL工作台管理工具以及ODBC驱动,现在可以通过下面的命令简单地安装MySQLServer:

    sudo yum install mysql-community-server -y

    启动MYSQL服务:

    service mysqld start

     

    chkconfig --list
    chkconfig mysqld on --设置服务自启动
    chkconfig --list

     如果需要修改MySQL数据存放位置,需要先停止mysql服务

    mv /var/lib/mysql /data/mysql  移动默认数据库的存放位置
    ln -s /data/mysql /var/lib/mysql  创建软连接
    ll /var/lib/mysql 查看软连接

    然后修改/etc/my.cnf文件,在启动mysql服务。如果启动服务器,日志里报错显示:“/usr/sbin/mysqld: Can't change dir to '/data/mysql/' (Errcode: 13)”

    那么应该是和selinux有关,

    解决办法:

    vi /etc/selinux/config
    修改selinux=disabled或者permissive

      

    setenforce 0 --临时关闭selinux模式或者重起linux服务器,然后就OK了。

    设置防火墙:

    iptables -I INPUT -p tcp --dport 3306 -j ACCEPT  
    service iptables save
    service iptables restart 
    cat /etc/sysconfig/iptables

     如果启动出:[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist错误

    需要重新初始化user表

    mysql_install_db --user=mysql 

    service mysqld start --启动mysql

    设置MYSQL主从

    0、my.cnf

    server_id=n   --设置唯一标识

    1、登陆主库并创建一个用户‘repl’,并允许其他Slave服务器可以通过远程访问Master,通过该用户读取二进制日志,实现数据同步。

    mysql -P13306 -u root -p  //登陆MySQL
    create user repl;  //创建新用户
    GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.7.%' IDENTIFIED BY 'mysql'; //repl用户必须具有REPLICATION SLAVE权限,除此之外没有必要添加不必要的权限,密码为mysql。说明一下192.168.7.%,这个配置是指明repl用户所在服务器,这里%是通配符,表示192.168.7.0-192.168.7.255的Server都可以以repl用户登陆主服务器。当然你也可以指定固定Ip。

    MySQL下查看用户和建立用户

    use mysql;
    select host,user from mysql.user;

    2、查看主库日志:

    SHOW MASTER STATUS;

     3、登录从库

    mysql -P13306 -u root  --登录从库
    change master to master_host='192.168.7.245', //Master 服务器Ip
    master_port=13306,
    master_user='repl',
    master_password='mysql', 
    master_log_file='mysqlmaster-bin.000006',          //Master服务器产生的日志
    master_log_pos=415;

    4、启动从库

    start slave;  --启动从库
    stop slave; --停止从库

    5、查看从库日志

    SHOW SLAVE STATUSG;

    注意查看:
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    以上这两个参数的值为Yes,即说明配置成功!

    转:http://www.cnblogs.com/alvin_xp/p/4162249.html

    http://www.cnblogs.com/cchun/p/3712637.html

    数据搬家

    1.执行还原之前阻止新数据写入,例如:停止洛杉矶的atlas服务(省略)

    2,洛杉矶老主库上,执行备份脚本(省略)

    3,纽约新主库执行:还原洛杉矶老库数据库(省略)

    4,搬家脚本

    #mysql -uroot -p端口
    mysql>system gdb -p $(pidof mysqld) -ex "set opt_log_slave_updates=1" -batch   #让纽约的主库开始同步洛杉矶主库的数据计入relaylog,便于纽约其他的从库能够复制新主库的binlog
    mysql>show variables like 'log_slave_updates'; 

    5.在纽约新库上创建与老库相同的的复制用户,例如:uid:slave,pwd:123456

    6.到纽约备份文件里面看日志点,备份文件是从洛杉矶copy到纽约机器的

    #head -30 mysql_****_website.sql 查看后备份的数据库文件

    7.等待执行完备份后,在新主库上执行change master to 洛杉矶老主库

    mysql>change master to master_host='洛杉矶老主库的IP地址', master_user='slave',master_password='123456',master_port=端口号,master_log_file='mysqlmaster-bin.000996',master_log_pos=48047;
    mysql>start slave;
    mysql>show slave statusG

    查看数据是否到新的数据库了

    mysql>show processlist;
    mysql>set global general_log=on;   #开启全局日志记录
    #tail -f /data/mysqldata/数据库-master.log
    mysql>set global general_log=off;  #关闭全局日志记录

    8.在新主库上停掉复制

    mysql>stop slave; #断掉slave线程
    mysql>reset slave all; # 清空主从配置信息

    9.新主库执行:system gdb -p $(pidof mysqld) -ex "set opt_log_slave_updates=0" -batch 关闭该参数

    mysql>system gdb -p $(pidof mysqld) -ex "set opt_log_slave_updates=0" -batch
    mysql>show variables like 'log_slave_updates';

    数据搬家完毕

  • 相关阅读:
    "无法在证书存储区中找到清单签名证书"的解决办法
    ASP.net从服务器端向客户端弹出alert对话框,但不使页面变成白板
    C#日期相关操作
    在Lucene.net实现自定义排序
    做技术二十多年 突然明白的道理
    .net中sql防止注入式攻击
    开发可统计单词个数的Android驱动程序(1)
    乐博Android客户端(新浪微博)1.01发布,欢迎各位童鞋试用
    百度面试题:求绝对值最小的数
    赶紧升级到Android 2.3.4,体验最新的Android技术
  • 原文地址:https://www.cnblogs.com/qiyebao/p/4766818.html
Copyright © 2011-2022 走看看