源码安装部署MySQL数据库 二进制安装部署MySQL数据库 yum安装数据库

Posted 我的紫霞辣辣

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了源码安装部署MySQL数据库 二进制安装部署MySQL数据库 yum安装数据库相关的知识,希望对你有一定的参考价值。

注意:数据库服务比较占用内存空间,如果是测试环境,使用数据库服务最好将内存调至4G!

mysql官网

官网: https://www.mysql.com/

下载地址: 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

项目部署环境搭建

linux12 -MYSQL数据库 -->02数据库安装多实例部署

zabbix ubuntu 部署

MYSQL