极速手机网

LINUX关于MYSQL镜像说数据库的建立教程

大家好,小编是个电脑软件控,

MySQL 版别:4.1

环境介绍:主库 192.168.0.205 从库 192.168.0.206

LINUX关于MYSQL镜像说数据库的建立教程

LINUX关于MYSQL镜像说数据库的建立教程图1

1、主库创立/etc/my.cnf,修正[mysqld]里边的键值打开 master项中

server-id=1

log-bin

2、主库添加用户,用于从库读取主库日志。

grant replication slave,reload,super on *.* to ‘slave’@‘192.168.0.206’ identified by ‘123456’

3、从库连接主库进行测验。

/opt/mysql/bin/mysql -u slave -p -h 192.168.0.205

4、停从库,修正从库/etc/my.cnf,添加选项:

[mysqld]

server-id=2

master-host=192.168.0.205

master-user=slave

master-password=123456

5、启动从库,进行主从库数据同步

/opt/mysql/share/mysql/mysql start

/opt/mysql/bin/mysql -u root -p

mysql>load data from master;

阐明:这一步也可以用数据库倒入或许直接目录考过来。

6、进行测验:

主库创立表,

mysql>create database sampdb;

myql>create table new (name char(20),phone char(20));

mysql>insert into new (‘abc,’0532555555‘);

打从库,观察:

/opt/mysql/bin/mysql -u root -p

mysql>show database;

mysql

sampdb

test

mysql>use sampdb;

mysql>show tables;

new

阐明主从数据库创立成功。

7、主从数据库相关指令:

slave stop; slave start ; 开端中止从数据库。

show slave status\\\\G; 显现从库正读取哪一个主数据库二进制日志。

LINUX关于MYSQL镜像说数据库的建立教程

LINUX关于MYSQL镜像说数据库的建立教程图2

purge master logs to ‘binlog.000004’; 此指令非常当心,删除主数据库没用的二进制日志文件。假如误删除,那么从库就没有办法自动更新了。

change master; 从服务器上修正参数使用。

前不久要在linux下每天自动备份mysql数据库。

版本

Linux: redhat enterprise linux 5

mysql: 5.1

在网上找了找,要写个shell命令执行mysqldump然后保存文件

1. 创建shell脚本文件

引用

filename=`date +%Y%m%d_%H:%M`

mysqldump --opt database -u username -h host -ppassword / gzip > /var/mysqlbackup/$filename.gz

然后把该文件放到/etc/cron.daily/(每天执行目录)

/et/cron.hourly/ (每小时)

/etc/cron.monthly/ (每月)

/etc/cron.weekly/ (每周)

然后在编辑/etc/crontab文件,改变/etc/cron.daily前面的时间参数(默认为4点)

引用

LINUX关于MYSQL镜像说数据库的建立教程

LINUX关于MYSQL镜像说数据库的建立教程图3

前面的时间格式为“M H D m d cmd”。其中,M代表分钟(0~59),H代表小时(0~23),D代表天(1~31),m代表月(1~12),d代表一星期内的天(0~6,0为星期天)。*表示任何.例如01 * * * * 表示每小时的01分执行

如果不是redhat要编辑/etc/crontab文件

Java代码

gedit /etc/crontab

在最后加入

引用

01 5 * * * root /opt/autobackup(上面shell脚本文件)

每天5点运行脚本,也可以修改5为其他指定时间

2. 为脚本增加权限

Java代码

# chmod +x /opt/autobackup(面shell脚本文件)

3. 重启crontab

Java代码

# /etc/rc.d/init.d/crond restart

到这为止看似OK挺easy可是执行后也没有报错

发现/var/mysqlbackup/(备份目录)下有一个叫..%Y%m%d_%H:%M.gz的文件

看样是日期文件名没有生效。最后又搞了半天,也查了半天就是不知道怎么回事

最后问了一个朋友他让我把shell脚本发过去,过了一会。才知道是因为

引用

filename=`date +%Y%m%d_%H:%M`

这个\" \' \"应该是Tab键上的那点,而我打的是单引号。我疯

相关下载

相关文章

相关软件

大家都在找