mysql-5.7.20 源码安装

运行环境:

Ubuntu 16.04.3 LTS


1、添加mysql用户组并添加mysql用户,并且不允许登录

groupadd mysql

useradd -r -g mysql -s /bin/false -M mysql


2、下载mysql源码包,此处下载为mysql5.7.20

https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20.tar.gz

解压

tar -zxvf mysql-5.7.20.tar.gz

cd mysql-5.7.20


3、更新环境

apt-get update

apt-get upgrade

安装gcc、bison、cmake

apt-get install gcc

apt-get install bison

apt-get install cmake


4、安装

4.1、创建安装路径以及数据存储路径

mkdir /usr/local/mysql

mkdir /usr/local/mysql/data


4.2、cmake配置

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/mysql/mysql-boost \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1


错误1:ubuntu mysql Could NOT find Git

apt-get install git

另外需要rm CMakeCache.txt

错误2:No CMAKE_CXX_COMPILER could be found

apt-get install g++

错误3:Curses library not found

apt-get install libncurses5-dev

另外需要rm CMakeCache.txt

错误4:g++: internal compiler error: Killed (program cc1plus)

主要原因大体上是因为内存不足,有点坑 临时使用交换分区来解决吧
sudo dd if=/dev/zero of=/swapfile bs=64M count=16
sudo mkswap /swapfile
sudo swapon /swapfile
安装完成之后,删除创建的交换分区
sudo swapoff /swapfile
sudo rm /swapfile


4.3、make && make install 


5、权限限定

chown -R mysql: /usr/local/mysql


6、初始化数据库

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

初始化完毕,信息最后一行为用户的密码A



7、启动

 /usr/local/mysql/bin/mysqld_safe


8、修改数据库初始用户密码

打开另外一个ssh窗口

cd  /usr/local/mysql/bin
./mysql  -uroot -p'Zz3.


修改密码

alter user 'root'@'localhost' identified by '123456';


9、设置mysql配置文件

mv /etc/my.cnf /etc/my.cnf.bak //把已有的配置重命名

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

注意:最新版本开始已经没有my-default.cnf这个文件了,因此可以从低版本中拷贝一个重命名my.cnf放到路径/etc/my.cnf


10、把mysql加入到系统环境变量中

echo "export PATH=$PATH:/usr/local/mysql/bin"  >> /etc/profile
source /etc/profile


11、加入到系统服务

sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
sudo chmod +x /etc/init.d/mysql
update-rc.d mysql defaults
查看
sysv-rc-conf
sysv-rc-conf --list
sysv-rc-conf --list mysql


根据提示:进行安装update-rc.d、sysv-rc-conf


注:第11步操作主要是加入到系统服务,当系统重启后,它会随着系统自动重启,无需手动操作,同时你可以使用以下命令操作
service mysql start    //启动
service mysql stop   //停止
service mysql restart    //重启


最后,重启系统,reboot

你可能感兴趣的:(php,mysql)