最好有 Xshell 和 Xftp 方便操作虚拟机!
CentOS7离线安装mysql数据库!
cmd窗口上传:
命令规则:scp mysql安装包物理机路径 root@虚拟机ip:虚拟机上传路径
scp D:\alinux\mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz root@192.168.0.128:/usr/local/soft/
本文案例上传目录为:/usr/local/soft
// 进入上传目录
[root@localhost /]# cd /usr/local/soft/
// 解压mysql安装包 命令规则:# tar -zxvf 【安装包名称】
[root@localhost soft]# tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
// 重命名为mysql 命令规则:# mv【安装包名称】mysql
[root@localhost soft]# mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql
// 添加mysql用户组
[root@localhost mysql]# groupadd mysql
// 添加mysql用户并加入用户组
[root@localhost mysql]# useradd -r -g mysql mysql
// 创建mysql存储数据data目录
[root@localhost mysql]# mkdir /usr/local/soft/mysql/data
// 将mysql目录更换成mysql用户组
[root@localhost mysql]# chown -R mysql:mysql /usr/local/soft/mysql
// 创建mysql存储mysq.sock文件目录
[root@localhost mysql]# mkdir /var/lib/mysql
// 将目录更换成mysql用户组
[root@localhost mysql]# chown -R mysql:mysql /var/lib/mysql
// 进入etc目录
[root@localhost mysql]# cd /etc
// vi编辑my.conf文件
[root@localhost etc]# vi my.conf
* 复制下方命令进去:
注意:命令中的路径填写自己的安装位置
[mysql]
socket=/var/lib/mysql/mysql.sock
default-character-set=utf8
[mysqld]
socket=/var/lib/mysql/mysql.sock
port=3306
basedir=/usr/local/soft/mysql
datadir=/usr/local/soft/mysql/data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
explicit_defaults_for_timestamp=true
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysql.server]
user=mysql
basedir=/usr/local/soft/mysql
注意:mysql5.7和之前版本不同,很多都是这个命令:…/scripts/mysql_install_db --user=mysql,
而mysql5.7的mysql_install_db命令是在bin目录下的建议用 mysqld --initialize命令
// 进入mysql安装目录
[root@localhost etc]# cd /usr/local/soft/mysql
// 执行初始化命令,注意路径对应自己的安装路径
[root@localhost mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/soft/mysql --datadir=/usr/local/soft/mysql/data
安装完成(示例):
注意:root@localhost: Ry*NgEjpe9%s
这是mysql的初始密码,记住这个密码,后面修改密码要用。
因为本文不是安装在默认路径下(/usr/local),所以需要更改安装目录
// 进入 support-files 目录
[root@localhost mysql]# cd support-files/
// 编辑mysql.server
[root@localhost support-files]# vi mysql.server
// 修改如下两个值
basedir=【mysql安装路径】
datadir=【mysql数据存放路径】
将脚本复制到资源目录下
// 复制到 /etc/rc.d/init.d/ 下,并更名为 mysqld
[root@localhost support-files]# cp mysql.server /etc/rc.d/init.d/mysqld
// 进入init.d目录
[root@localhost support-files]# cd /etc/rc.d/init.d
// 设置运行权限
[root@localhost init.d]# chmod +x mysqld
// 添加mysql服务
[root@localhost init.d]# chkconfig --add mysqld
// 查看服务 3、4、5状态为开或者为 on 则表示成功。
[root@localhost init.d]# chkconfig --list mysqld
mysqld 0:关 1:关 2:开 3:开 4:开 5:开 6:关
active 状态为 active (running) 即为启动成功
// 启动mysql服务
[root@localhost /]# systemctl start mysql
// 查看服务状态
[root@localhost /]# systemctl status mysql
● mysqld.service - LSB: start and stop MySQL
Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
Active: active (running) since 五 2022-09-09 15:43:18 CST; 1min 5s ago
Docs: man:systemd-sysv-generator(8)
Process: 77112 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/mysqld.service
├─77117 /bin/sh /usr/local/soft/mysql/bin/mysqld_safe --datadir=/usr/local/soft/mysql/data --pid-file=/usr/local/soft/mysql/data/localhost.localdomain.pid
└─77202 /usr/local/soft/mysql/bin/mysqld --basedir=/usr/local/soft/mysql --datadir=/usr/local/soft/mysql/data --plugin-dir=/usr/local/soft/mysql/lib/plugin --user=mysql --lo...
9月 09 15:43:17 localhost.localdomain systemd[1]: Starting LSB: start and stop MySQL...
9月 09 15:43:17 localhost.localdomain mysqld[77112]: Starting MySQL.Logging to '/usr/local/soft/mysql/data/localhost.localdomain.err'.
9月 09 15:43:18 localhost.localdomain mysqld[77112]: SUCCESS!
9月 09 15:43:18 localhost.localdomain systemd[1]: Started LSB: start and stop MySQL.
// 编辑配置文件
[root@localhost /]# vi /etc/profile
// 在末尾加入 mysql安装目录
export MYSQL_HOME=/usr/local/soft/mysql
export PATH=$MYSQL_HOME/bin:$PATH
// 刷新配置文件
[root@localhost /]# source /etc/profile
[root@localhost /]# mysql -uroot -p
Enter password: 【此处密码为第6步的初始密码,隐藏显示输入完回车即可】
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.21
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
此时操作mysql则会提示需要你修改密码才可使用!
mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
修改密码为123456
mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> FLUSH PRIVILEGES; //刷新权限
Query OK, 0 rows affected (0.00 sec)
mysql>
提示:以上就是本文全部内容,一步一步操作并记录过程,有错误请指出,谢谢!