離線安裝mysql數據庫

開源數據庫mysql,目前使用很普遍。做爲程序員開發項目時,與關係型數據庫打交道最多的估計也是mysql了。那麼本文首先講解如何離線安裝mysql數據庫,畢竟有不少項目部署在內網。node

一、離線安裝

本人的安裝環境爲CentOS Linux release 7.5.1804 (Core),那麼其它的環境也能夠參考配置。mysql

(1)、到mysql官網(https://dev.mysql.com/downloads/mysql/)下載5.7.25版本linux

(2)、查看系統中是否存的mariadb,若是存在,將其刪除,便可以以下操做:程序員

rpm -qa | grep mariadb

若是有返回信息,說明存在mariadb,本人的系統返回:sql

mariadb-libs-5.5.56-2.el7.x86_64

刪除命令爲:數據庫

rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

(3)、將mysql-5.7.25-linux-glibc2.12-x86_64.tar安裝包上傳到opt目錄下,並依次執行以下的解壓命令:bash

tar -xvf mysql-5.7.25-linux-glibc2.12-x86_64.tar

執行上面的命令後,能夠獲得mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz文件,而後再解壓該文件:微信

tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

那麼此時在opt目錄就會mysql-5.7.25-linux-glibc2.12-x86_64目錄,將該目錄修改爲mysql-5.7.25,即:架構

mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql-5.7.25

(4)、建立mysql用戶和組socket

groupadd mysql
useradd -g mysql mysql

# 設置用戶的密碼
passwd mysql

(5)、建立數據庫的數據目錄、日誌目錄和臨時目錄,即:

# 數據目錄
mkdir /opt/mysql-5.7.25/data

# 日誌目錄
mkdir /opt/mysql-5.7.25/log

# 臨時目錄
mkdir /opt/mysql-5.7.25/tmp

將mysql-5.7.25目錄及子目錄的所屬用戶及組都設置爲mysql,即:

chown -R mysql:mysql /opt/mysql-5.7.25

(6)、在etc目錄下建立my.cnf配置文件,即:

touch /etc/my.cnf

my.cnf的配置內容爲:

[client]
port = 3306
socket = /opt/mysql-5.7.25/tmp/mysql.sock

[mysqld]
port = 3306
basedir = /opt/mysql-5.7.25
datadir = /opt/mysql-5.7.25/data
tmpdir  = /opt/mysql-5.7.25/tmp
socket = /opt/mysql-5.7.25/tmp/mysql.sock
pid-file = /opt/mysql-5.7.25/log/mysql.pid
log_error = /opt/mysql-5.7.25/log/error.log
slow_query_log_file = /opt/mysql-5.7.25/log/slow.log

注意:該配置不是最優的配置,只是測試用途

(7)、初始化數據庫:

/opt/mysql-5.7.25/bin/mysqld --initialize --user=mysql

(8)、設置開機自啓動mysql服務:

cp /opt/mysql-5.7.25/support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld

切換mysql用戶:

su mysql

# 啓動mysql服務
service mysqld start

(9)、專門爲mysql用戶配置mysql的環境變量,即:

首先肯定當前用戶爲mysql,而後編輯:

vi ~/.bash_profile

加入以下內容:

export PATH=$PATH:/opt/mysql-5.7.25/bin

而後:

source ~/.bash_profile

(10)、獲取初始密碼:

在log目錄下有一個error.log,裏面有一段相似以下內容:

2019-04-15T20:48:49.436053Z 1 [Note] A temporary password is generated for root@localhost: 0-7YeFpwhf>a

那麼初始密碼就是:

0-7YeFpwhf>a

注意:不一樣機器操做的初始密碼確定是不同的,這裏只是以本人的爲例。

(11)、登陸數據庫:

mysql -u root -p

而後輸入初始密碼,便可以登陸成功:

(12)、重置密碼:

set password for root@localhost=password("jgyw@123");

二、測試

建立一個jgyw模式:

create schema jgyw;

而後查看模式:

show schemas;

即:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| jgyw               |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

在jgyw模塊下建立comm_config表,即:

use jgyw;

# 建表
CREATE TABLE `comm_config` (
  `configId` varchar(200) NOT NULL,
  `configValue` varchar(1024) DEFAULT NULL,
  `description` varchar(2000) DEFAULT NULL,
  PRIMARY KEY (`configId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

查看錶:

show tables;

結果爲:

+----------------+
| Tables_in_jgyw |
+----------------+
| comm_config    |
+----------------+
1 row in set (0.00 sec)

插入一條測試數據,即:

insert into comm_config(configId, configValue, description) values('name', '架構與我', '測試一下');

查詢一下,即:

select * from comm_config;

結果爲:

+----------+--------------+--------------+
| configId | configValue  | description  |
+----------+--------------+--------------+
| name     | 架構與我     | 測試一下     |
+----------+--------------+--------------+
1 row in set (0.00 sec)

關注我

以你最方便的方式關注我:
微信公衆號:

相關文章
相關標籤/搜索