mysql主从热备份_MySQL
环境:
主机:192.168.53.81
从机:192.168.53.82
一、查看主库mysql版本号,从库的mysql版本号要和主库一致。
[root@53-81 ~]# /usr/local/mysql/bin/mysql -V
/usr/local/mysql/bin/mysql Ver 14.14 Distrib 5.1.60, for unknown-linux-gnu(x86_64) using readline 5.1
创建测试表
# mysql -p123456
#use test;
mysql> create table t2 (id int(4));
mysql> insert into t2 values (1);
二、从库安装相同版本的mysql数据库。
1,下载相同版本的mysql源码包。
2,查看主机mysql编译参数。grep configure /usr/local/mysql/bin/mysqlbug
3,开始安装。可以写成批处理文件。
tar zxvf mysql-5.1.60.tar.gz
cd mysql-5.1.60
./configure '--prefix=/usr/local/mysql' '--with-extra-charsets=complex''--enable-assembler' '--with-mysqld-ldflags=-all-static' '--with-charset=utf8''--enable-thread-safe-client' '--with-big-tables' '--with-readline''--with-ssl' '--with-embedded-server' '--enable-local-infile'
make&& make install
cd ../
groupaddmysql
useradd-s /sbin/nologin -M -g mysql mysql
cp/usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
sed -i's/skip-locking/skip-external-locking/g' /etc/my.cnf
/usr/local/mysql/bin/mysql_install_db--user=mysql
chown -Rmysql /usr/local/mysql/var
chgrp -Rmysql /usr/local/mysql/.
cp/usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql
chmod 755/etc/init.d/mysql
cat >/etc/ld.so.conf.d/mysql.conf
/usr/local/mysql/lib/mysql
/usr/local/lib
EOF
ldconfig
ln -s/usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s/usr/local/mysql/include/mysql /usr/include/mysql
/etc/init.d/mysqlstart
ln -s/usr/local/mysql/bin/mysql /usr/bin/mysql
ln -s/usr/local/mysql/bin/mysqldump /usr/bin/mysqldump
ln -s/usr/local/mysql/bin/myisamchk /usr/bin/myisamchk
/usr/local/mysql/bin/mysqladmin-u root password 123456
三、主库创建/etc/my.cnf,修改里边的键值增加
server-id=1
log-bin=binlog_name
重启数据库,增加日志功能
四、主库增加用户,用于从库读取主库日志。
mysql> grant all on *.* toslave@'192.168.53.82' identified by 'slavekjh-123';
五、从库的操作
1,从库连接主库进行测试。
# mysql -u slave -pslavekjh-123 -h192.168.53.81
如果连接成功说明主库配置成功
2,停从库,
/etc/init.d/mysql stop
修改从库/etc/my.cnf,增加选项:
server-id=2
skip-slave-start
replicate-do-db=test #需要同步的数据库
replicate-do-db=test2 #需要同步的数据库
replicate-do-db=email #需要同步的数据库
replicate-do-db=ttreport #需要同步的数据库
3,启动从库,进行主从库数据同步
/etc/init.d/mysql start
六,同步数据。
1,主库锁定数据库
mysql> flush tables with read lock;
测试是否锁定
mysql> use test;
mysql> insert into t2 values (1);
ERROR 1223 (HY000): Can't execute the querybecause you have a conflicting read lock
查看主库状态
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position |Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000033 | 74195486 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
2,从库开始同步
## mysql -p123456
mysql> change master tomaster_host='192.168.53.81',master_user='slave',master_password='slavekjh-123',master_port=3306,master_log_file='mysql-bin.000033',master_log_pos=74195486;
开始同步主库
mysql>load data from master;
开始同步
slave start ;
查看同步状态
show slave status/G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
删除/etc/my.cnf
skip-slave-start
3,主库操作
解锁:
unlock tables;
插入数据看是否同步。
mysql> use test;
mysql> insert into t2 values (123456);
4,从库查看是否同步成功
mysql> use test;
Database changed
mysql> select * from t2;
完成===============================================================
测试
一,从库停止一段时间后,再启动是否能自动同步?是的。
二,主库停止一段时间后,主库启动,从库能否自动同步?是的。
问题1:同步主库时出现Net error reading from master 报错
原因:load table from master只支持myisam表,如果试图载入一个非MyISAM表,会导致以下错误。如果抛出这个错误,确保所有在主表是MyISAM。如果是这样,请重试运行的SQL语句。在InnoDB表或其他引擎的数据库的情况下,使用mysqldump从初始化。
解决方法:

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Pengimbasan jadual penuh mungkin lebih cepat dalam MySQL daripada menggunakan indeks. Kes -kes tertentu termasuk: 1) jumlah data adalah kecil; 2) apabila pertanyaan mengembalikan sejumlah besar data; 3) Apabila lajur indeks tidak selektif; 4) Apabila pertanyaan kompleks. Dengan menganalisis rancangan pertanyaan, mengoptimumkan indeks, mengelakkan lebih banyak indeks dan tetap mengekalkan jadual, anda boleh membuat pilihan terbaik dalam aplikasi praktikal.

