首页 > 技术文章 > Mysql安装、配置、优化

zpf1 2019-12-19 09:13 原文

MYSQL定义

        MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

 

centos下MYSQL的安装(windows省略)

    1.去官网下载安装包

 

    选择想要下载的mysql版本和对应的系统版本 

 

   https://dev.mysql.com/downloads/mysql/ 

 

     2.找到对应的rpm-bundle.tar安装包下载即可! 

 

     3.检查是否已经存在mysql,若存在卸载,避免安装时产生一些错误!

    

rpm -qa | grep -i mysql

 

   4.上传安装包

 

mkdir -p /usr/local/mysql

 

   5.解压安装包

 

tar -xvf MySQL-5.6.41-1.el7.x86_64.rpm-bundle.tar

 

   6.创建mysql用户和组

 

groupadd -g 1000 mysql
useradd mysql -g mysql -p mysql

 

   7.安装mysql

 

rpm -ivh MySQL-server-5.6.41-1.el7.x86_64.rpm

        提示错误:

 

conflicts with file from package mariadb-libs-1:5.5.56-2.el7.x86_64

        与mariadb冲突,删除mariadb即可!

 

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

        然后重新执行上面的安装命令!

 

rpm -ivh MySQL-client-5.6.41-1.el7.x86_64.rpm
rpm -ivh MySQL-devel-5.6.41-1.el7.x86_64.rpm
rpm -ivh MySQL-shared-5.6.41-1.el7.x86_64.rpm

        安装这四个即可,至此安装完成!

        

centos下MYSQL的配置

   1.启动mysql

 

service mysql start

        启动成功后,可查看是否成功监听3306端口

 

   2.使用随机密码登录mysql

 

find / -name .mysql_secret

        查找生成的随机密码路径,查看此文件,获取随机密码

 

        使用随机默认密码登录mysql

 

mysql -u root -p

 

   3.修改密码

   登陆成功后,修改密码,否则无法选择数据库进行操作

 

SET PASSWORD=password('password');
FLUSH PRIVILEGES;

      至此,便可以进行mysql操作了; 

 

初始优化mysql软件

 

sed -i ‘/^[mysqld] /a\innodb_buffer_pool_size=1G’ /etc/my.cnf #设置mysql虚拟内存为1G
sed -i ‘/^[mysqld]/a\max_connections=4000’ /etc/my.cnf #设置mysql最大连接请求数量为4000
sed -i ‘/^[mysqld]/a\ssl=off’ /etc/my.cnf #MySQL服务器端开启安全的加密通信
sed -i ‘/^[mysqld]/a\event_scheduler=ON’ /etc/my.cnf #开启mysql事件的状态
sed -i ‘/^[mysqld]/a\lower_case_table_names=1’ /etc/my.cnf #不区分大小写
sed -i ‘/^[mysqld]/a\max_allowed_packet=100M’ /etc/my.cnf #限制server接受的数据包的大小
sed -i ‘/^[mysqld]/a\sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION’ /etc/my.cnf #设置mysql 环境变量sql_mode,定义了mysql应该支持的sql语法,数据校验
sed -i ‘/^[mysqld]/a\skip_grant_tables’ /etc/my.cnf #初始化数据库

推荐阅读