mysql源代码编译安装(可自拟版本)
mysql源代码编译安装(可自拟版本)centOS7 mysql5.6.40为例
准备
关闭防火墙的条件下
1.yum安装
yum install ncurses-devel libaio-devel gcc make cmake -y2.rpm查询一下
rpm -qa ncurses-devel libaio-devel 3.创建mysql用户,用于授权目录
-s /sbin/nologin 不允许用户进行任何交互操作
-M 不要自动创建用户的 home 目录
mysql 为用户名
useradd -s /sbin/nologin -M mysql查看用户是否已经存在
id mysql安装步骤
在想要指定目录下载 这里我以/opt/mysql为例
cd /opt
mkdir mysql
cd mysql1.下载源码
可以换别的版本mysql官方下载链接 找到对应tar.gz包 点击download后复制下载连接即可
wget https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.40.tar.gz
2.解压缩安装mysql
tar -zxvf mysql-5.6.40.tar.gz 3.进入mysql目录 cmake
cd mysql-5.6.40cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 -DMYSQL_DATADIR=/application/mysql-5.6.40/data -DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/tmp/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_unicode_ci -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0
4.cmake编译参数设置执行完后,就会自动生成makefile,可以执行
makemake install5.创建软链接
ln -s /application/mysql-5.6.40/ /application/mysql6.mysql初始化操作
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql7.使用mysql初始化自动生成的管理脚本
cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
cp /application/mysql/support-files/my-default.cnf /etc/my.cnf
chmod 700 /etc/init.d/mysqld8.创建tmp 修改属主属组 启动mysql
mkdir -p /application/mysql/tmp
chown -R mysql.mysql /application/mysql-5.6.40/
/etc/init.d/mysqld start 9.添加到环境变量
vim /etc/profile
在最下面添加一行
export PATH=/application/mysql/bin:$PATH
保存退出 重新读取以下配置文件
source /etc/profile10.登录使用mysql
mysql -uroot -pmysql安全配置
修改密码 默认没有密码,不安全
注意:要先输入你的密码 这里密码为空直接回车
# mysqladmin -uroot -p password
Enter password:
New password:
Confirm new password: 将mysql添加到系统服务
先把mysql关掉
/etc/init.d/mysqld stopvim /usr/lib/systemd/system/mysql.service注意这里的路径要跟你的安装路径一致 pid文件路径可以通过 开启mysql服务时 ps -ef | grep mysql来查看
PIDFile=/application/mysql-5.6.40/data/localhost.localdomain.pid
ExecStart=/application/mysql-5.6.40/support-files/mysql.server start
Description=Mysql
After=syslog.target network.target remote-fs.target nss-lookup.target
Type=forking
PIDFile=/application/mysql-5.6.40/data/localhost.localdomain.pid
ExecStart=/application/mysql-5.6.40/support-files/mysql.server start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=false
WantedBy=multi-user.targetsystemctl daemon-reload
systemclt start mysql
来源:https://www.cnblogs.com/xuxuxuxuxu/p/17607222.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页:
[1]