Linux 在线和离线安装 MySQL

Linux 在线和离线安装 MySQL,第1张

1 linux的常用软件安装

配置阿里云的yum源

1) 安装wget

2)下载yum源的配置文件

3) 替换原有的yum源

4) 更新现有yum

5) 安装常用软件

2 linux的JDK安装

此处我们选用 jdk1.8_144这个版本作为我们的基础JDK,此处要切记一点的是1.8的不同版本JDK在配置上会有很大的出入,所以请不要随便更换基础的JDK版本,否则你会很尴尬!

使用 rz 上传jdk到root的家目录

使用rpm命令安装jdk

配置jdk的环境变量

刷新环境变量

到此 JDK安装完成

3 安装MySQL前说明

本例安装MySQL版本是 5.7

4 linux 在线安装MySQL

用root用户安装

1)获取mysql 源安装包

wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

2)安装mysql 源

rpm -ivh mysql57-community-release-el7-11.noarch.rpm

3)检查mysql源是否安装成功

yum repolist enabled | grep "mysql. -community. "

3)用 yum 命令安装mysql

yum install mysql-community-server

4)修改mysql的配置文件

查看MYSQL配置文件加载顺序:

修改/etc/my.cnf 配置文件内的文件目录

datadir=/data/mysql/data

sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

log-error=/data/mysql/log/mysqld.log

其中:

SQL_MODE:通过对其正确的设置可以完成一些约束检查的工作,设置时,在配置文件my.cnf 中配置进行全局的设置。

STRICT_TRANS_TALES(严格模式):

只对支持事务的表启用严格模式。

NO_AUTO_CREATE_USER:

禁止GRANT创建密码为空的用户。

NO_ENGINE_SUBSTITUTION:

启用后,若需要的存储引擎被禁用或未编译,则抛出错误;未启用时将用默认的存储引擎代替,并抛出一个异常。

5)创建mysql 文件目录

6)生成首次登录随机密码

通过上面命令会在 /data/mysql/log/mysqld.log 中生成随机码,随机码用来首次登录mysql。

7)修改mysql 文件目录所有者为 mysql 用户

8)启动mysql

9) 关闭并重启mysql(可选)

如果再次启动报错,就重启Linux 系统。

10)用生成的随机密码登录mysql

登录后进入mysql 命令行

11)修改ROOT用户密码

设置完密码后,需要用新密码重新登录

12)卸载mysql(不是必须的)

如果启动报错,根据错误查看原因,如果实在解决不了,卸载mysql 重新装。

查看已经安装过的组件

rpm -qa | grep -i mysql

用yum -y remove 卸载所有mysqlyum -y remove mysql57-community-release-el7-11.noarch yum -y remove mysql-community-common-5.7.19-1.el7.x86_64

卸载后再用 rpm -qa | grep -i mysql 查看,直至全部卸载

删除/data/mysql 目录

5 linux 离线安装MySQL

1) 卸载CentOS7系统自带mariadb

2) 检查mysql是否存在

3) 检查mysql的用户和组是否存在如果不存在就创建

4) 下载MySQL的离线安装包

官网下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

版本选择,可以选择一下两种方式:

1)使用Red Hat Enterprise Linux

Select Version: 5.7.* (因为更新的缘故具体细节版本可自行查看)

Select Operating System: Red Hat Enterprise Linux / Oracle Linux

Select OS Version: Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit)

列表中下载:

Compressed TAR Archive:(mysql-5.7.25-el7-x86_64.tar.gz) 【本文中使用的是这个版本】

2)使用Linux - Generic

Select Version: 5.7.* (因为更新的缘故具体细节版本可自行查看)

Select Operating System: Linux - Generic

Select OS Version: Linux - Generic (glibc 2.12) (x86, 64-bit)

列表中下载:

Compressed TAR Archive:(mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz)

注意:上边两种方式找mysql离线安装包的方式都可以。

选完跳到以下这个页面点击 下面的连接就可以开始下载了

5) 上传MySQL的离线安装包并解压进行传统配置

6) 创建配置文件

7) 开始安装MySQL

设置权限

8) 启动MySQL

9) 设置开机启动

10) 修改配置文件

11) 获取初始密码

获取初始密码

创建软连接

登录mysql

修改密码

检验密码是否成功

设置远程访问

