linux系统离线安装mysql数据库
操作步骤参考如下:以root用户登录待安装的服务器,检查系统中是否安装过MySQL。rpm -qa|grep -i mysql如果未安装过MySQL,系统无屏显信息。如果已安装过MySQL,系统显示已安装的MySQL安装包信息:mysql-community-libs-5.7.16-1.sles11libmysqlclient_r15-5.0.67-13.20.1my...
操作步骤参考如下:
- 以root用户登录待安装的服务器,检查系统中是否安装过MySQL。
rpm -qa|grep -i mysql
如果未安装过MySQL,系统无屏显信息。
如果已安装过MySQL,系统显示已安装的MySQL安装包信息:
mysql-community-libs-5.7.16-1.sles11
libmysqlclient_r15-5.0.67-13.20.1
mysql-community-common-5.7.16-1.sles11
libqt4-sql-mysql-4.6.2-1.6.11
依次执行rpm -e --nodeps Package_name命令删除MySQL的各个安装包。其中,Package_name为上述屏显信息中的各个包名。
- 上传软件包并解压。
- 以root用户通过sftp/ftp工具上传软件包mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz到/opt目录 。
- 进入opt目录,并解压缩软件包。
- # cd /opt/
# tar -xzvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
解压之后删除/opt目录下的mysql安装包:
# rm -f mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
-
- 将解压后目录改名为mysql。
# mv mysql-5.7.20-linux-glibc2.12-x86_64 mysql
- 安装和初始化MySQL。
- 创建用户和用户组,并进行授权。
- 添加oinstall组。
- 创建用户和用户组,并进行授权。
# groupadd oinstall
-
-
- 添加mysql用户。
-
# useradd -d /home/mysql -s /bin/bash -g oinstall -m mysql
-
-
- 把mysql目录授权给mysql用户。
-
# chown -R mysql:oinstall /opt/mysql/
-
-
- 创建mysql-data目录及子目录tmp。
-
# mkdir /opt/mysql-data # mkdir /opt/mysql-data/tmp
-
# mkdir /opt/mysql-data/log
-
-
- 把mysql-data目录及tmp子目录授权给oinstall组中的mysql用户。
-
# chown -R mysql:oinstall /opt/mysql-data
-
-
- mysql-data目录的所属群组修改为oinstall。
-
# chgrp -R oinstall /opt/mysql-data
-
- 新建并编辑my.cny文件。
- 在mysql目录下新建并编辑my.cnf文件。
- 新建并编辑my.cny文件。
# vi /opt/mysql/my.cnf
输入i进入编辑模式,修改文件内容为如下所示:
[mysqld]
## basedir为mysql的安装家目录。
basedir = /opt/mysql
## datadir为mysql的数据包。
datadir = /opt/mysql-data/workdbs
## tmpdir为mysql的数据临时目录。
tmpdir = /opt/mysql-data/tmp/
## port为mysql对外提供服务的端口。
port = 3306
#server-id = 100
## socket为mysql的socket连接文件路径
socket =/opt/mysql/lib/mysql.sock
## 使MySQL不区分表名大小写
lower_case_table_names=1
## 设置字符集为UTF-8
character-set-server=utf8
## 设置MySQL模式
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,STRICT_ALL_TABLES
## log file
log-error=/opt/mysql-data/log/mysql_3306.log
[mysql]
## 设置字符集为UTF-8
default-character-set=utf8
修改完成后按Esc退出编辑模式,执行:wq!保存并退出,然后执行如下命令,修改my.cnf文件的属主:
# chown mysql:oinstall /opt/mysql/my.cnf
-
-
- 拷贝my.cnf文件到etc目录下(若etc目录下有则替换)。
-
# cp -fr /opt/mysql/my.cnf /etc/my.cnf
-
- 修改系统配置文件profile。
- 编辑etc目录下的“profile”文件。
- 修改系统配置文件profile。
# vi /etc/profile
输入i进入编辑模式,在文件末尾添加如下内容:
export PATH=/opt/mysql/bin:$PATH
export PATH=$PATH:/etc/init.d
添加完成后按Esc退出编辑模式,执行:wq!保存并退出。
-
-
- 重新加载etc目录下的profile文件。
-
# source /etc/profile
-
- 将mysql.server复制到/etc/init.d/ 。
-
# cd /opt/mysql
# cp -a ./support-files/mysql.server /etc/init.d/mysql.server
-
- 初始化mysql。
- # cd /opt/mysql
# ./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql-data/workdbs
命令执行后,如无错误,不会有显示信息,查看日志文件“/opt/mysql-data/log/mysql_3306.log”,获取临时密码。
# cat /opt/mysql-data/log/mysql_3306.log
出现如下字段:
2018-03-17T08:10:28.083190Z 1 [Note] A temporary password is generated for root@localhost: Ro5EkYogC%rg
获取临时密码,如:Ro5EkYogC%rg。
-
- 创建软连接。
- 将mysql的安装目录软连接到local下面。
- 创建软连接。
# ln -s /opt/mysql /usr/local/mysql
-
-
- 将mysql.sock文件软连接到tmp下面
-
# ln -s /opt/mysql/lib/mysql.sock /tmp/mysql.sock
- 注册并设置mysql.server为开机自启动。
# systemctl enable mysql.server.service
按照提示信息继续执行如下命令:
# chkconfig mysql on
- 启动并修改初始密码。
- 在“/opt/mysql/support-files”目录下启动MySQL。
-
# cd /opt/mysql/support-files
# mysql.server start
-
- 查看MySQL状态。
# mysql.server status
系统显示如下类似信息表示MySQL状态正常:
MySQL running (70442) done
-
- 在“opt/mysql/bin”目录下执行以下命令登录MySQL。
- # cd /opt/mysql/bin
# mysql -u root -p
按照提示信息输入记录的临时密码。
Enter Password:
登录成功后系统显示如下类似信息:
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.21-enterprise-commercial-advanced
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>
-
- 修改root用户密码。
>
set password=password('Password');
其中,单引号中的Password由用户自定义。
-
- 赋予任何主机访问数据的权限。
>
grant all privileges on *.* to 'root'@'%' identified by 'Password' with grant option;
其中,单引号中的Password由用户自定义。
-
- 使修改生效并使用数据库。
- >
flush privileges;
> use mysql;
-
- 查看当前用户。
> select host,user from user;
系统显示如下类似信息,表示数据库已正常安装和运行。
+-----------+-----------+
| host | user |
+-----------+-----------+
| % | root |
| localhost | mysql.sys |
| localhost | root |
+-----------+-----------+
3 rows in set (0.01 sec)
-
- 退出MySQL数据库。
> exit
- 将/opt/mysql/bin/目录下的可执行程序都拷贝到/usr/bin目录下,方便后续执行这些命令(可选)。
# cp /opt/mysql/bin/* /usr/bin
- 用Navicat Primium工具测试连接mysql客户端,以mysql安装在的主机IP和账号root/密码登录,连接成功即可。
更多推荐
所有评论(0)