Ubuntu 9.04安裝Mysql Proxy Lua測試成功版
Ubuntu 9.04安裝Mysql Proxy Lua是本文要介紹的內容,主要是來了解Mysql Proxy在Ubuntu 9.04下的安裝環境,并且已經通過測試,具體內容來看本文詳解。
安裝mysql
1、
- apt-get install mysql-server mysql-client libmysqlclient15-dev
2、進入
- mysql mysql -uroot -p
密碼root
3、重新設置mysql用戶root的密碼
- GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";
4、創建新數據庫 proxy
- create database proxy;
5、創建用戶test 對proxy庫有全部操作權限
- grant all privileges on proxy.* to test@localhost identified by "zhaogongyu";
6、允許test用戶可以從任意機器上登入MySQL。
- ***步:grant all privileges on proxy.* to test@"%" identified by "zhaogongyu";
- 第二步:$sudo gedit /etc/mysql/my.cnf
老版本
- skip-networking => #skip-networking
新版本
- bind-address=127.0.0.1 => bind-address= 你機器的IP
這樣就可以允許其他機器訪問MySQL了
7、重啟mysql命令
- sudo /etc/init.d/mysql restart
8、開機啟動mysql
- vim /etc/rc.local
將下面這一行加入到***一行
- cd /usr/bin; /usr/bin/safe_mysqld --user=root &
- exit 0
注意:記得加上cd /usr/local/mysql-5.1.36;并在改句后面加個空格,不然會導致無法自動在開機的時候啟動
9、從數據庫導出數據
- mysqldump -uroot -p --default-character-set=latin1 --set-charset=gbk --skip-opt mydatabase > d.sql
10、創建新庫
- create database 'newdata' default character set gbk collate gbk_chinese_ci;
11、導入數據庫
- mysql -uroot -p --default-character=gbk -f newmydatabase >source d.sql ..>exit
安裝讀寫分離 mysql-proxy
一、mysql
- 1、apt-get install mysql-server mysql-client libmysqlclient15-dev
- 2、進入mysql mysql -uroot -p
密碼root
3、重新設置mysql用戶root的密碼
- GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";
4、創建新數據庫 proxy 創建表 prodata
- create database proxy;
- CREATE TABLE prodata (name VARCHAR(20), sex CHAR(1));
5、創建用戶test 對proxy庫有全部操作權限
- grant all privileges on proxy.* to test@localhost identified by "zhaogongyu";
6、允許test用戶可以從任意機器上登入MySQL。
- ***步:grant all privileges on proxy.* to test@"%" identified by "zhaogongyu";
- 第二步:$sudo gedit /etc/mysql/my.cnf
老版本
- skip-networking => #skip-networking
新版本
- bind-address=127.0.0.1 => bind-address= 你機器的IP
這樣就可以允許其他機器訪問MySQL了
7、重啟mysql命令
- sudo /etc/init.d/mysql restart
注意: mysql安裝后位置
執行文件
- /usr/bin/mysql
數據庫
- /var/lib/mysql
- /var/log/mysql
控制文件
- /etc/mysql/my.cnf
數據庫命令行相關操作
2、創建一個數據庫MYSQLDATA
- mysql> CREATE DATABASE MYSQLDATA;
3、選擇你所創建的數據庫
- mysql> USE MYSQLDATA; (按回車鍵出現Database changed 時說明操作成功!)
4、查看現在的數據庫中存在什么表
- mysql> SHOW TABLES;
5、創建一個數據庫表
- mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6、顯示表的結構:
- mysql> DESCRIBE MYTABLE;
7、往表中加入記錄
- mysql> insert into MYTABLE values ("hyq","M");
8、用文本方式將數據裝入數據庫表中(例如D:/mysql.txt)
- mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
9、導入.sql文件命令(例如D:/mysql.sql)
- mysql>use database;
- mysql>source d:/mysql.sql;
10、刪除表
- mysql>drop TABLE MYTABLE;
11、清空表
- mysql>delete from MYTABLE;
12、更新表中數據
- mysql>update MYTABLE set sex="f" where name='hyq';
- http://hi.baidu.com/selfcool/blog/item/a44e101fce79b1f2e0fe0b9d.html
二、mysql-proxy
LUA文件介紹
- http://www.oreillynet.com/pub/a/databases/2007/07/12/getting-started-with-mysql-proxy.html?page=1
- 192.168.1.38 proxy
- 192.168.1.44 slaver 從機
- 192.168.1.55 master 主機
- apt-get mysql-proxy
配置
1、讀寫分離腳本
修改默認連接,進行快速測試,不修改的話要等達到連接數時才讀寫分離
- vim /usr/share/mysql-proxy/rw-splitting.lua
- proxy.global.config.rwsplit = {
- min_idle_connections = 1, #默認是4
- max_idle_connections = 1, #默認是8
- is_debug = false
- }
2、執行讀寫分離
- mysql-proxy -–proxy-read-only-backend-addresses=10.0.0.6:3306 -–proxy-backend-addresses=10.0.0.5:3306
- -–proxy-lua-script=/usr/share/mysql-proxy/rw-splitting.lua >/var/log/mysql-proxy/mysql-proxy.log &
- (新建/var/log/mysql-proxy/和mysql-proxy.log 調整屬性775 屬于chown R mysql.adm xx組)
- (sudo mysql-proxy --proxy-read-only-backend-addresses=192.168.1.44:3306
- --proxy-backend-addresses=192.168.1.55:3306
- --proxy-lua-script=/usr/share/mysql-proxy/rw-splitting.lua >/var/log/mysql-proxy/mysql-proxy.log &
- )
注:當運行sudo mysql-proxy 查詢進程后沒有4040時候,需要重啟mysql ( sudo /etc/init.d/mysql restart) 之后在輸入proxy設置
3、查看進程
- netstat -ant
- tcp 00 0.0.0.0:40400.0.0.0:*LISTEN
- tcp 00 0.0.0.0:40410.0.0.0:*LISTEN
啟動成功
可以遠程連接了,在一臺linux主機上連接,進行一些讀寫操作
4、測試讀寫分離
進入mysql-proxy機子
- a@a-desktop:/usr/share/mysql-proxy$ mysql -utest -p -P4040 -h192.168.1.38
- Enter password:
- Welcome to the MySQL monitor. Commands end with ; or \g.
- Your MySQL connection id is 25
- Server version: 5.0.51a-3ubuntu5.4-log
- Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
- mysql> use proxy;
- Database changed
插入一條記錄
- mysql> insert into prodata(name) values("zgy");
- Query OK, 1 row affected (0.01 sec)
- mysql>select * from proxy;
- Empty set (0.00 sec)
我們插入了數據沒有結果~這就對了讀寫分離了~~~~
注:有時候mysql_proxy(38)庫里會顯示出數據,重啟系統系統,重新啟動mysql后就沒有此現象了。
進入主寫服務器(192.168.1.55) 查看數據
- mysql -utest -p -h192.168.1.55
- use proxy;
- select * from prodata;
可以查看已經寫入了一條記錄
進入從讀服務器(192.168.1.44)
- mysql -utest -p -h192.168.1.44
- use proxy;
- select * from prodata;
因為沒有數據顯示
說明只能讀 不能寫。
小結:Ubuntu 9.04安裝Mysql Proxy Lua測試成功版的內容介紹完了,希望通過本文的學習能對你有所幫助!