海汼部落原创文章,原文链接:(http://hainiubl.com/topics/75580)

1、配置YUM源

在MySQL官网中下载YUM源rpm安装包:

# 下载mysql源安装包

shell>wget

# 安装mysql源

shell>yum localinstall mysql57-community-release-el7-8.noarch.rpm

检查mysql源是否安装成功

shell>yum repolist enabled | grep "mysql.*-community.*"

看到上图所示表示安装成功

2、安装MySQL

shell>yum install mysql-community-server

3、启动MySQL服务

shell>systemctl start mysqld

查看MySQL的启动状态

shell>systemctl status mysqld

● mysqld.service - MySQL Server

Loaded: loaded (/usr/lib/systemd/system/mysqld.servicedisabledvendor preset: disabled)

Active: active (running) since 五 2016-06-24 04:37:37 CST35min ago

Main PID: 2888 (mysqld)

CGroup: /system.slice/mysqld.service

└─2888 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

6月 24 04:37:36 localhost.localdomain systemd[1]: Starting MySQL Server...

6月 24 04:37:37 localhost.localdomain systemd[1]: Started MySQL Server.

4、开机启动

shell>systemctl enable mysqld

shell>systemctl daemon-reload

5、修改root默认密码

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:

shell>grep 'temporary password' /var/log/mysqld.log

shell>mysql -uroot -p

mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!'

或者

mysql>set password for 'root'@'localhost'=password('MyNewPass4!')

注意:mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误,如下图所示:

通过msyql环境变量可以查看密码策略的相关信息:

mysql>show variables like '%password%'

validate_password_policy:密码策略,默认为MEDIUM策略 validate_password_dictionary_file:密码策略文件,策略为STRONG才需要 validate_password_length:密码最少长度 validate_password_mixed_case_count:大小写字符长度,至少1个 validate_password_number_count :数字至少1个 validate_password_special_char_count:特殊字符至少1个 上述参数是默认策略MEDIUM的密码检查规则。

共有以下几种密码策略:

策略

检查规则

0 or LOWLength

1 or MEDIUMLengthnumeric, lowercase/uppercase, and special characters

2 or STRONGLengthnumeric, lowercase/uppercase, and special charactersdictionary file

MySQL官网密码策略详细说明:

修改密码策略

在/etc/my.cnf文件添加validate_password_policy配置,指定密码策略

# 选择0(LOW),1(MEDIUM),2(STRONG)其中一种,选择2需要提供密码字典文件

validate_password_policy=0

如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可:

validate_password = off

重新启动mysql服务使配置生效:

systemctl restart mysqld

6、添加远程登录用户

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户:

mysql>GRANT ALL PRIVILEGES ON *.* TO 'yangxin'@'%' IDENTIFIED BY 'Yangxin0917!' WITH GRANT OPTION

7、配置默认编码为utf8

修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:

[mysqld]

character_set_server=utf8

init_connect='SET NAMES utf8'

重新启动mysql服务,查看数据库默认编码如下所示:

默认配置文件路径: 配置文件:/etc/my.cnf 日志文件:/var/log//var/log/mysqld.log 服务启动脚本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid

方法/步骤

1

[root@localhost soft]# groupadd mysql 添加mysql标准组

[root@localhost soft]# useradd -g mysql mysql 添加mysql用户并加到mysql组中

2

安装mysql

[root@localhost soft]# tar -zxvf mysql-5.5.45.tar.gz

[root@localhost mysql-5.5.46]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

# -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \#安装路径

# -DMYSQL_DATADIR=/usr/local/mysql/data\#数据文件存放位置

# -DSYSCONFDIR=/etc\#my.cnf路径

# -DWITH_MYISAM_STORAGE_ENGINE=1 \#支持MyIASM引擎

# -DWITH_INNOBASE_STORAGE_ENGINE=1 \#支持InnoDB引擎

# -DWITH_MEMORY_STORAGE_ENGINE=1 \#支持Memory引擎

# -DWITH_READLINE=1\#快捷键功能(我没用过)

# -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \#连接数据库socket路径

# -DMYSQL_TCP_PORT=3306\#端口

# -DENABLED_LOCAL_INFILE=1 \#允许从本地导入数据

# -DWITH_PARTITION_STORAGE_ENGINE=1\#安装支持数据库分区

# -DEXTRA_CHARSETS=all \#安装所有的字符集

# -DDEFAULT_CHARSET=utf8 \#默认字符

# -DDEFAULT_COLLATION=utf8_general_ci \#校验字符

3

修改目录所有者和所有组

[root@end mysql]# chown -R mysql:mysql .

4

初始化数据库

[root@end mysql]# scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/

5

复制mysql服务启动配置文件(注意:在CentOS 6.4版 *** 作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。)

[root@end mysql]# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf

注册为服务

[root@end mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

让chkconfig管理mysql服务

[root@end mysql]# chkconfig --add mysqld[root@end mysql]# chkconfig mysqld on

设置环境变量

在文件/etc/profile末尾添加

PATH=/usr/local/mysql/bin:$PATH

立即生效

[root@end mysql]# source /etc/profile

启动mysql服务

[root@end mysql]# service mysqld startStarting MySQL...

检查mysql服务是否启动

[root@end mysql]# netstat -tulnp |grep 3306

tcp0 0 0.0.0.0:33060.0.0.0:* LISTEN 24351/mysqld

修改mysql用户root密码

[root@end mysql]# mysql -uroot 登录到mysql,首次登陆无密码

设置mysql密码

mysql>SET PASSWORD = PASSWORD('endmoon')

Query OK, 0 rows affected (0.00 sec)

用设置的密码登录

[root@end mysql]# mysql -u root -pEnter password: endmoon

若要设置root用户可以远程访问,执行

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.20' IDENTIFIED BY 'password' WITH GRANT OPTIONQuery OK, 0 rows affected (0.00 sec)

配置防火墙

防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口

打开/etc/sysconfig/iptables,在-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT后面添加

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

[root@end mysql]# service iptables restart

使更改的防火墙配置生效 iptables:将链设置为政策 ACCEPT:filter[确定]

iptables:清除防火墙规则: [确定]

iptables:正在卸载模块: [确定]

iptables:应用防火墙规则:

mysql数据库的安装到这里就结束了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8580342.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-18
下一篇2023-04-18

发表评论

登录后才能评论

评论列表(0条)

    保存