0 Einführung
Mit der Entwicklung der Internettechnologie wird die Datenmenge immer größer und wir benötigen dringend einen großen Speicher und ein großes Analysesystem. Obwohl es Datenspeichermethoden wie NoSQL-Datenbank und Hadoop-Dateispeicher gibt, die dieses Problem lösen können, haben relationale Datenbanken immer noch ihre Vorteile, insbesondere bei der Verarbeitung strukturierter Daten, und ihre Leistung ist immer noch hervorragend. Oder im Hinblick auf die Projektentwicklungskosten des Unternehmens ist die Verwendung relationaler Datenbanken einfacher und leichter zu warten als NoSQL-Datenbanken.
Daher stellt dieser Artikel den ersten Schritt bei der Verwendung von Mycat vor (dieser Schritt ist natürlich nicht notwendig) und erfährt, wie man mehrere Instanzen von MySQL auf einer einzelnen Maschine erstellt, um das Problem der langsamen Abfrage großer Datenmengen zu bewältigen.
1 Startelement
vim /etc/apparmor.d/usr.sbin.mysqld /etc/init.d/apparmor reload
AppArmor (Application Armor) ist ein Sicherheitsmodul des Linux-Kernels, mit dem Systemadministratoren jedes Programm einem Sicherheitsprofil zuordnen und dadurch die Funktionalität des Programms einschränken können. Einfach ausgedrückt ist AppArmor ein Zugriffskontrollsystem ähnlich wie SELinux, über das Sie festlegen können, welche Dateien ein Programm lesen, schreiben oder ausführen kann, ob es Netzwerkports öffnen kann usw. Als Ergänzung zum herkömmlichen diskretionären Zugriffskontrollmodul von Unix bietet AppArmor einen obligatorischen Zugriffskontrollmechanismus, der in die Version 2.6 des Linux-Kernels integriert wurde.
Detaillierte Informationen anzeigen:
Apparmor – das obligatorische Zugriffskontrollsystem im Linux-Kernel
http://www.cnblogs.com/-Lei/a...
2 Erstellen Sie das Datenverzeichnis der neuen Instanz
mkdir /var/lib/mysql2 创建目录 chown mysql /var/lib/mysql2 给mysql用户权限
3 Erstellen Sie die Datenbank, initialisieren Sie die Datenbank
mysql 5.7 oder niedriger
mysql_install_db --user=mysql --datadir=/var/lib/mysql2mysql 5.7 oder höher.
-
--user= mysql -- datadir=/ var/lib/mysql2
4 Konfigurationsdatei für mehrere Instanzen konfigurieren
[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 Instanz starten
mysqld_multi --defaults-file=/etc/mysql/my_multi.cnf start 1 mysqld_multi --defaults-file=/etc/mysql/my_multi.cnf start 2
6 Bei MySQL anmelden
# 登陆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'@'%';