Keupayaan carian teks penuh InnoDB sangat kuat, yang dapat meningkatkan kecekapan pertanyaan pangkalan data dan keupayaan untuk memproses sejumlah besar data teks. 1) InnoDB melaksanakan carian teks penuh melalui pengindeksan terbalik, menyokong pertanyaan carian asas dan maju. 2) Gunakan perlawanan dan terhadap kata kunci untuk mencari, menyokong mod boolean dan carian frasa. 3) Kaedah pengoptimuman termasuk menggunakan teknologi segmentasi perkataan, membina semula indeks dan menyesuaikan saiz cache untuk meningkatkan prestasi dan ketepatan.

Ya, MySQL boleh dipasang pada Windows 7, dan walaupun Microsoft telah berhenti menyokong Windows 7, MySQL masih serasi dengannya. Walau bagaimanapun, perkara berikut harus diperhatikan semasa proses pemasangan: Muat turun pemasang MySQL untuk Windows. Pilih versi MySQL yang sesuai (komuniti atau perusahaan). Pilih direktori pemasangan yang sesuai dan set aksara semasa proses pemasangan. Tetapkan kata laluan pengguna root dan simpan dengan betul. Sambung ke pangkalan data untuk ujian. Perhatikan isu keserasian dan keselamatan pada Windows 7, dan disyorkan untuk menaik taraf ke sistem operasi yang disokong.

Perbezaan antara indeks clustered dan indeks bukan cluster adalah: 1. Klustered Index menyimpan baris data dalam struktur indeks, yang sesuai untuk pertanyaan oleh kunci dan julat utama. 2. Indeks Indeks yang tidak berkumpul indeks nilai utama dan penunjuk kepada baris data, dan sesuai untuk pertanyaan lajur utama bukan utama.

MySQL adalah sistem pengurusan pangkalan data sumber terbuka. 1) Buat Pangkalan Data dan Jadual: Gunakan perintah Createdatabase dan Createtable. 2) Operasi Asas: Masukkan, Kemas kini, Padam dan Pilih. 3) Operasi lanjutan: Sertai, subquery dan pemprosesan transaksi. 4) Kemahiran Debugging: Semak sintaks, jenis data dan keizinan. 5) Cadangan Pengoptimuman: Gunakan indeks, elakkan pilih* dan gunakan transaksi.

Dalam pangkalan data MySQL, hubungan antara pengguna dan pangkalan data ditakrifkan oleh kebenaran dan jadual. Pengguna mempunyai nama pengguna dan kata laluan untuk mengakses pangkalan data. Kebenaran diberikan melalui perintah geran, sementara jadual dibuat oleh perintah membuat jadual. Untuk mewujudkan hubungan antara pengguna dan pangkalan data, anda perlu membuat pangkalan data, membuat pengguna, dan kemudian memberikan kebenaran.

MySQL dan Mariadb boleh wujud bersama, tetapi perlu dikonfigurasikan dengan berhati -hati. Kuncinya adalah untuk memperuntukkan nombor port dan direktori data yang berbeza untuk setiap pangkalan data, dan menyesuaikan parameter seperti peruntukan memori dan saiz cache. Konfigurasi sambungan, konfigurasi aplikasi, dan perbezaan versi juga perlu dipertimbangkan dan perlu diuji dengan teliti dan dirancang untuk mengelakkan perangkap. Menjalankan dua pangkalan data secara serentak boleh menyebabkan masalah prestasi dalam situasi di mana sumber terhad.

Penyederhanaan Integrasi Data: AmazonRDSMYSQL dan Integrasi Data Integrasi Zero ETL Redshift adalah di tengah-tengah organisasi yang didorong oleh data. Proses tradisional ETL (ekstrak, menukar, beban) adalah kompleks dan memakan masa, terutamanya apabila mengintegrasikan pangkalan data (seperti Amazonrdsmysql) dengan gudang data (seperti redshift). Walau bagaimanapun, AWS menyediakan penyelesaian integrasi ETL sifar yang telah mengubah keadaan ini sepenuhnya, menyediakan penyelesaian yang mudah, hampir-sebenar untuk penghijrahan data dari RDSMYSQL ke redshift. Artikel ini akan menyelam ke integrasi RDSMYSQL Zero ETL dengan redshift, menjelaskan bagaimana ia berfungsi dan kelebihan yang dibawa kepada jurutera dan pemaju data.
