mysql操作和維護乙個集中的資料庫的。它可以由乙個單一的執行mysql在資料庫伺服器,部署多mysql示例。這個功能是由mysqld_multi實現。mysqld_multimysqld的服務程序。這些mysqld服務程序程式能夠用不同的socket或是監聽於不同的埠,同一時候將資料檔案分布到不同的磁碟以分散io。
mysqld_multi提供簡單的命令用於啟動。關閉和報告所管理的伺服器的狀態。從而降低生產環境的維護成本。方便興許的遷移和清理等工作,借助多例項繫結的方式提高伺服器的總體資源利用率.對於多例項的配置有2種方式,一種是在my.cnf為全部例項提供配置,一種是使用每個例項乙個配置檔案。
本文主要描寫敘述另外一種方式。
1、各資料庫多例項的差異 mssql
mssql中的例項指的是乙個sql server伺服器上僅有乙個預設例項。預設例項名即為機器名servername(或ip)。
假設在同一臺機器上再安裝sql server,我們能夠對例項命名如servername/instancename。
即一台sql server伺服器上能夠存在多個不同的例項。乙個例項下能夠存在多個不同的資料庫。
對於不同例項下的資料庫的訪問,使用servername/instancename:portno就可以實現訪問,預設例項為servername:portno。
例項的可訪問性須要啟動該例項相應的相關服務。
此處須要注意的是例項名和例項的服務名並非同樣的。
預設的例項的服務名為mssqlserver。而命名例項的服務名為mssql$instance_name。
oracle
乙個oracle server由乙個oracle例項和乙個oracle資料庫組成。即:oracle server = oracle instance + oracle database
在oracle的例項主要是由sga。pga以及一堆的後台程序來組成。此稱之為例項。
一系列物理檔案的集合包含控制檔案、資料檔案、聯機日誌檔案、引數檔案、密碼檔案等稱之為資料庫。
乙個例項僅僅能訪問乙個資料庫,乙個資料庫能夠被多個例項訪問。
mysql
mysql例項的概念與mssql差點兒相同。乙個mysql例項下能夠存在或訪問n個資料庫。
不同的例項間能夠用不同的埠號來區分,各個例項的資料能夠使用不同的磁碟資料夾。
mysql多例項通過mysqld_multi工具來進行管理。
mysql埠號: 3306
mysql 版本號:5.6.12 source distribution
os 環境:suse linux enterprise server 11 sp3 (x86_64)
# author : leshami
# blog :
[mysqld]
socket = /tmp/mysql3606.sock
port = 3606
user = mysql
server-id=3606
[client]
port = 3606
socket = /tmp/mysql3606.sock
[mysql]
no-auto-rehash
socket = /tmp/mysql3606.sock
prompt=\\u@\\h[\\d]> \\
[mysqld]
socket = /tmp/mysql3706.sock
port = 3706
user = mysql
server-id=3706
[client]
port = 3706
socket = /tmp/mysql3706.sock
[mysql]
no-auto-rehash
socket = /tmp/mysql3706.sock
prompt=\\u@\\h[\\d]> \\
suse11:~ # netstat -nltp|grep mysql
tcp 0 0 :::3606 :::* listen 64277/mysqld
tcp 0 0 :::3706 :::* listen 64597/mysqld
suse11:~ # mysqladmin -uroot password '***' -s /tmp/mysql3606.sock
suse11:~ # mysqladmin -uroot password '***' -s /tmp/mysql3706.sock
#以下使用套接字方式連線到例項
suse11:~ # mysql -uroot -p*** -s /tmp/mysql3606.sockroot@localhost[(none)]>
suse11:~ # mysql -uroot -p*** -s /tmp/mysql3706.sockroot@localhost[(none)]>
#以下使用tcp方式連線到例項
suse11:~ # mysql -uroot -p*** -p3606 --protocol=tcproot@localhost[(none)]> exit
suse11:~ # mysql -uroot -p*** -p3706 --protocol=tcproot@localhost[(none)]>
#關閉mysql例項
suse11:~ # mysqladmin -uroot -p*** -s /tmp/mysql3606.sock shutdown
suse11:~ # mysqladmin -uroot -p*** -s /tmp/mysql3706.sock shutdown
mysql多個密碼 3個小密碼優化MySQL
首頁 資訊 3個小密碼優化mysql 3個小密碼優化mysql 我並不期望成為乙個專家級的 dba,但是,在我優化 mysql 時,我推崇 80 20 原則,明確說就是通過簡單的調整一些配置,你可以壓榨出高達 80 的效能提公升。尤其是在伺服器資源越來越便宜的當下。警告1.沒有兩個資料庫或者應用程式...
mysql原始碼包安裝 適用於多個mysql
yum list grep ncurses devel yum y install make gcc c cmake bison devel ncurses devel wget tar zxvf mysql 5.6.35.tar.gz cd mysql 5.6.35 mkdir p usr loc...
SpringBoot配置多個mysql資料來源
當我們在進行資料庫分庫分表操作是可能會需要到多個資料庫,那麼我們就需要對多個資料庫的資料來源進行配置.整理一下,今天在springboot框架下多個資料來源的配置過程 兩個為例 1.配置資料庫資訊 在yml配置檔案中配置需要的資料庫資訊 spring datasource 1 配置第乙個資料庫的位址...