Aperçu
L'article précédent a enregistré l'installation et la configuration de MySQL 5.7 dans le système Windows En raison de la nécessité d'installer et de déployer l'environnement Big Data, il est désormais nécessaire d'installer et de configurer MySQL 5.7 dans le système CentOS 7. de l'environnement CentOS 7 ont également été enregistrés, l'installation et la configuration s'effectuent donc directement ici.
Installez MySQL 5.7 à partir de la source miam
Installez MySQL 5.7
Dans le système CentOS 7, le fichier source par défaut du système ne contient pas MySQL. Si vous utilisez directement la source yum pour exécuter la commande d'installation, vous serez invité à indiquer "Aucun package mysql-community-server n'est disponible." : # 🎜🎜#
Par conséquent, vous devez exécuter manuellement la commande suivante pour télécharger le fichier d'installation du fichier source :
1 # cd /home 2 # wget 'https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm'
, puis exécuter la commande d'installation du fichier source : #🎜 🎜##🎜🎜 #
1 # rpm -ivh mysql57-community-release-el7-11.noarch.rpm
Maintenant vous pouvez installer MySQL, exécutez la commande suivante :
1 # yum install -y mysql-community-server
Exécutez la commande suivante pour démarrer la base de données et vérifier l'état de la base de données :
1 # systemctl start mysqld 2 # systemctl status mysqld
1 # cat /var/log/mysqld.log
Ou utilisez la commande suivante :
1 # grep 'temporary password' /var/log/mysqld.log
Connectez-vous à la base de données MySQL avec la commande suivante :
1 # mysql -uroot -p
Utilisez comme suit Commande pour modifier le mot de passe de l'utilisateur root :
1 > SET PASSWORD = PASSWORD('Password@123!');
La base de données n'est pas ouverte à l'accès à distance par défaut. Utilisez la commande suivante pour configurer : # 🎜🎜#
1 > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Password@123!' WITH GRANT OPTION;
1 # vim /etc/my.cnf
1 [mysqld] 2 datadir=/var/lib/mysql 3 socket=/var/lib/mysql/mysql.sock 4 symbolic-links=0 5 log-error=/var/log/mysqld.log 6 pid-file=/var/run/mysqld/mysqld.pid 7 character-set-server = utf8mb4 8 collation-server = utf8mb4_unicode_ci 9 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 10 11 [mysql] 12 default-character-set = utf8mb4 13 14 [client] 15 default-character-set = utf8mb4 16
Remarque :
Il est défini sur utf8mb4 ici : Premièrement, parce que le codage utf8 ne prend en charge que les données de 3 octets et que les données d'émoticônes sur le terminal mobile sont constituées de caractères de 4 octets, donc l'insertion directe de données d'émoticônes dans la base de données codée en utf-8 signalera une exception ; Deuxièmement, j'ai lu un article d'un maître qui mentionnait que utf8 dans MySQL n'est pas le vrai utf8, donc utf8mb4 est utilisé.
1 # systemctl restart mysqld
1 # SHOW VARIABLES LIKE 'character%';
Exécutez la commande suivante pour configurer le service de base de données pour qu'il démarre :
1 # systemctl enable mysqld
Package compressé pour installer MySQL 5.7#🎜 🎜#Si le serveur ne peut pas être connecté à Internet, vous ne pouvez pas utiliser la source yum pour l'installation. Vous pouvez utiliser un ordinateur avec accès à Internet, rendez-vous sur le site officiel. pour télécharger le package compressé pour l'installation, puis modifiez le serveur pour installer le package compressé.
Allez d'abord sur le site officiel : https://www.mysql.com/ pour télécharger le package d'installation correspondant :
Connectez-vous à distance au répertoire /usr sur le serveur pour créer mysql57 :# 🎜🎜#
1 # cd /usr 2 # mkdir mysql57
Depuis mariadb est installé par défaut sur le système CentOS 7, utilisez la commande suivante pour afficher et désinstaller mariadb :
1 # rpm -qa | grep mariadb 2 # rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
1 # rpm -ivh *.rpm
1 # systemctl start mysqld 2 # systemctl status mysqld
1 # grep 'temporary password' /var/log/mysqld.log
使用如下命令登录MySQL数据库:
1 # mysql -uroot -p
密码输入刚才查到的密码,即可登录数据库:
使用如下命令,修改root用户密码:
1 > SET PASSWORD = PASSWORD('******');
数据库默认远程访问未开放,使用如下命令进行配置:
1 > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;
星号为root用户的密码(下图红色覆盖区域):
然后输入quit,回车退出数据库登录,使用命令打开数据库的配置文件:
1 # vim /etc/my.cnf
设置数据库字符集为utf8mb4,并设置sql_mode支持group by语句,完整的配置文件内容如下:
1 [mysqld] 2 character-set-server = utf8mb4 3 collation-server = utf8mb4_unicode_ci 4 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 5 6 [mysql] 7 default-character-set = utf8mb4 8 9 [client] 10 default-character-set = utf8mb4 11
注意:
此处设置为utf8mb4:一是因为utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符,所以直接往utf-8编码的数据库中插入表情数据,会报异常;二是看过一位大神的文章提到,MySQL中的utf8并不是真正的utf8,所以使用utf8mb4。
配置完成后,执行如下命令重启数据库服务:
1 # systemctl restart mysqld
使用修改后的密码,登录数据库,执行如下命令查看字符集设置:
1 # SHOW VARIABLES LIKE 'character%';
执行如下命令,设置数据库服务开机启动:
1 # systemctl enable mysqld
为了方便查看不同安装方式的朋友,将记录了两种不同的安装方式的配置都记录下来,避免他们需要回头去查找配置信息。
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!