MySQL优化和Linux的环境配置

 MySQL如何优化

表的设计合理化(符合3NF)

添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]

SQL语句优化

分表技术(水平分割、垂直分割)

读写[: update/delete/add]分离

存储过程 [模块化编程,可以提高速度]

mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ]

mysql服务器硬件升级

定时的去清除不需要的数据,定时进行碎片整理(MyISAM)

 

sql语句调优

 

其中使用优先--------sql语句调优>添加索引>分表分库技术>读写分离

 

 

虚拟机

虚拟机简介

虚拟机:是一台虚拟的计算机,是由软件虚拟出来的一台计算机。

 

虚拟机的安装

传送门:https://blog.csdn.net/qq_42545206/article/details/82790699

 

安装Linux操作系统

传送门:https://blog.csdn.net/qq_39655200/article/details/81159863

 

Linux目录结构

 

 

/  Linux系统的根目录

   /etc 是系统配置文件的存放目录。例如:JDKMysqltomcatredis配置文件等。

/usr 应用程序存放目录例如: JDKMysqltomcatredisnginx等应用程序都会安装到usr目录。

/root 系统管理员root家目录,类似于Windows的桌面,登录成功后最新看到的就是桌面。

Linux的常用命令

目录操作

查看当前目录   pwd

操作文件夹    cd [选项][参数]

打开指定目录cd  [目录名称]//注意cd后面有空格.

打开当前用户的主目录 cd  ~

返回上级目录cd  ..

返回进入目录cd  -

打开根目录cd  /

浏览目录下的文件列表ls [选项]

ls -l以列的形式查看当前目录下的文件列表

ls -a查看当前目录下所有的文件,包含隐藏文件

ls -la以列的形式查看当前目录下所有的文件,包含隐藏文件

创建文件目录命令mkdir [选项] 目录名称

mkdir  [目录名称] 新建文件目录

mkdir  -p  [目录名称]  递归新建多级目录  

示例:mkdir -p hehe/haha/lele  同时创建hehehahalele文件夹

删除空文件夹rmdir

删除文件/目录   rm -rf强制删除

rm -ri询问是否删除

注意:如果命令中不跟 r 参数,无法删除目录,只能删除文件

复制文件/目录

cp -r 目录1 目录2递归复制 目录1所有的文件和文件夹到目录2  

cp -ri 目录1 目录2执行复制时覆盖原有目录前询问用户  

8:移动文件,修改文件名

mv 文件1 文件2  (修改文件名)

mv 目录1 目录2  (将目录1的文件移动到目录2)

 

安装jdk

  卸载:使用java version查看虚拟机是否有jdk环境,存在先卸载:

           

1.  首先我的系统是CenOS7,安装完成后,先打开终端,切换到管理员账号,命令如下图

 

2.  找出带java关键字的安装包,命令是:rpm -qa|grep java,会出现如下结果:

 

 

3.  运行如下命令进行卸载,命令是: yum -y remove java*

安装

上传到ftp,然后解压安装  tar -zxvf  jdk-8u221-linux-x64.tar

配置环境变量,打开 vi /etc/profile 在文件结尾添加  注意是使用“”分隔

export JAVA_HOME=/home/soul/tools/jdk1.8

export JRE_HOME=$JAVA_HOME/jre

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    让文件生效            source  /etc/profile

目录以及子目录授予root权限  chown root:root -R   /home/soul/tools/jdk1.8

查看jdk是否安装成功    java –version 或者  java  或者javac

 

安装tomcat

下载Tomcat8压缩包 进入 http://tomcat.apache.org/download-80.cgi

 

 

ftp工具把压缩包上传到linux

解压Tomcat命令

 tar -zxvf  apache-tomcat-8.5.43.tar.gz    (压缩包名字)

可通过tomcatconf中文件下的server.xml配置

vi  /home/tomcat/apache-tomcat-8.5.16/conf/server.xml

配置防火墙,开放8080端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent

firewall-cmd --reload

启动tomcat  找到解压文件夹下的bin里面的stratup.sh

sh  startup.sh   

安装MySQL

1.下载链接:https://pan.baidu.com/s/1qfLS8_KjbzQoMHgSmxYkfg 提取码:va73

2.通过客户端工具Xftp上传tar包

3.打开终端解压tar文件:tar -xvf mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar

 

 

卸载冲突的RPM组件

在我们安装mysql相关组件的时候,如果不将此冲突的组件删除掉,我们是安装不成功的。

查看postfix和mariadb-libs相关的组件:

rpm -qa | grep postfix

rpm -qa | grep mariadb

卸载postfix和mariadb-libs.卸载你运行命令出现的版本!

rpm -ev postfix-2.10.1-7.el7.x86_64

rpm -ev mariadb-libs-5.5.60-1.el7_5.x86_64

安装相应的依赖

yum -y install libaio

yum -y install net-tools

yum -y install perl

安装mysql组件

解压mysql后得到很多rpm文件。不需要这么多,只需要安装以下四个组件就可以:

rpm文件版本可能不一样,请到你的目录文件输入ll命令查看再根据对应的文件名修改!

rpm -ivh mysql-community-common-5.7.23-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.23-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.23-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.23-1.el7.x86_64.rpm --nodeps

修改MySQL密码

mysql安装完成之后我们是没有设置密码的,但是mysql为我们设置了一个临时的密码,

我们可以查看mysql的日志知道这个临时密码,查看临时密码前确保数据库启动。

1)启动数据库

mysql是否启动: service mysqld status

启动mysql:     service mysqld start

停止mysql:     service mysqld stop

重启mysql:    service mysqld restart

2)查看临时密码:    grep password /var/log/mysqld.log

 

得知临时密码是:MbhBdbeh?1ee  临时密码登录数据库。

(数据库的密码需要满足以下条件:大小写字母,数字和特殊符号

登录mysql(命令:mysql -p),输入临时密码

设置新密码:  set password = password("Root_123");

退出当前登录:quit;

重新登录,此时就能用新密码登录了,然后就可以进行数据库操作了。

设置密码不成功,不符合密码策略。报这个错是因为密码设置强度策略,你设置的密码太简答了。

Your password does not satisfy the current policy requirements

8、允许远程连接:开启mysql远程访问权限,允许远程连接

mysql -u root -p

use mysql;

update user set host = '%' where user = 'root';

flush privileges;

 

 

测试连接mysql

连接时报10060错误,可能是因为没有开启防火墙。在终端输入以下命令关闭防火墙。

firewall-cmd --zone=public --add-port=3306/tcp --permanent;

firewall-cmd --reload;

主机输入你的ip地址   不知道的用ifconfig或者ip addr命令查看

 

 

猜你喜欢

转载自www.cnblogs.com/Soul-xs/p/12150623.html