Home >Database >Mysql Tutorial >Summary of issues regarding MySQL installation and configuration methods

Summary of issues regarding MySQL installation and configuration methods

黄舟
黄舟Original
2017-07-17 14:37:511562browse

This article mainly introduces several installation methods and configurations of MySQL, and then introduces a summary of the problems during the installation process at the bottom of the article. It is very good and has reference value. Friends in need can refer to it

1. MySQL rpm package installation

# 下载安装源
[root@localhost src]# wget https://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# 安装源
[root@localhost src]# rpm -ivh mysql-community-release-el7-5.noarch.rpm

2.MySQL yum tool installation

[root@localhost /]# yum install -y mysql-community-server
# 查看安装后的文件路径
[root@localhost /]# which mysql mysqld_safe mysqlbinlog mysqldump
/usr/bin/mysql
/usr/bin/mysqld_safe
/usr/bin/mysqlbinlog
/usr/bin/mysqldump

To view the detailed file list contained in each installation package, you can use "rpm -ql software name" to view it. This command lists the file list and installation location of the current rpm package. As follows:

[root@localhost /]# rpm -ql openssl
/etc/pki/tls/misc/c_hash
/etc/pki/tls/misc/c_info
/etc/pki/tls/misc/c_issuer
/etc/pki/tls/misc/c_name
/usr/bin/openssl
/usr/share/doc/openssl-1.0.1e
/usr/share/doc/openssl-1.0.1e/CHANGES
.......

3. MySQL source code installation

# 安装编译所需的软件包
[root@localhost src]# yum install -y make gcc-c++ cmake bison-devel ncurses-devel gcc autoconf automake zlib* fiex* libxml*
# 下载源码
[root@localhost src]# wget https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.24.tar.gz
# 解压源码包
[root@localhost src]# tar xvf mysql-5.6.24.tar.gz
[root@localhost src]# cd mysql-5.6.24
# 进行编译配置,这个过程将耗时3~5分钟
[root@localhost mysql-5.6.24]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
# 编译并且安装
# 编译过程大约需要30~50分钟
[root@localhost mysql-5.6.24]# make
[root@localhost mysql-5.6.24]# make install
# 设置MySQL用户和组
[root@localhost mysql-5.6.24]# groupadd mysql
[root@localhost mysql-5.6.24]# useradd -r -g mysql mysql
[root@localhost mysql-5.6.24]# cd /usr/local/mysql/
# 设置权限以便mysql能修改文件
[root@localhost mysql]# chown -R mysql:mysql ./
[root@localhost mysql]# chown -R mysql:mysql /data/mysql/data
# 初始化数据库
# 需要注意的是此处设置的数据目录应该与之前的MYSQL_DATADIR指定的目录相同
[root@localhost mysql]# scripts/mysql_install_db --user=mysql -ldata=/data/mysql/data
# 恢复权限设置,并修改相应目录的权限以便mysql修改
[root@localhost mysql]# chown -R root ./
[root@localhost mysql]# chown -R mysql data

The above example indicates that the MySQL software is installed in the /usr/local/mysql directory. The parameters used in this example and their meanings are as follows:

DCMAKE_INSTALL_PREFIX: Indicates where MySQL is installed. In this example, it will be installed in the /usr/local/mysql directory;

DMYSQL_DATADIR: Indicates the directory where MySQL data files are stored; DSYSCONFDIR: the directory where configuration file is located;

DWITH_MYISAM_STORAGE_ENGINE: compiles the MyISAM storage engine into the service;

DWITH_INNOBASE_STORAGE_ENGINE: compiles the InnoDB storage engine Compile into the service; DMYSQL_UNIX_ADDR:

DMYSQL_TCP_PORT: The port used by default; DENABLED_LOCAL_INFILE: Specify whether to allow local execution of LOAD DATA

INFILE; DWITH_PARTITION_STORAGE_ENGINE: Compile the partition engine into the service;

DEXTRA_CHARSETS: Let the service support all extended character sets; DDEFAULT_CHARSET: The default character set used by the service, set here to

UTF8; DDEFAULT_COLLATION: The default collation.

There are many parameters when compiling and installing MySQL. The detailed meaning and description of these parameters can be found on the official website: http://dev.mysql.com/doc/refman/5.5/en/source-configuration- options.html

The role of the installed dependency package:

gcc/g++: Starting from MySQL 5.6, you need to use g++ for compilation; cmake: Starting from MySQL 5.5, cmake is used for project management, and cmake requires version 2.8 or above; bison: MySQL syntax parser needs to be compiled with bison; ncurses-devel: development package for terminal operations; zlib: MySQL uses zlib for compression; libxml: Used to support XML input and output methods; openssl: uses openssl secure socket method to communicate;

dtrace: used to diagnose MySQL problems.

Completing the above installation steps is not enough. You also need to add configuration options, start and stop scripts for MySQL, etc.

cd /usr/local/mysql/
#去掉配置文件中的注释行仅显示有效行
grep -v "^#" my.cnf
#将启动脚本放到/etc/init.d目录中
cp support-files/mysql.server /etc/init.d/mysqld
#将mysql添加为系统服务
chkconfig --add mysqld
service mysqld start
#此时MySQL的root用户还没有密码,应该为其设置密码
/usr/local/mysql/bin/mysql -u root -h 192.168.146.150 -p
#由于还没有设置密码因此直接按下Enter键即可
#设置root用户的密码为888888
set password = password('888888');
#设置完成后输入quit退出
quit

Attachment: Summary of problems during the installation process

1. -bash:mysql:command not found

Because The path of the mysql command is under /usr/local/mysql/bin, so when you use the mysql command directly, the system checks for this command under /usr/bin, so it cannot be found.

Solution: Use the following command to create a link

ln -s /usr/local/mysql/bin/mysql /usr/bin

2. Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/Server03.mylinux.com. pid).

Solution:

Modify the datadir in /etc/my.cnf to point to the correct mysql databaseFile Directory

3. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

Solution:

Create a new link or add the -S parameter to mysql to directly point to the location of mysql.sock.

ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock
/usr/local/mysql/bin/mysql -u root -S /usr/local/mysql/data/mysql.sock

The above is the detailed content of Summary of issues regarding MySQL installation and configuration methods. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn