测试开发小白成长记

安装MySQL

2019-07-18  本文已影响0人  仰望_

Mysql-5.7.9 基于gcc编译安装for linux

一、下载源码包

wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.9.tar.gz

二、安装准备

1、先安装gcc编译器及相关依赖项

yum -y install make gcc-c++ cmake bison-devel ncurses-devel

2、先解压boost_1_59,再解压mysql的tar包,进入mysql解压后的文件中

tar -zxvf boost_1_59.tar.gz

tar -zxvf mysql-5.7.9.tar.gz

cd mysql-5.7.9

3、对mysql预编译检查

cmake . -DCMAKE_INSTALL_PREFIX=/home/mysql -DMYSQL_DATADIR=/home/mysql/data -DDOWNLOAD_BOOST=1 -DWITH_BOOST=../boost_1_59_0 -DSYSCONFDIR=/home/mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DENABLE_DTRACE=0 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EMBEDDED_SERVER=1

三、安装

1、编译和安装

make -j `grep processor /proc/cpuinfo | wc -l`
make install

2、查看是否安装成功

3、添加mysql用户

useradd -M -s /sbin/nologin mysql

4、初始化数据库

/opt/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/opt/mysql --datadir=/opt/mysql/data

5、设置开机自启动

/bin/cp /opt/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on

6.启动数据库 在opt/mysql/bin目录运行下面命令

service mysqld start

7、先登录mysql后,在运行下面三条权限命令

/opt/mysql/bin/mysql –u root –p
//然后密码空
grant all privileges on *.* to root@'127.0.0.1' identified by 'root123' with grant option;
grant all privileges on *.* to root@'localhost' identified by 'root123' with grant option;
grant all privileges on *.* to root@'%' identified by 'root123' with grant option;//这条才是最重要的,客户端工具才能连接上mysql
flush privileges;

8、客户端测试连接

四、安装过程中问题解决方案

1、启动出现错误

错误现象

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

解决方案
1、打开/etc/my.cnf,看看里面配置的socket位置是什么目录, 例如:socket=/tmp/mysql.sock
2、看看/tmp/mysql.sock是否存在,不存在创建一个,若和/etc/my.cnf不一致,建立一个软连接

 ln -s /home/mysql/data/my.sock /tmp/mysql.sock

3、看看/tmp/mysql.sock权限是否正确

2、启动报错

错误现象

[root@192 bin]# service mysqld start
Starting MySQL.The server quit without updating PID file (/[FAILED]mysql/192.168.150.83.pid).

解决方案
mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。

解决方法
请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data // /usr/local换成mysql安装路径

上一篇下一篇

猜你喜欢

热点阅读