查看: 251|回复: 0

[Mysql数据库] MySQL的几种安装方式及配置问题小结

发表于 2017-10-9 08:00:02
尚学堂AD

1、MySQL rpm包安装

  1. # 下载安装源
  2. [root@localhost src]# wget https://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
  3. # 安装源
  4. [root@localhost src]# rpm -ivh mysql-community-release-el7-5.noarch.rpm
复制代码

2、MySQL yum工具安装

  1. [root@localhost /]# yum install -y mysql-community-server
  2. # 查看安装后的文件路径
  3. [root@localhost /]# which mysql mysqld_safe mysqlbinlog mysqldump
  4. /usr/bin/mysql
  5. /usr/bin/mysqld_safe
  6. /usr/bin/mysqlbinlog
  7. /usr/bin/mysqldump
复制代码

如需查看每个安装包包含的详细文件列表,可以使用“rpm -ql 软件名”查看,该命令列出了当前rpm包的文件列表及安装位置。如下:

  1. [root@localhost /]# rpm -ql openssl
  2. /etc/pki/tls/misc/c_hash
  3. /etc/pki/tls/misc/c_info
  4. /etc/pki/tls/misc/c_issuer
  5. /etc/pki/tls/misc/c_name
  6. /usr/bin/openssl
  7. /usr/share/doc/openssl-1.0.1e
  8. /usr/share/doc/openssl-1.0.1e/CHANGES
  9. .......
复制代码

3、MySQL 源码安装

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

上述示例表示将MySQL软件安装到/usr/local/mysql目录下,本示例中使用的参数及其含义如下:

DCMAKE_INSTALL_PREFIX:表示将MySQL安装到何处,此例中将安装到/usr/local/mysql目录中;

DMYSQL_DATADIR:表示MySQL的数据文件存放目录; DSYSCONFDIR:配置文件所在目录;

DWITH_MYISAM_STORAGE_ENGINE:将MyISAM存储引擎编译到服务中;

DWITH_INNOBASE_STORAGE_ENGINE:将InnoDB存储引擎编译到服务中; DMYSQL_UNIX_ADDR:

DMYSQL_TCP_PORT:默认使用的端口; DENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA

INFILE; DWITH_PARTITION_STORAGE_ENGINE:将分区引擎编译到服务中;

DEXTRA_CHARSETS:让服务支持所有扩展字符集; DDEFAULT_CHARSET:服务使用的默认字符集,此处设置为

UTF8; DDEFAULT_COLLATION:默认的排序规则。

编译安装MySQL时有许多参数,这些参数的详细含义和说明可以在官方网站中查找:http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html

安装的依赖包的作用:

gcc/g++:MySQL 5.6开始,需要使用g++进行编译; cmake:MySQL 5.5开始,使用cmake进行工程管理,cmake需要2.8以上版本; bison:MySQL语法解析器需要使用bison进行编译; ncurses-devel:用于终端操作的开发包; zlib:MySQL使用zlib进行压缩; libxml:用于XML输入输出方式的支持; openssl:使用openssl安全套接字方式通信;

dtrace:用于诊断MySQL问题。

完成上述安装步骤还不够,还需要为MySQL添加配置选项、启动停止脚本等。

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

附:安装过程中的问题总结

1、-bash:mysql:command not found

因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时, 系统在/usr/bin下面查此命令,所以找不到了。

解决办法:使用如下命令做个链接即可

  1. 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).

解决办法:

修改/etc/my.cnf 中datadir,指向正确的mysql数据库文件目录

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

解决办法:

新建一个链接或在mysql中加入-S参数,直接指出mysql.sock位置。

  1. ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock
  2. /usr/local/mysql/bin/mysql -u root -S /usr/local/mysql/data/mysql.sock
复制代码

以上所述是小编给大家介绍的MySQL的几种安装方式及配置问题小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对程序员之家网站的支持!



回复

使用道具 举报