Maison >base de données >tutoriel mysql >Apprenez étape par étape à créer plusieurs instances Mysql sur une seule machine

Apprenez étape par étape à créer plusieurs instances Mysql sur une seule machine

藏色散人
藏色散人avant
2021-11-19 16:56:282077parcourir

0 Introduction

Avec le développement de la technologie Internet, la quantité de données devient de plus en plus grande et nous avons un besoin urgent d'un grand système de stockage et d'un grand système d'analyse. Bien qu'il existe des méthodes de stockage de données telles que la base de données NoSQL et le stockage de fichiers Hadoop qui peuvent résoudre ce problème, les bases de données relationnelles ont toujours leurs avantages, notamment dans le traitement des données structurées, et les performances restent excellentes. Or, en termes de coûts de développement de projet pour l'entreprise, l'utilisation de bases de données relationnelles est plus simple et plus facile à maintenir que les bases de données nosql.
Par conséquent, cet article présente la première étape de l'utilisation de Mycat (bien sûr, cette étape n'est pas nécessaire) et apprend à créer plusieurs instances de Mysql sur une seule machine pour résoudre le problème de l'interrogation lente de grandes quantités de données.

1 Élément de démarrage

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

AppArmor (Application Armor) est un module de sécurité du noyau Linux AppArmor permet aux administrateurs système d'associer chaque programme à un profil de sécurité, limitant ainsi les fonctionnalités du programme. En termes simples, AppArmor est un système de contrôle d'accès similaire à SELinux, grâce auquel vous pouvez spécifier quels fichiers un programme peut lire, écrire ou exécuter, s'il peut ouvrir des ports réseau, etc. En complément du module de contrôle d'accès discrétionnaire traditionnel Unix, AppArmor fournit un mécanisme de contrôle d'accès obligatoire, qui a été intégré dans la version 2.6 du noyau Linux.
Afficher des informations détaillées :
Apparmor - le système de contrôle d'accès obligatoire dans le noyau Linux
http://www.cnblogs.com/-Lei/a...

2 Créez le répertoire de données de la nouvelle instance

mkdir /var/lib/mysql2   创建目录
chown mysql /var/lib/mysql2  给mysql用户权限

3 Créez la base de données, initialisez la base de données

  • mysql 5.7 ou inférieur
    mysql_install_db --user=mysql --datadir=/var/lib/mysql2

  • mysql 5.7 ou supérieur

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

4 Configurer le fichier de configuration multi-instance

[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 Démarrer l'instance

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

6 Connectez-vous à 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'@'%';

Apprentissage recommandé : "Tutoriel vidéo mysql"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer