Linux笔记(61)——mysql源码包安装

来源:互联网 发布:仟佰盾口罩 淘宝多少钱 编辑:程序博客网 时间:2024/05/29 17:55

  • 安装mysql
    • 安装cmake
    • 创建mysql用户与用户组
    • 使用cmake安装mysql
    • 编译与安装
    • 初始化数据库
    • 设置为系统服务
    • 配置环境变量
    • 设置密码
    • 设置远程访问
  • 补充php访问mysql

安装mysql

关于mysql的安装,mysql官方有给出文档,不同版本的安装会有些许差别,最好参考一下文档

mysql5.6安装官方文档

官方文档大致内容如下:

这里写图片描述

现在我们自己开始安装

1.安装cmake

从mysql5.5之后的版本开始,mysql源码安装需要使用cmake工具,因此我们要先安装cmake以及其他一些依赖的包

yum -y install cmakeyum -y install bisonyum -y install ncurses-devel

2.创建mysql用户与用户组

[root@localhost ~]# groupadd mysql[root@localhost ~]# useradd -g mysql mysql

3.使用cmake安装mysql

进入解压出来的mysql目录

[root@localhost mysql-5.6.29]# cmake  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_DATADIR=/usr/local/mysql/data \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DEXTRA_CHARSETS=all \-DENABLED_LOCAL_INFILE=1 

这条命令中的参数说明:

参数 作用 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql mysql安装目录 -DMYSQL_DATADIR=/usr/local/mysql/data 数据所在目录 -DDEFAULT_CHARSET=utf8 字符集 -DDEFAULT_COLLATION=utf8_general_ci 校验字符 -DEXTRA_CHARSETS=all 安装所有扩展字符集 -DENABLED_LOCAL_INFILE=1 允许从本地导入数据 -DSYSCONFDIR 配置文件路径,如果不设置,默认放在/etc下


可参考官方给出的参数说明:cmake参数说明

如果安装的时候报了一个错误:

这里写图片描述

说明ncurses-devel没装,请参考第一步:

然后删掉CMakeCache.txt,再用cmake安装:

4.编译与安装

上面步骤都没问题了,就编译安装

make && make install

5.初始化数据库

先修改权限,然后利用mysql提供给我们的脚本初始化数据库。我们都知道mysql有几个自带的数据库,比如mysql,里面放着user表之类的,这一步就是创建这些数据库

cd /usr/local/mysqlchown -R mysql .chgrp -R mysql .scripts/mysql_install_db --user=mysqlchown -R root .chown -R mysql data

到这里mysql安装就完成了。不过我们还需要一些后续工作,往下看

6.设置为系统服务

进入mysql源码包

cp support-files/mysql.server /etc/init.d/mysqld

这样我们就可以使用service mysqld start来启动mysql

7.配置环境变量

这一步的目的是为了让你能够在任何目录下,直接敲mysql -uroot -p mysql命令来进入mysql命令模式

vim /etc/profile

在文件最后加上:

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATHexport PATH

8.设置密码

利用mysql提供给我们的mysqladmin脚本来设置密码

先进入安装目录/bin下

[root@zhoujun bin]# mysqladmin -uroot -p password '123'

用户名为root,密码为123

9.设置远程访问

我们经常使用远程工具来访问数据库,那么得在mysql命令模式下执行:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION; FLUSH PRIVILEGES;

解释:允许root用户在任何ip下使用密码123登录,并且有所有权限

补充:php访问mysql

php访问mysql需要在安装php的把mysqli模块给装上,具体请参考Linux笔记(60)——详解apache集成php 中php的安装说明

0 0
原创粉丝点击