/usr/local下下载boost库:
cd /usr/local
wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
下载mysql源码:
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.11.tar.gz
安装boost:
tar xzf boost_1_59_0.tar.gz
cd boost_1_59_0
./bootstrap.sh
./b2 install
安装mysql:
tar -zxvf mysql-5.7.11.tar.gz
编译:
cmake时需要有依赖库,ncurses,bison,如果cmake 途中报错如:
Curses library not found. Please install appropriate package,
yum install ncurses-devel 然后删除CMakeLists.txt,重新cmake就好
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost_1_59_0 -DSYSCONFDIR=/etc -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 -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_EMBEDDED_SERVER=1
make
make install
配置文件/etc/my.cnf
/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data/
mysqld --initialize
带有随机根密码
mysqld --initialize-insecure
无随机根密码
或者再/etc/my.cnf中加:
user=mysql
mysql默认是无法以root用户启动的
/usr/local/mysql/bin/mysqld &
/var/lib/mysql查看权限,以及配置的data路径要归属mysql,否则会报无权限
由于linux上原来有mysql所以启动报错:
MySQL: “Table ‘mysql.plugin’ doesn’t exist” after MySQL Upgrade
这个错误通常是由/etc/my.cnf引起的,里面的配置路径不对或者配置项不对