当前位置:首页 > IT技术 > 数据库 > 正文

Mysql数据库安装与简介
2021-09-09 09:54:50

  • MySQL 特点 

下面总结了一下 MySQL 具备的特点

1) 功能强大

MySQL 中提供了多种数据库存储引擎,各引擎各有所长,适用于不同的应用场合,用户可以选择最合适的引擎以得到最高性能,可以处理每天访问量超过数亿的高强度的搜索 Web 站点。MySQL5 支持事务、视图、存储过程、触发器等。

2) 支持跨平台

MySQL 支持至少 20 种以上的开发平台,包括 Linux、Windows、FreeBSD 、IBMAIX、AIX、FreeBSD 等。这使得在任何平台下编写的程序都可以进行移植,而不需要对程序做任何的修改。

3) 运行速度快

高速是 MySQL 的显著特性。在 MySQL 中,使用了极快的 B 树磁盘表(MyISAM)和索引压缩;通过使用优化的单扫描多连接,能够极快地实现连接;SQL 函数使用高度优化的类库实现,运行速度极快。

4) 支持面向对象

PHP 支持混合编程方式。编程方式可分为纯粹面向对象、纯粹面向过程、面句对象与面向过程混合 3 种方式。

5) 安全性高

灵活和安全的权限与密码系统,允许基本主机的验证。连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码的安全。

6) 成本低

MySQL 数据库是一种完全免费的产品,用户可以直接通过网络下载。

7) 支持各种开发语言

MySQL 为各种流行的程序设计语言提供支持,为它们提供了很多的 API 函数,包括 PHP、ASP.NET、Java、Eiffel、Python、Ruby、Tcl、C、C++、Perl 语言等。

8) 数据库存储容量大

MySQL 数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由 MySQL 内部限制决定的。InnoDB 存储引擎将 InnoDB 表保存在一个表空间内,该表空间可由数个文件创建,表空间的最大容量为 64TB,可以轻松处理拥有上千万条记录的大型数据库。

9) 支持强大的内置函数

PHP 中提供了大量内置函数,几乎涵盖了 Web 应用开发中的所有功能。它内置了数据库连接、文件上传等功能,MySQL 支持大量的扩展库,如 MySQLi 等,可以为快速开发 Web 应用提供便利。

 

  • 数据库的应用

数据库是计算机应用系统中的一种专门管理数据资源的系统。数据有多种形式,如文字、数码、符号、图形、图像及声音等,数据是所有计算机系统所要处理的对象。我们所熟知的一种处理办法是制作文件,即将处理过程编成程序文件,将所涉及的数据按程序要求组成数据文件,再用程序来调用,数据文件与程序文件保持着一定的关系。

在计算机应用迅速发展的情况下,这种文件式管理方法便显出它的不足。比如,它使得数据通用性差、不便于移植、在不同文件中存储大量重复信息、浪费存储空间、更新不便等。

而数据库系统便能解决上述问题。数据库系统不从具体的应用程序出发,而是立足于数据本身的管理,它将所有数据保存在数据库中,进行科学的组织,并借助于数据库管理系统,以它为中介,与各种应用程序或应用系统接口,使之能方便地使用数据库中的数据。

其实简单地说,数据库就是一组经过计算机整理后的数据,存储在一个或多个文件中,而管理这个数据库的软件就称为数据库管理系统。一般一个数据库系统(Database System)
可以分为数据库(Database)与数据管理系统(Database Management System,DBMS)两个部分。主流的数据库软件有 Oracle、Informix、Sybase、SQL Server、PostgreSQL、MySQL、Access、FoxPro 和 Teradata 等等。

 

tar包 安装Mysql

#安装平台 linux7 (x86,bit-64)

#官网链接下载

https://downloads.mysql.com/archives/community/Mysql数据库安装与简介_mysql安装简介

#创建目录和用户

[root@localhost /]# mkdir data
[root@localhost /]# groupadd mysql
[root@localhost /]# useradd mysql -g mysql
[root@localhost /]# chown mysql:mysql /data/mysql -R

#初始化密码在下面输入

#注: 记住密码 修改密码会用到

[root@localhost ~]# /data/mysql/bin/mysqld --initialize --basedir=/data/mysql --datadir=/data/mysql/data --user=mysql
2021-09-08T15:42:11.394700Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent                    ) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2021-09-08T15:42:11.394760Z 0 [System] [MY-013169] [Server] /data/mysql/bin/mysqld (mysqld 8.0.25) initializing of server in prog                    ress as process 2261
2021-09-08T15:42:11.400554Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2021-09-08T15:42:12.064115Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2021-09-08T15:42:12.739612Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: *>Vs>wSlu3qB

#创建日志存放文件

[root@localhost /]# mkdir /data/mysql/logs
[root@localhost /]# chown mysql:mysql /data/mysql -R

#创建conf文件

#注:文件路径必须与主机一致 查看log日志修改配置文件

[root@localhost /]# cd /data/mysql/
[root@localhost mysql]# vim conf/my.cnf
[mysqld]
server-id = 1
skip-name-resolve
# basedir=/path 最好不要随便设置,默认扩展plugin存放于/usr/lib64/mysql/以及/usr/share/mysql-8.0中,必要的话可以选择在数据库中更改路径
# basedir=/data/mysql
datadir=/data/mysql/data
max_connections = 20000
open_files_limit = 65535
table_open_cache = 128
max_allowed_packet = 4M
binlog_cache_size = 1M
max_heap_table_size = 8M
tmp_table_size = 16M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
sort_buffer_size = 8M
join_buffer_size = 8M
thread_cache_size = 8
#query_cache_size = 16M
#query_cache_limit = 2M
key_buffer_size = 4M
socket=/data/mysql/mysql.sock
log_timestamps=SYSTEM
# 二进制日志
log-bin=mysql8_log-bin
#binlog-format=MIXD
# 慢查询日志,on开启,query_time超时时间设置
slow-query-log=on
slow-query-log-file=/data/mysql/logs/mysqld.log
long_query_time=2
# error日志
log-error=/data/mysql/logs/mysqld.log
pid-file=/data/mysql/mysqld.pid

innodb_open_files = 600
innodb_buffer_pool_size = 64M
innodb_write_io_threads = 2
innodb_read_io_threads = 2
innodb_thread_concurrency = 0
innodb_purge_threads = 1
innodb_flush_log_at_timeout=1
innodb_flush_log_at_trx_commit=2
innodb_log_buffer_size = 16M
innodb_log_file_size = 32M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
bulk_insert_buffer_size = 16M
innodb_log_file_size = 32M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
bulk_insert_buffer_size = 16M

[client]
loose-local-infile=1

[mysqldump]
quick

#启动

[root@localhost /]# cd /data/mysql/bin/
[root@localhost bin]# ./mysql -uroot -p --socket=/data/mysql/mysql.sock

#连接

[root@localhost bin]# ./mysql -uroot -p --socket=/data/mysql/mysql.sock

#修改密码

#注:mysql中必须以分号结尾

[root@localhost bin]# ./mysql -uroot -p --socket=/data/mysql/mysql.sock
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 13
Server version: 8.0.25

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

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>
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
Query OK, 0 rows affected (0.01 sec)

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set host='%' where user='root';
mysql> ALTER USER 'root'@'%' IDENTIFIED BY '123123';

 

本文摘自 :https://blog.51cto.com/u

开通会员,享受整站包年服务立即开通 >