安装篇五:安装MySQL(5.6.38版本)
Posted 李奎-博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装篇五:安装MySQL(5.6.38版本)相关的知识,希望对你有一定的参考价值。
MySQL安装
#1、准备环境
# No1:关闭:(iptables)selinux
# No2:下载好安装包(这里使用 mysql-5.6.38.tar.gz 包安装)
# No3:安装依赖包
[root@TEST ~]# yum install -y ncurses-devel libaio-devel
# No4:安装cmake软件 [ 说明:MySQL5.5版本以后使用编译安装需要安装 cmake ]
[root@TEST ~]# yum install cmake gcc-c++ –y
# No5:创建MySQL管理的虚拟用户
[root@TEST ~]# useradd -s /sbin/nologin -M mysql
[root@TEST ~]# id mysql
# No6:创建tools目录
[root@TEST ~]# cd /server/tools/
导入MySQL安装包并解压
#2、导入MySQL安装包
[root@TEST ~]# cd /server/tools/
[root@TEST tools]# tar xf mysql-5.6.38.tar.gz
[root@TEST tools]# cd mysql-5.6.38 ###进入解压之后的目录
configure配置、编译、安装
#3、configure配置、编译、安装 [root@TEST tools]# cd mysql-5.6.38 [root@TEST mysql-5.6.38]# cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38 -DMYSQL_DATADIR=/application/mysql-5.6.38/data -DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0 [root@TEST mysql-5.6.38]# echo $? <—— 返回值为0,则执行下一步 [root@TEST mysql-5.6.38]# make [root@TEST mysql-5.6.38]# echo $? <—— 返回值为0,则执行下一步 [root@TEST mysql-5.6.38]# make install [root@TEST mysql-5.6.38]# echo $? <—— 返回值为0,则执行下一步 ***************************************************************************** ## 补充说明1: cmake 执行完了之后,先使用 echo $?查看返回值是否是0; 如果是0的话再执行下面的make 和make install ## 补充说明2: 报错说明:如果cmake报错,大部分原因是由于关键的开发包组没有安装 解决方法: 1、安装包组:yum groupinstall XXX 2、解压文件夹删除,再次重新解压,重新cmake即可 ## 补充说明3: cmake干了什么? 1、做了些预配置 2、影响了编译后的程序(编译过程会将cmake指定的配置信息硬编码到程序文件中) Mysqld、mysql、mysql_install_db、mysqldump、mysqladmin、mysql_safe等。 *****************************************************************************
创建软连接
[root@TEST mysql-5.6.38]# ln -s /application/mysql-5.6.38/ /application/mysql
移除/etc/my.conf文件
[root@TEST mysql-5.6.38]# rm -rf /etc/my.cnf*
[root@TEST mysql-5.6.38]# cp /application/mysql/support-files/my*.cnf /etc/my.cnf
初始化数据
[root@TEST mysql-5.6.38]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql
修改软件路径归属
[root@TEST mysql-5.6.38]# chown -R mysql.mysql /application/mysql/
启动脚本和开机自启动设置
# 拷贝启动脚本到sys-v模式目录
[root@TEST mysql-5.6.38]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
# 修改权限
[root@TEST mysql-5.6.38]# chmod 700 /etc/init.d/mysqld
# 设置开机自启动
[root@TEST mysql-5.6.38]# chkconfig mysqld on
[root@TEST mysql-5.6.38]# chkconfig --list mysqld
启动数据库
[root@TEST mysql-5.6.38]# /etc/init.d/mysqld start
# 查看数据库端进程信息
[root@TEST mysql-5.6.38]# ps -ef|grep mysql
# 查看数据库端口号
[root@TEST mysql-5.6.38]# netstat -lntup|grep mysql
tcp 0 0 :::3306 :::* LISTEN 32340/mysqld
*************************************************************
启动可能报错:
# 可能报错(一)
Starting MySQL.180402 00:55:13 mysqld_safe Directory ‘/var/lib/mysql‘ for UNIX socket file don‘t exists.ERROR! The server quit without updating PID file (/var/lib/mysql/db02.pid).
# 那么你可以查看以下/etc/my.cnf是否是之前安装mysql时产生的文件,把它移动到/tmp目录下,再次启动mysql尝试
/etc/init.d/mysqld start
# 可能报错(二)
Starting MySQL.Logging to ‘/application/mysql-5.6.36/data/db02.err‘.
180402 00:56:42 mysqld_safe Directory ‘/application/mysql-5.6.36/tmp‘ for UNIX socket file don‘t exists.
ERROR! The server quit without updating PID file (/application/mysql-5.6.36/data/db02.pid).
# 注:此时数据库启动会提示,找不到xx/tmp/mysql.sock,原因是5.6.36版本不会自动创建tmp目录
解决办法:
# 创建目录tmp
[root@TEST mysql-5.6.38]# mkdir /application/mysql/tmp
# 授权
[root@TEST mysql-5.6.38]# chown -R mysql.mysql /application/mysql/
# 再次启动
[root@TEST mysql-5.6.38]# /etc/init.d/mysqld start # 启动成功
添加环境变量
[root@TEST mysql-5.6.38]# echo ‘PATH=/application/mysql/bin/:$PATH‘ >>/etc/profile
[root@TEST mysql-5.6.38]# tail -1 /etc/profile
[root@TEST mysql-5.6.38]# source /etc/profile
[root@TEST mysql-5.6.38]# echo $PATH
删除数据库里的无效库、用户
①、修改初始密码 # 说明:刚安装的数据库没有初始密码 [root@TEST mysql-5.6.38]# mysqladmin -uroot -p password 123456 Enter password: <————注意:刚安装的数据库是没有密码的,这里密码直接enter回车 Warning: Using a password on the command line interface can be insecure. # 登录MySQL: mysql -uroot -p123456 mysql -uroot -p ②、清理无效用户 mysql> select user,host from mysql.user; mysql> drop user ‘‘@‘localhost‘; mysql> drop user ‘root‘@‘::1‘; mysql> drop user root@‘127.0.0.1‘; mysql> drop user ‘‘@‘test‘; mysql> drop user ‘root‘@‘test‘; mysql> select user,host from mysql.user; | root | localhost | 1 row in set (0.00 sec) ③、清理无效数据库 mysql> show databases; mysql> drop database test; mysql> show databases; | information_schema | | mysql | | performance_schema | 3 rows in set (0.01 sec)
以上是关于安装篇五:安装MySQL(5.6.38版本)的主要内容,如果未能解决你的问题,请参考以下文章