MySQL的初体验-安装

windows安装

1.https://dev.mysql.com/downloads/mysql/ 下载5.6的压缩包(适用于5.7)
2.解压到当前文件夹
在这里插入图片描述

3.继续进入文件夹,新建一个my.ini文件
在这里插入图片描述
4.打开my.ini,配置以下信息
以下部分可以黏贴: 但是要注意路径,除非你和我的一模一样.

[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
#设置mysql的安装目录
basedir=D:\MySQL5.7\mysql-5.7.25-winx64
#设置mysql数据库的数据的存放目录
datadir=D:\MySQL5.7\mysql-5.7.25-winx64\data
#允许最大连接数
max_connections=200
#服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#timestamp类型的字段,更改数据时,自动更新.
explicit_defaults_for_timestamp=true

5.以管理员身份运行cmd,进入bin目录,执行:

(2)初始化,创建mysql默认的root账户
mysqld --initialize-insecure --user=mysql 命令。不进行这一步,安装完成之后无法启动服务。
(3)依然在管理员cmd窗口的bin目录下,执行 mysqld install 命令安装。完成后会提示安装成功。
(4)依然在管理员cmd窗口的bin目录下,执行 net start mysql 命令启动MySQL服务。
(5)修改环境变量,添加"D:\MySQL5.7\mysql-5.7.25-winx64\bin"。
(6)cmd窗口中,执行 mysql -uroot -p 命令,默认没有密码,回车进入

在这里插入图片描述
设置密码
由于刚开始root登录mysql无须密码,按回车就能登录。所以需要设置密码。
在mysql外执行mysqladmin -u root -p password
出现Enter password 时,按回车(原因是根本就没有密码)
出现New password输入你要设置的密码就可以了

查看编码
show variables like 'character%';
在这里插入图片描述

服务相关常用命令

启动mysql服务
net start mysql
停止mysql服务
net stop mysql
删除服务
sc delete MYSQL(服务名)
在这里插入图片描述

linux二进制安装

准备工作

在mysql的官网下载5.7.26版本https://downloads.mysql.com/archives/community/
在这里插入图片描述
1.将软件上传至/server/tools
[root@db01 ~]# mkdir -p /server/tools
[root@db01 tools]# cd /server/tools/
[root@db01 tools]# yum install -y lrzsz
[root@db01 tools]# ls
mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

2.解压软件
[root@db01 tools]# tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
[root@db01 tools]# mkdir /application
[root@db01 tools]# mv mysql-5.7.26-linux-glibc2.12-x86_64 /application/mysql

3.处理原始环境及用户的创建
[root@db01 mysql]# rpm -qa|grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64
[root@db01 mysql]# yum remove mariadb-libs-5.5.56-2.el7.x86_64
[root@db01 mysql]# rpm -qa|grep mariadb
[root@db01 mysql]# useradd mysql -M -s /sbin/nologin
[root@db01 mysql]# id mysql
uid=1001(mysql) gid=1001(mysql) groups=1001(mysql)

4.设置环境变量
vim /etc/profile
export PATH=/application/mysql/bin:$PATH
[root@db01 application]# source /etc/profile
[root@db01 application]# mysql -V
mysql Ver 14.14 Distrib 5.7.26, for linux-glibc2.12 (x86_64) using EditLine wrapper

5.创建数据路径并授权
这里我们为了让软件和数据分离,因此需要添加新的磁盘,也就是说软件部分存储在原来的磁盘上,而数据部分存储在新的磁盘上。想一想为什么要这么做?
1.添加一块新磁盘模拟数据盘(虚拟机需要关机)
在这里插入图片描述
2.格式化并挂载磁盘
[root@db01 ~]# fdisk -l
在这里插入图片描述
[root@db01 ~]# mkfs.xfs /dev/sdb
在这里插入图片描述
格式化完成后,创建挂载目录/data,直接用fastb挂载磁盘,以后系统重启会自动的挂载,挂载的时候建议使用uuid的方式,每次磁盘格式化完就会生成uuid(磁盘id号),用blkid查看
[root@db01 ~]# mkdir /data
[root@db01 ~]# blkid
在这里插入图片描述
[root@db01 ~]# vim /etc/fstab
UUID=“05cbc314-2527-4613-95e4-dacd4bf73e3f” /data xfs defaults 0 0
在这里插入图片描述
[root@db01 ~]# mount -a
[root@db01 ~]# mount
/dev/sdb on /data type xfs (rw,relatime,attr2,inode64,noquota)
[root@db01 ~]# df -h
在这里插入图片描述
挂载成功

3.授权
[root@db01 ~]# chown -R mysql.mysql /application/*
[root@db01 ~]# chown -R mysql.mysql /data

初始化数据(创建系统数据)

[root@db01 ~]# mkdir /data/mysql/data -p
[root@db01 ~]# chown -R mysql.mysql /data
[root@db01 ~]# mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data
报错mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory 少了依赖包
[root@db01 ~]# yum install -y libaio-devel
[root@db01 ~]# mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data
在这里插入图片描述
说明:
–initialize参数(不常用)
1.对于密码复杂度进行定制:12位
2.密码过期时间:180
3.给root@localhost用户设置临时密码

无限制,无临时密码(常用)
–initialize-insecure
[root@db01 ~]# rm -rf /data/mysql/data/*
[root@db01 ~]# mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data

配置文件的准备

[root@db01 ~]# cat >/etc/my.cnf <<EOF

[mysqld]
user=mysql
basedir=/application/mysql
datadir=/data/mysql/data
socket=/tmp/mysql.sock
server_id=6
port=3306
[mysql]
socket=/tmp/mysql.sock
EOF

启动数据库

1.sys-v
[root@db01 ~]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@db01 ~]# service mysqld restart
在这里插入图片描述
或者使用
[root@db01 ~]# /etc/init.d/mysqld restart
在这里插入图片描述
停止
[root@db01 ~]# /etc/init.d/mysqld stop

2.systemd
注意:sysv方式启动过的话,需要先提前关闭,才能以下方式登录
[root@db01 ~]# cat >/etc/systemd/system/mysqld.service <<EOF

[Unit]
Description=MYSQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF

[root@db01 ~]# systemctl start mysqld
[root@db01 ~]# netstat -lntup|grep 3306
在这里插入图片描述

如何分析处理mysql数据库无法启动

[root@db01 data]# /etc/init.d/mysqld start
Starting MySQL. ERROR! The server quit without updating PID file (/data/mysql/data/db01.pid).

要学会查看日志/data/mysql/data/主机名.err
[ERROR]上下文
在这里插入图片描述
可能情况:
/etc/my.cnf 路径不对等
/tmp/mysql.sock文件修改过 或 删除过
数据目录权限不是mysql
参数改错了

管理员密码的设置
[root@db01 ~]# mysqladmin -u root -p password
注意:第一次设置不能输入密码,直接回车即可
在这里插入图片描述
管理员密码忘记了?
–skip-grant-tables #跳过授权表
–skip-networking #跳过远程登录
1.关闭数据库
[root@db01 ~]# /etc/init.d/mysqld stop
Shutting down MySQL… SUCCESS!
2 启动数据库到维护模式
[root@db01 ~]# mysqld_safe --skip-grant-tables --skip-networking &
3 登录并修改密码
mysql> alter user root@‘localhost’ identified by ‘1’;
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> flush privileges;
mysql> alter user root@‘localhost’ identified by ‘root’;
Query OK, 0 rows affected (0.01 sec)
在这里插入图片描述
4 关闭数据库,正常启动验证

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值