01-安装&配置&卸载

CentOS系统下mysql安装

1. 安装前准备

1. 卸载MariaDB

安装MySQL的话会和MariaDB的文件冲突,所以需要先卸载掉MariaDB。

1.1 查看是否安装mariadb

1
rpm -qa|grep mariadb
BASH

1.2 卸载

1
rpm -e --nodeps 文件名
BASH

1.3 检查是否卸载干净

1
rpm -qa|grep mariadb
BASH

1. 检查依赖

2.1 查看是否安装libaio

1
rpm -qa|grep libaio
BASH

如果没有安装则执行

1
yum -y install libaio //安装libaio
BASH

2.2 查看是否安装numactl

1
rpm -qa|grep numactl
BASH

如果没有安装则执行

1
yum -y install numactl //安装numactl
BASH

2.安装MySQL

1.下载资源包

可以在官网下载安装包或者在服务器直接使用wget下载。

MySQL官网下载地址:https://downloads.mysql.com/archives/community/

查看系统版本信息:

1
2
uname -a
cat /etc/redhat-release
BASH

查看glibc版本信息:

1
ldd --version
BASH

比如我这里下载的是 5.7.35 的版本:

通过wget下载:

1
2
3
cd /root/
mkdir mysql && cd mysql
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz
BASH

2.解压

注:安装位置在 /usr/local/ 目录下

解压 tar 包到 /usr/local 目录

1
tar -zxvf mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz -C /usr/local
BASH

3.重命名

将解压后的文件夹重命名为mysql

1
mv mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz/ mysql
BASH

4.创建存储数据文件

在重命名后的mysql文件夹中创建data文件夹

1
mkdir mysql/data
BASH

5.设置用户组并赋权

创建用户组

1
groupadd mysql
BASH

创建用户
-r:创建系统用户
-g:指定用户组

1
useradd -r -g mysql mysql
BASH

更改属主和数组

1
chown -R mysql:mysql /usr/local/mysql/
BASH

更改权限

1
chmod -R 755 /usr/local/mysql/
BASH

6.初始化MySQL

进入MySQL的bin目录

1
cd /usr/local/mysql/bin/
BASH

初始化

1
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
BASH

初始化完成后会打印一个随机密码,后面会用到。

7.配置参数文件

1
vi /etc/my.cnf
BASH

配置文件修改为以下内容,也可以根据自己需要设置参数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
[client]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
init_connect = 'SET NAMES utf8mb4'
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

port = 3306
socket = /usr/local/mysql/data/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
datadir = /usr/local/mysql/data
#忽略大小写
#lower_case_table_names=1
#如果要设置lower_case_table_names可以在初始化里面设置 ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql --lower_case_table_names=1

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout
BASH

配置后修改 /etc/my.cnf 的权限为644,注意一定是644!

1
chmod 644 /etc/my.cnf
POWERSHELL

8.启动MySQL

1
/usr/local/mysql/support-files/mysql.server start
BASH

9.设置软连接,并重启MySQL

1
2
3
4
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
ln -s /usr/local/mysql/mysql.sock /var/mysql.sock
service mysql restart
AWK

10.登录并更改密码

1
2
# mysql -uroot -p
Enter password: 输入初始化随机密码
BASH

两种改密方式二选一

1
2
alter user 'root'@'localhost' identified by '123456';
set password for root@localhost = '123456';
BASH

11.开放远程连接

1
2
3
mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges; //刷新权限
BASH

12.连接工具测试连接MySQL

遇到的问题:

  1. The server quit without updating PID file (/usr/local/mysql[FAILED]s-website.pid).
    设置用户组并赋权,然后按照对应的用户去初始化。

  2. my_print_defaults: [Warning] World-writable config file ‘/etc/my.cnf’ is ignored.
    /etc/my.cnf 文件的权限值必须是 644,否则会被忽略。

    1
    2
    chmod 644 /etc/my.cnf
    service mysql restart
    BASH

13. 启动和停止

通过 service 命令控制:

1
2
3
4
5
6
7
8
#启动
service mysql start
#停止
service mysql stop
#重启
service mysql restart
#查看状态
service mysql status
BASH

通过 systemctl 命令控制:

1
2
3
4
5
6
7
8
#启动
systemctl start mysql
#停止
systemctl stop mysql
#重启
systemctl restart mysql
#查看状态
systemctl status mysql
BASH

设置开机自启:

1
2
3
4
5
6
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --list
#注:如果看到mysqld的服务,并且3,4,5都是on的话则成功,如果是off,则执行
chkconfig --level 345 mysqld on
BASH

win系统下mysql安装

1. MySQL 的安装

1.1 MySQL 安装文件获取

官方网站:https://www.mysql.com/

下载地址:https://dev.mysql.com/downloads/mysql/

以比较常用的 MySQL57 即 5.7.xx 版本为例。

版本选择
下载页面

1.2 MySQL 详细安装步骤

