提一個問題,如何在docker中用mysql容器啟動兩個服務實例:mysql-server,而且他們的資料互通,再啟動一個mysql-client?
詳解:
首先附一個鏈接,是講解mysql-client和server的區別的:
然後說一下討論的內容和結論:
#我之前疑惑的點是,都說client是要登陸(host -u -p)的,但是我在使用server時,也要登陸(-u -p)啊,所以理所當然地產生了一個想法就是,client與server的差別就是要不要連host,不連host的就是server,但這個觀點其實不太對。
本質上的差異是:server是執行一個crud運算,client是傳送一個crud操作。
server是把sql語句翻譯成對記憶體和檔案的操作,也就是說,server是直接操作檔案的。
而client是對資料庫/表格進行操作,不是直接對檔案進行操作。
舉個例子:
①client:我用一個Navicat去連結一個資料庫,這個Navicat就是client。
②server:我有多個mysql服務實例,他們可以位於不同的連接埠(這句不重要),但是他們是掛載在了宿主機同一個目錄下的(這句重要,對內存/文件進行操作了),而且資料共享(這句話也不重要)。
小知識點:
①sql只是去知道server如何去操作資料。
②即使C/S在同一台機器上,他們也是透過網路通訊的。
更多Mysql相關問題請上PHP中文網:https://www.php.cn/
以上是淺析mysql-server 與 mysql-client 的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!