MySQL/mariadb知识点——安装篇(3)编译安装

源码编译安装

1、获取源码

# wget https://downloads.mariadb.org/interstitial/mariadb-10.2.15/source/mariadb-10.2.15.tar.gz/from/http%3A//sfo1.mirrors.digitalocean.com/mariadb/

2、准备基础环境

[root@centos7 ~]# yum -y install bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel gcc gcc-c++ cmake libevent-devel gnutls-devel libaio-devel openssl-devel ncurses-devel libxml2-devel 

3、创建组和用户

[root@centos7 ~]# groupadd -r -g 27 mysql
[root@centos7 ~]# useradd -r -u 27 -g 27 -m -d /data/mysqldb -s /sbin/nologin mysql

4、编译安装

[root@centos7 ~]# tar xf mariadb-10.2.15.tar.gz 
[root@centos7 ~]# cd mariadb-10.2.15
[root@centos7 mariadb-10.2.15]# cmake . 
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
-DMYSQL_DATADIR=/data/mysqldb/ 
-DSYSCONFDIR=/etc 
-DMYSQL_USER=mysql 
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_ARCHIVE_STORAGE_ENGINE=1 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 
-DWITH_PARTITION_STORAGE_ENGINE=1  
-DWITHOUT_MROONGA_STORAGE_ENGINE=1 
-DWITH_DEBUG=0 
-DWITH_READLINE=1 
-DWITH_SSL=system 
-DWITH_ZLIB=system 
-DWITH_LIBWRAP=0 
-DENABLED_LOCAL_INFILE=1  
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock 
-DDEFAULT_CHARSET=utf8 
-DDEFAULT_COLLATION=utf8_general_ci
[root@centos7 mariadb-10.2.15]# make -j4 && make install

​5、配置环境变量、修改软件安装目录权限

[root@centos7 ~]# echo "export PATH=/usr/local/mysql/bin:$PATH" >/etc/profile.d/mysql.sh
[root@centos7 ~]# . /etc/profile.d/mysql.sh
[root@centos7 ~]# setfacl -R -m u:mysql:rwx /usr/local/mysql/

6、初始化数据库、提供配置文件、提供服务启动脚本

[root@centos7 ~]# cd /usr/local/mysql/
[root@centos7 mysql]# scripts/mysql_install_db --datadir=/data/mysqldb/ --user=mysql --basedir=/usr/local/mysql/
[root@centos7 mysql]# cp support-files/my-huge.cnf /etc/my.cnf
[root@centos7 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@centos7 mysql]# chkconfig --add mysqld

7、启动并测试

[root@centos7 mysql]#systemctl start mysqld
[root@centos7 mysql]#mysql  #连接成功说明实验成功!

8、关于

关于Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)的问题

找不到mysql socket的问题,我最近碰到了好多次

重装系统以前,我的mysql,apache,php都是自己编译安装的,当时并没有碰到这些问题,

重装系统以后,我的mysql是通过yum安装的,apache1.37和php5.2是自己编译安装的,出现了这个问题

首先是mysqld启动不了,

我通过

vim /etc/my.cnf,
修改了[mysqld]选项下面的socket的值
socket=/var/lib/mysql/mysql.sock

ok,mysqld可以启动了

接下来,是mysql启动不了,同样,vim /etc/my.cnf,添加了如下脚本:

[mysql]
socket=/var/lib/mysql/mysql.sock

然后,mysqladmin启动不了,还是一样,在[mysqladmin]下面socket值设置为同样的路径

ok,可以启动了

原文地址:https://www.cnblogs.com/Gmiaomiao/p/9173901.html