搜尋
首頁後端開發php教程怎麼使 Mysql 資料同步_PHP教程
怎麼使 Mysql 資料同步_PHP教程Jul 21, 2016 pm 04:09 PM
linuxmysql主機同步怎麼數據系統


怎麼使 Mysql 資料同步 先假設有主機 A 和 B ( Linux 系統),主機 A 的 IP 分別是 1.2.3.4 (當然,也可以是動態的),主機 B 的 IP 是 5.6.7.8 。兩個主機都裝上了 PHP Mysql ,現在操作的是主機 A 上的資料,如果另外一個主機 B 想跟 A 的資料同步,該怎麼做呢?  

OK,我們現在就動手。

首先,如果要想兩個主機間的資料同步,一種方法就是主機A 往主機B 送資料,另外一種主法就是主機B 到主機A 上拿資料,因為A 的IP是動態的(假設),所以我們就得從主機A 往主機B 送資料。  

在主機 B 上建立一個 Mysql 帳號。  
# GRANT ALL ON test.* TO user@% IDENTIFIED BY "password"; //建立使用者 user,可以從任何機器存取到主機 B 上的 test 資料庫。  

如果這裡顯示錯誤,先把 % 改為一個 IP ,然後再利用 phpMyAdmin 把 IP 改為 % ,測試無誤後就可以寫 php 程式。

  
$link=mysql_pconnect("localhost","user","password");  
mysql_pconnect("localhost","user","password"); //連接本機(主機A)的資料庫  
mysql_select_db("test"); //選擇資料庫test  

$re=mysql_query("select * from table order by id desc"); 
$ num=mysql_numrows($re);  
if (!empty($num)) {  
$id=mysql_result($re,0,"id"); //取得本機table表的最大ID  
}  

mysql_close($link); //關閉與本機資料庫的連線  


