一步步教你搭建Mysql單機多實例

0 簡介

隨著互聯網技術的發展,數據量越來越龐大,我們急需一個大的存儲和大的分析系統。雖然有nosql數據庫hadoop文件存儲等數據存儲方式能夠解決該問題,但是,關系型數據庫依然有它的優勢所在,尤其是對結構化數據的處理,性能仍然很棒。或者,從公司的項目開發成本講,關系型數據庫的使用比nosql數據庫使用更加簡易,更加便于維護。
因此,本文介紹一下mycat使用的第一步(當然,這一步不是必須的),學會如何搭建mysql單機多實例,從而應對大數據量查詢慢的問題。

1 啟動項

vim /etc/apparmor.d/usr.sbin.mysqld /etc/init.d/apparmor reload

AppArmor(Application Armor)是linux內核的一個安全模塊,AppArmor允許系統管理員將每個程序與一個安全配置文件關聯,從而限制程序的功能。簡單的說,AppArmor是與SELinux類似的一個訪問控制系統,通過它你可以指定程序可以讀、寫或運行哪些文件,是否可以打開網絡端口等。作為對傳統unix的自主訪問控制模塊的補充,AppArmor提供了強制訪問控制機制,它已經被整合到2.6版本的Linux內核中。
詳細資料查看:
Apparmor——Linux內核中的強制訪問控制系統
http://www.cnblogs.com/-Lei/a…

2 創建新實例的數據目錄

mkdir /var/lib/mysql2   創建目錄 chown mysql /var/lib/mysql2  給mysql用戶權限

3 創建數據庫,初始化數據庫

  • mysql 5.7以下
    mysql_install_db –user=mysql –datadir=/var/lib/mysql2

  • mysql 5.7以上

  1. –user=mysql –datadir=/var/lib/mysql2

4 配置多實例配置文件

[mysqld_multi]   mysqld     = /install/mysql/bin/mysqld_safe   mysqladmin = /install/mysql/bin/mysqladmin   user       = root      # The MySQL server   [mysqld1]   port            = 3306   socket          = /tmp/mysql.sock   datadir         =/var/lib/mysql   pid-file        =/var/lib/mysql/mysql.pid   user            =mysql      log-bin         =master-bin   log-bin-index           =master-bin.index   ... [mysqld2]   port            = 3307   socket          =/tmp/mysql2.sock   datadir         =/var/lib/mysql2   pid-file        =/var/lib/mysql2/mysql.pid   user            =mysql   ...

5 啟動實例

mysqld_multi   --defaults-file=/etc/mysql/my_multi.cnf start 1 mysqld_multi   --defaults-file=/etc/mysql/my_multi.cnf start 2

6 登陸Mysql

# 登陸Mysql服務器,執行mysql命令進入mysql控制臺 mysql -uroot -P3307 -p -S/tmp/mysql2.sock # 不用輸入密碼,直接回車 # 查看當前用戶 select User from mysql.user; # 創建Mysql用戶test,并賦權限 CREATE USER 'test'@'%' IDENTIFIED BY '123456'; GRANT GRANT OPTION ON *.* TO 'test'@'%'; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'test'@'%';

推薦學習:《mysql視頻教程

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享