MYSQL介绍与安装

一MySQL的特性

1.使用c和c++编写,并使用了多种编译器进行测试,保证源代码的可移植性
2.支持多种操作系统
3.为多种编程语言提供了API。
4.支持多线程,充分利用CPU资源,支持多用户
5.优化的SQL查询算法,有效地提高查询速度
6.既能够作为一个单独的应用程序应用在客户服务器网络环境中,也能作为一个库尔嵌入到其他的软件中。
7.提供TCP/IP, ODBC 和DBC等多种数据库连接途径

二版本介绍

Alpha版:开发版
Beta版:用户体验版
RC版:测试版
GA版:正式发布版

三.MYSQL获取

官方网站下载安装包
从官方网站下载源代码包
从官方网站下载二进制包
从发行版本光盘中获取安装包

四.MYSQL安装部署

1.1安装包获取
点击此处进入官方网站:这里实例的是Centos7,MySQL Community Server 8.0.20

在这里插入图片描述
2.rpm包安装
由于RHEL7以后安装光盘不在提供MySQL,可以将所有的RPM包下载来安装,也可以配置MySQL官方提供的YUM源文件
点击此处进行下载
在这里插入图片描述
(1)官方源安装

            [root@kehu ~]# yum install mysql80-community-release-el7-3.noarch.rpm
            [root@kehu ~]# yum list | grep "mysql-community"
            [root@kehu ~]# yum install mysql-community-client mysql-community-server

速度太慢不建议使用
(2)下载rpm包安装
注意:使用该方法安装安装时,虽然安装包已经下载到了本地,但是安装过程中仍然可能存在依赖,因此修改安装网络源来解除以来。

在这里插入图片描述

安装步骤

1.卸载Mariadb

 rpm -e mariadb-libs postfix

此处建议使用centos7以上使用
2.安装

 [root@kehu ~]# groupadd mysql
 [root@kehu ~]# useradd -g mysql mysql
 [root@kehu ~]# mkdir mysql
 [root@kehu ~]# ls
 anaconda-ks.cfg  mount.sh  mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar
 jiaoben          mysql     mysql80-community-release-el7-3.noarch.rpm
 [root@kehu ~]# tar xf mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar -C mysql
 [root@kehu ~]# cd mysql
 [root@kehu mysql]# ls
 mysql-community-client-8.0.19-1.el7.x86_64.rpm
 mysql-community-common-8.0.19-1.el7.x86_64.rpm
 mysql-community-devel-8.0.19-1.el7.x86_64.rpm
 mysql-community-embedded-compat-8.0.19-1.el7.x86_64.rpm
 mysql-community-libs-8.0.19-1.el7.x86_64.rpm
 mysql-community-libs-compat-8.0.19-1.el7.x86_64.rpm
 mysql-community-server-8.0.19-1.el7.x86_64.rpm
 mysql-community-test-8.0.19-1.el7.x86_64.rpm
 [root@kehu mysql]# yum localinstall mysql-community-client-8.0.19-1.el7.x86_64.rpm mysql-community-common-8.0.19-1.el7.x86_64.rpm     mysql-community-devel-8.0.19-1.el7.x86_64.rpm mysql-community-embedded-compat-8.0.19-1.el7.x86_64.rpm mysql-community-libs- 8.0.19-1.el7.x86_64.rpm mysql-community-libs-compat-8.0.19-1.el7.x86_64.rpm mysql-community-server-8.0.19-1.el7.x86_64.rpm

3.启动

[root@kehu mysql]# systemctl start mysqld
[root@kehu mysql]# systemctl enable mysqld

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

  [root@kehu mysql]# grep "temporary password" /var/log/mysqld.log
   2020-07-11T04:20:58.300811Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: -AgKi:jwt71a

5.登录mysql

mysql -uroot  -p

二进制安装

1.下载glibc版本的Mysql
http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-8.0/
2.安装依赖包

yum -y install make gcc-c++ cmake bison-devel ncurses-devel
readline-devel libaio-devel perl libaio wget lrzsz vim libnuma* bzip2 xz
3.: 系统优化
(1)文件描述符的限制
vim /etc/security/limit.conf

(2)调整内核参数
临时调整:
[root@localhost ~]# echo “521” > /proc/sys/net/ipv4/tcp_max_syn_backlog
永久修改:
[root@localhost ~]# vim /etc/sysctl.conf
cat >>/etc/sysctl.conf <<“EOF”
vm.swappiness=0
#增加tcp支持的队列数
net.ipv4.tcp_max_syn_backlog = 65535
#减少断开连接时,资源回收
net.ipv4.tcp_max_tw_buckets = 8000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10
#改变本地的端口范围
net.ipv4.ip_local_port_range = 1024 65535
#允许更多的连接进入队列
net.ipv4.tcp_max_syn_backlog = 4096
#对于只在本地使用的数据库服务器
net.ipv4.tcp_fin_timeout = 30
#端口监听队列
net.core.somaxconn=65535
#接受数据的速率
net.core.netdev_max_backlog=65535
net.core.wmem_default=87380
net.core.wmem_max=16777216
net.core.rmem_default=87380
net.core.rmem_max=16777216
EOF

[root@localhost ~]# sysctl -p

(3)安装

配置文件
[client]
port = 3306
socket = /tmp/mysql.sock

[mysqld]
server_id=10
port = 3306
user = mysql
character-set-server = utf8
default_storage_engine = innodb
log_timestamps = SYSTEM
socket = /tmp/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
pid-file = /usr/local/mysql/data/mysqld.pid
max_connections = 1000
max_connect_errors = 1000
table_open_cache = 1024
max_allowed_packet = 128M
open_files_limit = 65535
#####======[innodb]
innodb_buffer_pool_size = 1024M
innodb_file_per_table = 1
innodb_write_io_threads = 4
innodb_read_io_threads = 4
innodb_purge_threads = 2
innodb_flush_log_at_trx_commit = 1
innodb_log_file_size = 512M
innodb_log_files_in_group = 2
innodb_log_buffer_size = 16M
innodb_max_dirty_pages_pct = 80
innodb_lock_wait_timeout = 30
innodb_data_file_path=ibdata1:10M:autoextend

#####======[log]
log_error = /var/log/mysql-error.log
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /var/log/mysql-slow.log

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

密码:ABC123.com

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值