源码安装部署MySQL数据库 二进制安装部署MySQL数据库 yum安装数据库
Posted 我的紫霞辣辣
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了源码安装部署MySQL数据库 二进制安装部署MySQL数据库 yum安装数据库相关的知识,希望对你有一定的参考价值。
注意:数据库服务比较占用内存空间,如果是测试环境,使用数据库服务最好将内存调至4G!
mysql官网
下载地址: https://downloads.mysql.com/archives/community/
1.源码安装数据库(自定义目录安装)
1)上传或下载代码包
rz mysql-5.6.46.tar.gz
2)安装依赖
yum install -y ncurses-devel libaio-devel gcc gcc-c++ glibc cmake autoconf openssl openssl-devel
3)解压
tar xf mysql-5.6.46.tar.gz
4)创建目录
mkdir /service
5)生成cmake
cd mysql-5.6.46/
cmake . -DCMAKE_INSTALL_PREFIX=/service/mysql-5.6.46 \\
-DMYSQL_DATADIR=/service/mysql-5.6.46/data \\
-DMYSQL_UNIX_ADDR=/service/mysql-5.6.46/tmp/mysql.sock \\
-DDEFAULT_CHARSET=utf8 \\
-DDEFAULT_COLLATION=utf8_general_ci \\
-DWITH_EXTRA_CHARSETS=all \\
-DWITH_INNOBASE_STORAGE_ENGINE=1 \\
-DWITH_FEDERATED_STORAGE_ENGINE=1 \\
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \\
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \\
-DWITH_ZLIB=bundled \\
-DWITH_SSL=system \\
-DENABLED_LOCAL_INFILE=1 \\
-DWITH_EMBEDDED_SERVER=1 \\
-DENABLE_DOWNLOADS=1 \\
-DWITH_DEBUG=0
#程序存放位置
cmake . -DCMAKE_INSTALL_PREFIX=/service/mysql-5.6.46 \\
#数据存放位置
-DMYSQL_DATADIR=/service/mysql-5.6.46/data \\
#socket文件存放位置
-DMYSQL_UNIX_ADDR=/service/mysql-5.6.46/tmp/mysql.sock \\
#使用utf8字符集
-DDEFAULT_CHARSET=utf8 \\
#校验规则
-DDEFAULT_COLLATION=utf8_general_ci \\
#使用其他额外的字符集
-DWITH_EXTRA_CHARSETS=all \\
#支持的存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \\
-DWITH_FEDERATED_STORAGE_ENGINE=1 \\
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \\
#禁用的存储引擎
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \\
#启用zlib库支持(zib、gzib相关)
-DWITH_ZLIB=bundled \\
#启用SSL库支持(安全套接层)
-DWITH_SSL=bundled \\
#启用本地数据导入支持
-DENABLED_LOCAL_INFILE=1 \\
#编译嵌入式服务器支持
-DWITH_EMBEDDED_SERVER=1 \\
# mysql5.6支持了google的c++mock框架了,允许下载,否则会安装报错。
-DENABLE_DOWNLOADS=1 \\
#禁用debug(默认为禁用)
-DWITH_DEBUG=0
6)安装make和make install
make && make install
7)做软连接
ln -s /service/mysql-5.6.46 /service/mysql
8)创建数据库用户
useradd mysql -s /sbin/nologin -M
9)拷贝配置文件和启动文件
9.1)进入配置文件和脚本的目录
cd /service/mysql/support-files/
9.2)拷贝配置文件
cp my-default.cnf /etc/my.cnf
10)配置system管理MySQL服务
10.1)配置system管理MySQL
vim /usr/lib/systemd/system/mysql.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/service/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
10.2)重新加载启动文件列表
systemctl daemon-reload
11)初始化数据库
11.1)进入初始化目录
cd /service/mysql/scripts/
11.2)执行初始化命令
./mysql_install_db --user=mysql --basedir=/service/mysql --datadir=/service/mysql/data
12)创建socket文件目录(二进制安装没有)
12.1)先创建tmp目录
mkdir /service/mysql/tmp
13)授权数据库目录
chown -R mysql.mysql /service/mysql
chown -R mysql.mysql /service/mysql-5.6.46
14)system管理启动MySQL
systemctl start mysql
ps -ef | grep [m]ysql
netstat -lntp | grep 3306
15)配置环境变量直接使用mysql
vim /etc/profile.d/mysql.sh
export PATH=/service/mysql/bin:$PATH
source /etc/profile
16)修改root用户密码
mysql -u root -p #默认root用户密码为空,有多种方式重置root密码
第一种:
MySQL > SET PASSWORD=PASSWORD('123');
Query OK, 0 rows affected (0.00 sec)
第二种:
MySQL > grant all privileges on *.* to root@'%' identified by '123';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
注意:两种重置密码方式有区别。
2.二进制安装数据库(自定义安装目录)
1)上传二进制包
rz mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
2)安装依赖
yum install -y ncurses-devel libaio-devel gcc gcc-c++ glibc cmake autoconf
3)解压安装包
tar xf mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
4)创建自定义目录
mkdir /service
5)移动目录并改名
mv mysql-5.6.46-linux-glibc2.12-x86_64 /service/mysql-5.6.46
6)做软连接
ln -s /service/mysql-5.6.46 /service/mysql
7)创建数据库用户
useradd mysql -s /sbin/nologin -M
8)拷贝配置文件和启动文件
8.1)进入配置文件和脚本的目录
cd /service/mysql/support-files/
8.2)拷贝配置文件
cp my-default.cnf /etc/my.cnf
8.3)拷贝启动脚本
cp mysql.server /etc/init.d/mysqld
9)初始化数据库
9.1)进入初始化目录
cd /service/mysql/scripts/
9.2)执行初始化命令
./mysql_install_db --user=mysql --basedir=/service/mysql --datadir=/service/mysql/data
10)如果是二进制安装到自定义目录下需要修改脚本目录
sed -i 's#/usr/local#/service#g' /etc/init.d/mysqld /service/mysql/bin/mysqld_safe
11)授权数据库目录
chown -R mysql.mysql /service/mysql
chown -R mysql.mysql /service/mysql-5.6.46
12)启动数据库
/etc/init.d/mysqld start
13)检查进程和端口
ps -ef | grep [m]ysql
netstat -lntp | grep 3306
14)配置system管理MySQL服务
14.1)配置system管理MySQL
vim /usr/lib/systemd/system/mysql.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/service/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
14.2)重新加载启动文件列表
systemctl daemon-reload
15)配置my.cnf
15.1)配置指定数据库安装目录与数据目录
vim /etc/my.cnf
[mysqld]
basedir=/service/mysql
datadir=/service/mysql/data
15.2)systemctl启动myql数据库
systemctl restart mysql
16)配置环境变量直接使用mysql
vim /etc/profile.d/mysql.sh
export PATH=/service/mysql/bin:$PATH
source /etc/profile
3. yum安装数据库
1. 下载mysql5.7版本软件包
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
rpm -Uvh mysql57-community-release-el7-9.noarch.rpm
2. 安装mysql
yum -y install mysql mysql-server
3. 启动MySQL
systemctl start mysqld
4. 检查MySQL运行状态
systemctl status mysqld
5. 查看数据库日志文件中管理员的初始密码
cat /var/log/mysqld.log | grep password
# 2021-06-30T09:30:59.167151Z 1 [Note] A temporary password is generated for root@localhost: G,lhEiTup2.Y
6.初始化密码
mysql -uroot -p" G,lhEiTup2.Y"
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Na123***' PASSWORD EXPIRE NEVER; # 设置的密码必须大小写+数字+符号
7.将初始化的密码写入客户端配置文件
vim /etc/my.cnf
[mysql]
user="root"
password="Na123***"
以上是关于源码安装部署MySQL数据库 二进制安装部署MySQL数据库 yum安装数据库的主要内容,如果未能解决你的问题,请参考以下文章
LAMP环境部署:Apache源码安装+MySQL二进制安装+PHP源码安装+Nginx源码安装
LNMP(nginx php-fpm mysql) 环境部署——mysql