环境准备:
- 打开终端 使用命令查询是否有mysql相关的依赖,组件等.
rpm -qa | grep mysql
因为写博客的时候已经安装好了,所以没有图片
- 如果有则使用命令卸载
rpm -e *** // 普通删除
rpm -e *** // 强力删除模式
注:***为依赖名称
开始安装
一 安装
yum -y install make gcc-g++ cmake bison-devel ncurses-devel
注:此处安装时间可能较长,半小时左右
- 解压下载好的源码包并进入解压目录
tar -zxvf 文件名
cd 解压好的目录名
- 编译
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DENABLE_DOWNLOADS=1
注:这里为一句命令 不是多句
/user/local是安装目录,亲测放到别的目录也行
错误解决:
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysqldb
错误原因:缺少文件
解决方法:
yum install ‘perl(Data::Dumper)’
- 编译并且安装
make && make install
注:耗时大致半小时到40分钟, 编译过程中出现警告和红色的语句不是错误,无需理会
二 配置mysql组和用户
- 创建mysql 用户和mysql 用户组 并且修改文件夹权限 (如果有则直接修改文件夹权限就好了)
// 查看用户列表
cat /etc/passwd
// 查看用户组列表
cat /etc/group
// 创建用户组
groupadd mysql
// 创建用户并且放到mysql组
useradd -g mysql mysql
// 由于安装的时候是安装到了/usr/local/mysql文件夹.
// 所以要把这个文件夹的所属修改成刚刚创建的mysql组和mysql用户
chown -R mysql:mysql /usr/local/mysql
三 初始化mysql
- 进入mysql的安装文件夹
cd /usr/local/mysql
- 初始化系统自带的数据库和表
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
- 修改配置文件.
有的系统安装时候会在/etc文件夹下创建my.cnf文件,由于mysql数据库读取配置优先级是先到/etc文件夹下寻找my.cnf文件,如果没有,才会到我们mysql安装目录下寻找my.cnf 所以需要修改/etc文件夹下的my.cng文件(防止干扰),让他读取安装目录下的my.cnf文件
mv /etc/my.cnf /etc/my.cnf.bak
- 配置开机启动
1、拷贝脚本
cp support-files/mysql.server /etc/init.d/mysql
2、添加服务mysql
chkconfig --add mysql
3、设置mysql服务为自启动
chkconfig mysql on
5)启动mysql 并且进入数据库 ,修改密码
// 1、启动mysql
service mysql start
// 2、进入/usr/local/mysql/bin文件夹
cd /usr/local/mysql/bin
// 3、进入数据库(出世密码为空)
./mysql -u root -p 或 ./mysql -u root
// 4、修改数据库密码
SET PASSWORD = PASSWORD('你的密码');
- 配置环境变量 使其能直接使用mysql 的命令 而不需要进入mysql的bin目录下才能使用
// 1 进入profile文件
vim /etc/profile
// 2 进入最后一行, 添加配置
PATH=/usr/local/mysql/bin:$PATH
// 3 刷新配置文件
source /etc/profile
- 愉快的使用吧