ubuntu16.04编译安装mysql源码
https://blog.csdn.net/Touatou/article/details/79601104虚拟机安装:VirtualBox-5.2.0-118431-Win.exe,下载地址:http://cn.ubuntu.com/download/1. Ubuntu iso映像下载:https://cn.ubuntu.com/download/注意:内存最好分配2G,2个处理...
关闭MySQL通过mysqladmin命令,
mysqladmin -uroot -p123456 shutdown
mysql 5.6 以前的版本都可以直接在-p后直接加上密码,如果不支持智能 mysqladmin -uroot -p shutdown
然后再输入密码;需要注意的是,该命令执行有一定的延迟不是马上关闭;
启动mysql出错:Can’t find messagefile '/usr/share/mysql/errmsg.sys
http://www.phpfensi.com/mysql/20150417/9386.html?wopktu=e2oqz1
ubuntu16.04编译安装mysql源码:
https://blog.csdn.net/Touatou/article/details/79601104
CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作:
https://blog.csdn.net/sssssscccccc/article/details/80919826
MySQL 5.7.19 编译安装与配置:
https://blog.csdn.net/zhaosiwenzhaosiwen/article/details/82818324
虚拟机安装:VirtualBox-5.2.0-118431-Win.exe,下载地址: http://cn.ubuntu.com/download/
1. Ubuntu iso映像下载:https://cn.ubuntu.com/download/
注意:内存最好分配2G,2个处理器,显存32MB,硬盘空间30G以上不然不够用。
2. 所需依赖和软件:
apt-get install build-essential (修改为sudo apt-get install build-essential)
apt-get install wget (修改为sudo apt-get install wget)
apt-get install bison (修改为sudo apt-get install bison)
apt-get install lrzsz (修改为sudo apt-get install lrzsz)
apt-get install vim (修改为sudo apt-get install vim)(如果出现不能安装问题:rm /var/lib/dpkg/lock-f)
apt-get install libncurses5-dev
3. 下载boost_1_59_0(必须是这个版本),下载地址:https://sourceforge.net/projects/boost/files/boost/1.59.0/
提示:本过程较长,请耐心等待。。。
4. 最新发行版cmake-3.9.4,下载地址: https://cmake.org/download/
5. 和mysql-5.7.19源码,下载地址: https://downloads.mysql.com/archives/community/
6. boost_1_59_0操作:假如下载到/usr/local/src目录下
进入目录cd /usr/local/src
然后解压tar -xzvf boost_1_59_0.tar.gz
进入boost:cd boost_1_59_0
进行配置:./bootstrap.sh
编译:./b2
安装:./b2 install (修改为sudo ./b2 install)
测试boost是否安装成功:
在linux下任意目录下创建test.cpp
写入如下代码:
#include<iostream>
#include<boost/lexical_cast.hpp>
int main()
{
int a = boost::lexical_cast<int>("123456");
std::cout << a <<std::endl;
return 0;
}
运行命令:
# g++ test.cpp -o test
# ./test
将得到输出结果为:123456,代表boost安装成功。
6. cmake操作:依然下载到/usr/local/src目录下,cd /usr/local/src。
解压:tar -xzvf cmake-3.8.0.tar.gz。
进入cmake目录:cd cmake-3.8.0
进行配置:./bootstrap
编译:make
安装:make install (修改为sudo make install)
7. 添加mysql用户和所属组:
/usr/sbin/groupadd mysql (修改为:sudo /usr/sbin/groupadd mysql)
/usr/sbin/useradd -g mysql mysql (修改为:sudo /usr/sbin/useradd -g mysql mysql)
创建mysql安装目录和数据目录:
mkdir /home/lu/software_new/mysql (修改为:sudo mkdir /home/lu/software_new/mysql )
mkdir /home/lu/software_new/mysql/data (修改为:sudo mkdir /home/lu/software_new/mysql/data)
修改mysql目录所有者:
chown -R mysql:mysql /home/lu/software_new/mysql
(修改为:sudo chown -R mysql:mysql /home/lu/software_new/mysql)
8. 获取mysql源码包:还在/home/lu/software_new/目录下
解压:
tar -xzvf mysql-5.7.19.tar.gz
进入mysql目录:
cd mysql-5.7.19
cmake编译配置:(此处是dbug版本的)
cmake . -DWITH_DEBUG=on -DCMAKE_INSTALL_PREFIX=/home/lu/software_new/mysql -DMYSQL_DATADIR=/home/lu/software_new/mysql/data -DWITH_BOOST=/home/lu/software/boost_1_59_0
(下面这种编译出来的文件会小很多(非DEBUG))
cmake -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=/home/lu/software_new/mysql -DMYSQL_DATADIR=/home/lu/software_new/mysql/data -DWITH_BOOST=/home/lu/software/boost_1_59_0
编译:
sudo make
安装:
sudo make install
如果只是编译源码,得到mysqld的话,只需要到此步就可以了!!!
9. 到mysql的安装目录bin下,初始化数据库,一旦初始化出错,要删掉mysql/data文件夹内的内容重新初始化
cd /usr/local/mysql/bin
sudo ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data/ --basedir= /usr/local/mysql --socket=/usr/local/mysql/mysql.sock (提示:这里一定要一行都敲完)
运行后最后一句[note] 生成了一个mysql默认密码,复制到一个地方,保存下来。
10. 添加mysql服务,拷贝mysql配置文件
回到mysql安装目录 cd ..
进入support-files目录 cd support-files
复制启动文件 sudo cp -a mysql.server /etc/init.d/mysql
11. 启动mysql(以root用户身份)
service mysql start
注:目前的环境搭建过程中,该命令执行失败,可行的做法是执行
./mysqld --defaults-file=/home/m201873306/software_new/my.cnf
但是有时候会提示某文件应该是可写的,因此目前的可解决方案是:
sudo chmod -R 777 /home/m201873306/software_new
12. 设置开机自启:(以root用户身份)
Systemctl enable mysql (修改为update-rc.d mysql defaults)
(关闭开机自启动:update-rc.d -f mysql remove)
13. 登录mysql
到mysql安装目录的bin下 cd bin
./mysql -uroot -p
Enter password: //输入之前保存的默认密码
14. 修改root密码
SET PASSWORD = PASSWORD('123456');
刷新mysql的系统权限相关表
flush privileges;
退出mysql:quit
另外需要连接xshell的:sudo apt-get install ssh
apt-get install openssh-server
vim /etc/ssh/sshd_config 修改permitrootlogin:yes
在家目录下 ifconfig 记住inet addr
在xshell上新建连接
Ubuntu vim 小配置:
安装工具cscope步骤:
1. ./configure
2. make
3. make install
接下来,安装调试工具:(可以参考eclipse调试mysql源码)
Eclipse IDE for C/C++ Developers: https://www.eclipse.org/downloads/eclipse-packages/
提示:eclipse依赖jdk环境,必须先安装jdk。
新建项目file->new->make file project with existing code
Browse 选择cmake后mysql 的路径,右下角进度条显示文件导入进度。
[mysqld]
port=3306
datadir=/home/lu/software_new/mysql/data
socket=/home/lu/software_new/mysql/mysql.sock
basedir=/home/lu/software_new/mysql/
language = /home/lu/software_new/mysql/share/english #此处为language配置项
[mysqld_safe]
log-error=/home/lu/software_new/mysql/logs/mysqld.log
pid-file=/home/lu/software_new/mysql/pids/mysqld.pid
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[client]
default-character-set=utf8
socket=/home/lu/software_new/mysql/mysql.sock
[mysql]
default-character-set=utf8
socket=/home/lu/software_new/mysql/mysql.sock
#
# include all files from the config directory
#
!includedir /etc/mysql/conf.d/
更多推荐
所有评论(0)