运行 mysql-installer-community-5.7.28.0.msi,进入安装步骤

同意协议,点击下一步
选择安装类型,点击下一步
注意:安装需要依赖环境,如需安装的功能缺少对应环境,需先安装环境
下一步的时候会提示缺少环境,此处的提示是说你期望安装的产品中缺少依赖,不一定提示的是数据库服务器安装的依赖,可能是其他功能组件的依赖缺少
此处发现没有 mysql server, 说明它对应的依赖缺少,可以先执行安装这些可以安装的,之后安装完依赖后再重新安装其他模块,我们此处的操作是先安装依赖,然后后退再次安装
下载安装前面提示的 mysql server 需要的 vc2013后,vc2013 如果在64位系统上面建议32和64的程序都安装,然后在上图的地方后退,重新 next 就可以看到可以安装 mysql server 了
检查是否存在失败项
进行第一步配置,除了需要设置密码外,后面的步骤基本上都是下一步
类型与网络配置
设置 root 密码
创建SQL服务与窗口
插件
应用配置
finish 后回到当前页面继续配置
连接服务器(先 check检查, 后下一步)
执行完此步骤 下一步 finish 配置完成

1.3 关闭开机自启、手动启动命令

然后会发现此时系统右下角小图标多出来了一个:

默认MySQL在安装时是开机启动的,因此我们将其关闭(再开机就不会有这个小图标了),需要的时候我们通过命令启动。
win10直接 win键,输入 服务 然后找到 MySQL57



手动启动MySQL服务命令:net start mysql57
命令行中登陆MySQL服务(需配置环境变量):mysql -u root -p [密码]
win下强烈推荐命令行工具:cmder

1.4 卸载 (若需重装)

步骤:
① 控制面板中卸载。
② 找到mysql的安装目录进行删除。
③ C盘ProgramData 删除mysql

注意:如果卸载后,如有未删除的MySQL服务,可采用手动删除:
以管理员身份打开命令行,输入 sc delete MySQL 回车。

2. MySQL 环境变量配置

  • Windows
    1. 创建 MYSQL_HOME : C:\Program Files\MySQL\MySQL Server 5.7
    2. 追加 **Path**:%MYSQL_HOME%\bin;
  • MacOS / Linux
    1. 终端中输入cd ~ 进入目录,并检查.bash_profile是否存在,有则追加,无则创建
    2. 创建文件 touch .bash_profile
    3. 打开文件 open .bash_profile
    4. 输入export PATH=${PATH}:/usr/local/mysql/bin 保存并退出终端

3. MySQL 基本命令

查看MySQL中所有数据库

1
2
#连接MySQL
mysql> SHOW DATABASES; #显示当前MySQL中包含的所有数据库
MYSQL

创建自定义数据库: CREATE DATABASE

1
2
3
4
mysql> CREATE DATABASE mydb1;  #创建mydb数据库
mysql> CREATE DATABASE mydb2 CHARACTER SET gbk; #创建数据库并设置编码格式gbk【推荐】
mysql> CREATE DATABASE mydb3 CHARACTER SET gbk COLLATE gbk_chinese_ci; #支持简体中文和繁体中文
mysql> CREATE DATABASE IF NOT EXISTS mydb4; #如果mydb4数据库不存在,则创建;如果存在,则不创建。
MYSQL

查看数据库创建信息: SHOW CREATE DATABASE

1
mysql> SHOW CREATE DATABASE mydb2; #查看创建数据库时的基本信息
MYSQL

修改数据库: ALTER DATABASE

1
mysql> ALTER DATABASE mydb2 CHARACTER SET gbk; #查看创建数据库时的基本信息
MYSQL
  • 注意:mysql中UTF-8的字符集为 utf8

删除数据库: DROP DATABASE

1
mysql> DROP DATABASE mydb1; #删除数据库mydb1
MYSQL

查看当前所使用的数据库 SELECT DATABASE()

1
mysql> SELECT DATABASE(); #查看当前使用的数据库
MYSQL

使用数据库 USE

1
mysql> USE mydb1; #使用mydb1数据库
MYSQL

4. MySQL 完全卸载

以Window7操作系统为例:

1)停止window的MySQL服务。

找到“控制面板”->”系统和安全” ->“管理工具”-> “服务”,停止MySQL后台服务。

2)卸载MySQL安装程序。找到“控制面板”-> “程序和功能”,卸载MySQL程序。

3)删除MySQL安装目录下的所有文件。

4)删除c盘ProgramData隐藏目录中关于MySQL的目录。

4.1 打开window系统的“显示隐藏文件”功能,以便查看到系统的所有隐藏文件

4.1 找到ProgramData目录

4.3 删除MySQL目录


01-安装&配置&卸载
https://janycode.github.io/2017/06/18/05_数据库/01_MySQL/01-安装&配置&卸载/
作者
Jerry(姜源)
发布于
2017年6月18日
许可协议