本文目录一览:
- 1、ubuntu 怎么源码安装mysql
- 2、在linux安装MySQL时采用源码编译安装,但是如何让MySQL的编译时间缩短呢?
- 3、编译环境cmake+gcc怎么编译mysql源码
- 4、linux 如何编译安装mysql?
ubuntu 怎么源码安装mysql
1.下载源码包
2.解压包
tar -zxvf mysql-5.6.33.tar.gz
3.安装必要依赖
sudo apt-get install make bison g++ build-essential libncurses5-dev cmake
4.进入安装包目录,配置MySQL安装参数 //源码安装最大的好处就是可以自定义参数,制定安装目录,方便管理
cmake -DCMAKE_INSTALL_PREFIX=[指定MySQL安装的目录]/usr/local/mysql -DSYSCONFDIR=/etc -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=[指定MySQL的数据存放目录如:]/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_DEBUG=0
make -j4 #-j数字 表示以多核心运行编译
make install #安装
5. 常用命令软连接,设置环境变量
sudo ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
6.初始化数据库
sudo /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
7.启动MySQL服务器
sudo /usr/local/mysql/bin/mysqld start
#如果启动不了,考虑编译安装时自定义数据存放目录,所以导致mysqld找不到对应的目录
解决: vi /usr/local/mysql/bin/mysqld
修改datadir = [指定MySQL的数据存放目录如:] /usr/local/mysql/data
保存退出,再次启动 sudo /usr/local/mysql/bin/mysqld start #OK 搞定
8. 启动成功后创建root用户的密码
/usr/local/mysql/bin/mysqladmin -u root password '新密码'
9.启动MySQL端
/usr/local/mysql/bin/mysql -u root -p
输入密码
10.设置环境变量
vi /home/个人目录/.bashrc 或者 vi /root/.bashrc
#在后面添加这段代码
export PATH="$PATH:/home/sy/lnmp/mysql/bin"
#重启电脑ok
#若不想重启电脑,仅限当次有效(重启失效)
#执行命令
export PATH=$PATH:/usr/local/mysql/bin
mysql --version //测试
在linux安装MySQL时采用源码编译安装,但是如何让MySQL的编译时间缩短呢?
可以试试在使用make make install 时添加-j参数,不限制内核进行编译安装。或者-j 后加内核数 。例如 make -j 4 make install -j 4
优点:速度快会相对提高很多
缺点:消耗大量CPU,内存资源。
我做过一个测试,如果不限定内核 (16核 80GB内存 )的服务器编译安装mysql 5.0.7 安装时长大致在10分钟左右,但是测试时服务器CPU跑满100% ,内存消耗至少32GB。直接使用 make make install 安装耗时45分钟,内存4GB ,CPU 10%左右。
编译环境cmake+gcc怎么编译mysql源码
方法/步骤
1
在安装mysql数据库服务器前,确保你的linux系统是可以连接网络的,下面我们将通过源码方式来安装mysql首先通过putty登入进你的Linux系统,确保系统中已经安装的gcc c++ 等编译环境,因为mysql从5.5版本开始是使用cmake编译的,如果三个环境都没安装,可以使用下面的命令进行安装:yum -y install make gcc-c++ cmake bison-devel ncurses-devel
2
查找系统里是否已经安装了mysql数据库的相关组件,使用命令:rpm -qa | grep mysql 进行查找,如果查找到,可以使用下面命令进行强制卸载:rpm -e --nodeps 包名
如果你当时在安装Linux系统时,使用的默认的安装选项,这一步可以跳过;
linux 如何编译安装mysql?
使用binary进行安装,文件名mysql-standard-5.0.18-linux-i686-glibc23.tar.gz
[1]将上述文件解压到某处,并将MySQL所以目录名改为mysql,结果应如/home/xxx/mysql
[2]根据mysql目录下的INSTALL-BINARY文件来进行安装
// 加用户组mysql,以及用户mysql;该命令无需修改
shell groupadd mysql
shell useradd -g mysql mysql
// 以下三步的主要目的是为MySQL解压目录做一个链接,放到usr/local目录中
// 首先是进入/usr/local目录;该命令无需修改
shell cd /usr/local
// 这一步可以不需要,因为已经解压了
shell gunzip /PATH/TO/MYSQL-VERSION-OS.tar.gz | tar xvf -
// 做一个到/home/xxx/mysql的链接,放在/usr/local中,该链接的名字是mysql。
// 该命令修改为ln -s /home/xxx/mysql mysql
shell
ln -s FULL-PATH-TO-MYSQL-VERSION-OS mysql
// 进入/home/xxx/mysql目录,/usr/local/mysql是到/home/xxx/mysql的链接
shell
cd mysql
// 对MySQL进行初始化(如果以前已经安装过MySQL,这一步可以简略);该命令无需修改
shell scripts/mysql_install_db --user=mysql
// 变更所有权;该命令无需修改
shell chown -R root .
shell chown -R mysql data
shell chgrp -R mysql .
// 启动MySQL服务器;该命令无需要修改
shell bin/mysqld_safe --user=mysql
[3]进入MySQL应用环境
进入mysql目录下的bin目录,运行命令./mysql -u root
-p,此时将出现password:(要求输入密码),但默认情况下root用户没有密码,所以回车即可。此时将进入MySQL界面,当然仍然只是个命令行窗口而以。
[4]简单使用MySQL
在MySQL环境中运行命令show databases;,将会显示已经有的数据库(如test);运行命令use test,将进入test数据库...
注意:如果在运行./mysql -u root -p之后,报
Can't connect to local MySQL server through socket '/tem/mysql.sock'
的错误,那么可能有以下几种情况:
[1]mysql.sock并不在/tmp目录下,而是在其它某个目录下(如,/var/lib/mysql目录)。这时只需要将这个mysql.sock做链接到/tmp目录下,运行命令:
ln -s MYSQL.SOCK_PATH /tmp/mysql.sock
[2]在同学的笔记本的Linux中,会在/tmp下生成mysql.sock,但重新启动Linux后,该文件被删除。这时也可以用情况2中的解决方法,或者每次都运行命令:./mysqld_safe --user=mysql