$link=mysql_pconnect("5.6.7.8","test","test,"test"," ");  
mysql_pconnect("5.6.7.8","test","test"); //連接主機B的資料庫  
mysql_select_db("test"); //選擇資料庫test,此資料庫應與資料庫test,此資料庫應與主機A上test資料庫的結構一樣。
$re=mysql_query("select * from table order by id desc");  
$num=mysql_numrows($re);  
if (!empty($num)) { }  

if ($id>$remote_id) {  
$result_id=$id- $remote_id; //若主機A中table的最大ID大於主機B中table表的最大ID,說明兩個  
} 的資料不同  

mysql_close($link); //關閉主機B的資料庫連線  


$link=mysql_pconnect("localhost","user","password");  
mysql_pconnect("localhost","user","passpassword"); >mysql_select_db("test");  

if (empty($result_id)) $result_id=0;  
if (empty($remote_id)) $remote_id=0;如果主機B中的 //如果主機B中的 //如果主機B中的 //>如果主機B中的 // 如果主機B中的 //0; table的最大ID為空(裡面沒有資料),那麼就等0  

$re=mysql_query("select * from table limit $remote_id,$result_id"); //取出主機A中table表與主機B中table表裡不同的資料  
$num=mysql_numrows($re);  
if (!empty($num)) {  
for ($i=0;$i$test[$i]=mysql_result($re,$i,"test"); //把不同的資料放入陣列裡  
}  
}  
mysql_close ($link); //關閉主機A的資料庫連線  


$link=mysql_pconnect("5.6.7.8","user","password");  
mysql_pconnect("5.6. 7.8","user","pasword");  
mysql_select_db("test");  

for ($j=0;$j
mysql_query("insert into table (test) values('$test[$j]')");  

}  

mysql_close($link); //關閉主機B的資料庫連線  

?>  

這時就初步實現了A 主機和B 主機資料的同步,但現在還需要人手動每次去啟動這個程序,有沒有辦法把它當作一個腳本一樣的,放在crontab 裡面指定時間自動執行呢?

在安裝php 時會自動生一個叫php 的可執行文件,一般在/你安裝的php 目錄/bin 下面,不過較底的版本好像沒有,如果沒有這個文件,你就得升級你的php 。

#php -q test.php  

php 原本是應用在網頁應用的﹐因此它會送出HTML 的Header﹐但是在此我們是要將php 用作Shell Script﹐" -q" 就是表示不要送Header 的意思.  

最後編輯/etc/crontab 裡的文件,加上下面這句話。

0 0 * * * root /home/httpd/html/test //每晚零點執/home/httpd/html/test檔案(具體使用方法請查看cron的相關資料)  

OK,到這裡差不多就已完成Mysql 資料的同步了,如果各位還有興趣的話,可以想一個連編輯、刪除都能同步的更好的辦法。

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/314513.htmlTechArticle怎麼讓Mysql 資料同步先假設有主機A 和B ( Linux 系統),主機A 的IP 分別是1.2 .3.4 (當然,也可以是動態的),主機B 的IP 是5.6.7.8 。兩個主...
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何在技嘉主板上设置键盘启动功能 (技嘉主板启用键盘开机方式)如何在技嘉主板上设置键盘启动功能 (技嘉主板启用键盘开机方式)Dec 31, 2023 pm 05:15 PM

技嘉的主板怎么设置键盘开机首先,要支持键盘开机,一定是PS2键盘!!设置步骤如下:第一步:开机按Del或者F2进入bios,到bios的Advanced(高级)模式普通主板默认进入主板的EZ(简易)模式,需要按F7切换到高级模式,ROG系列主板默认进入bios的高级模式(我们用简体中文来示范)第二步:选择到——【高级】——【高级电源管理(APM)】第三步:找到选项【由PS2键盘唤醒】第四步:这个选项默认是Disabled(关闭)的,下拉之后可以看到三种不同的设置选择,分别是按【空格键】开机、按组

mysql怎么替换换行符mysql怎么替换换行符Apr 18, 2022 pm 03:14 PM

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

神舟炫龙m7e8s3如何启用独立显卡直连?神舟炫龙m7e8s3如何启用独立显卡直连?Jan 04, 2024 am 09:24 AM

神舟炫龙m7独显直连怎么开要开启神舟炫龙m7的独立显卡直连功能,您可以按照以下步骤进行操作:1.首先,确保您已经安装好了独立显卡的驱动程序。您可以前往神舟官方网站或独立显卡厂商官网下载并安装适合您显卡型号的最新驱动程序。2.在电脑桌面上,右键单击空白处,在弹出的菜单中选择“NVIDIA控制面板”(如果是AMD显卡,则选择“AMDRadeon设置”)。3.在控制面板中,找到“3D设置”或类似命名的选项,点击进入。4.在“3D设置”中,您需要找到“全局设置”或类似命名的选项。在这里,您可以指定使用独

如何辨别耐克鞋子的真假鞋盒(掌握一招轻松识别)如何辨别耐克鞋子的真假鞋盒(掌握一招轻松识别)Sep 02, 2024 pm 04:11 PM

耐克作为全球知名的运动品牌,其鞋子备受瞩目。然而,市场上也存在大量的假冒伪劣商品,其中就包括假冒的耐克鞋盒。辨别真假鞋盒对于保护消费者的权益至关重要。本文将为您提供一些简单而有效的方法,以帮助您辨别真假鞋盒。一:外包装标题通过观察耐克鞋盒的外包装,可以发现许多细微的差异。真正的耐克鞋盒通常具有高品质的纸质材料,手感光滑,且没有明显的刺激性气味。正品鞋盒上的字体和标志通常清晰、精细,并且没有模糊或颜色不协调的情况。二:LOGO烫金标题耐克鞋盒上的LOGO通常是烫金工艺,真品鞋盒上的烫金部分会呈现出

MySQL复制技术之异步复制和半同步复制MySQL复制技术之异步复制和半同步复制Apr 25, 2022 pm 07:21 PM

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

Win11如何回退版本?Win11如何回退版本?Jun 30, 2023 pm 05:21 PM

Win11怎么退版本?很多朋友在升级了win11后认为其不好用,那么大家可以选择退回之前的版本哦。那么你知道该如何操作嘛?很多用户都不知道,其实方法并不难,下面小编给大家带来退回Win10的方法分享,一起来学习吧。退回Win10的方法分享1、进入“设置”。2、选择“WindowsUpdate”,然后点击“恢复”。3、在“恢复选项”中选择“以前版本的Windows”,点击“返回”。4、选择原因,然后点击“下一步”。5、你将看到“检查更新”的通知,选择“不,谢谢”。6、阅读需要了解的内容,然后点击“

拯救者y7000p玩cf分辨率多少(拯救者y7000玩cf怎么调全屏)拯救者y7000p玩cf分辨率多少(拯救者y7000玩cf怎么调全屏)Jan 07, 2024 am 10:13 AM

拯救者y7000p玩cf分辨率多少拯救者Y7000P玩CF的分辨率为1920*1080。因为该电脑配备了GTX1650显卡和i5-9300H处理器,性能较为优秀,足以满足CF这类游戏的需求。同时,1920*1080是目前主流电竞显示器的分辨率,画质清晰度足够。另外,如果有更高要求的玩家,可以适当降低游戏画质的设置,以获得更加流畅的游戏体验。为了享受更清晰的视觉体验,你可以将拯救者y7000p的分辨率调整为2560*1400。这样,你将能够享受到更高质量的图像显示。拯救者Y7000P2022款搭载

带你把MySQL索引吃透了带你把MySQL索引吃透了Apr 22, 2022 am 11:48 AM

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了mysql高级篇的一些问题,包括了索引是什么、索引底层实现等等问题,下面一起来看一下,希望对大家有帮助。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),