Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Mysql安装

下载安装包

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

推荐安装8版本

img_3.png

选择对应操作系统版本安装包进行下载

window安装

1、去官网下载.zip格式的MySQL Server的压缩包,根据需要选择x86或x64版。

2、解压缩至你想要的位置。

3、复制解压目录下my-dafault.ini至bin目录下,重命名为my.ini。并添加以下内容(路径要根据实际的情况修改)

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录(注意这里的路径)
basedir=C:\mysql-5.7.12-winx64
# 设置mysql数据库的数据的存放目录(注意这里的路径)
datadir=C:\mysql-5.7.12-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

4、初始化mysql

以管理员身份运行cmd,并cd到mysql中的bin目录下,执行命令:mysqld --initialize --user=mysql --console

该命令会创建data目录与数据库,生成root用户和临时密码,如下图 注意记下红框的随机密码,登录mysql需要使用

5、配置环境变量,否则你每次都要cd到bin目录下才能使用mysql。右键此电脑(计算机)-属性-高级系统设置-高级-环境变量,在系统变量中的PATH中加入你的bin目录,如:C:\mysql-5.7.12-winx64\bin

6、安装MySQL服务,以管理员身份运行cmd,并输入mysqld install MySQL --defaults-file="C:\mysql-5.7.12-winx64\bin\my.ini",其中的路径为你正式的ini文件。

7、运行cmd,输入net start mysql启动MySQL服务,再输入mysql -u root -p,然后输入临时密码。修改密码:set password = password('新密码');,然后回车就可以了,注意分号不能省略。

linux安装(mysql 5.7版本)

1、卸载已有的mysql


# 查找所有与MySQL相关的包
rpm -qa | grep -i mysql

#停止mysql服务,卸载之前安装的mysql
rpm -ev 包名

#如果卸载过程中报依赖错误,直接在卸载命名后面加参数 --nodeps
rpm -ev 包名 --nodeps  

#查找之前安装的mysql的文件,并逐个删除
find / -name mysql

2、开始安装

  • 添加用户和组
# 创建 mysql 用户组
groupadd mysql

# 添加用户mysql 到用d户组mysql\(使用-r参数表示mysql用户是一个系统用户,不能登录\)

useradd -r -g mysql mysql
  • 手动创建MySQL data目录
cd /usr/database/mysql5.7/

mkdir data

# 目录权限设置

# 将mysql及其下所有的目录所有者和组均设为mysql
chown -R mysql:mysql /usr/database/mysql5.7/

3、配置my.cnf文件

此文件非常重要,初始化之前要把此文件放到 /etc 目录下

rm -rf /etc/my.cnf

vim /etc/my.cnf

#此文件内容如下\(路径根据自己的实际情况\):

[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
init-connect='SET NAMES utf8'
basedir=/usr/database/mysql5.7              #根据自己的安装目录填写 
datadir=/usr/database/mysql5.7/data     #根据自己的mysql数据目录填写
socket=/tmp/mysql.sock
max_connections=200             # 允许最大连接数
character-set-server=utf8           # 服务端使用的字符集默认为8比特编码的latin1字符集
default-storage-engine=INNODB           # 创建新表时将使用的默认存储引擎

4、初始化mysql

/usr/database/mysql5.7/bin/mysqld --initialize-insecure --user=mysql  --basedir=/usr/database/mysql5.7 --datadir=/usr/database/mysql5.7/data

#重新修改下各个目录的权限

#把安装目录的目录的权限所有者改为root
chown -R root:root /usr/database/mysql5.7/      

#把data目录的权限所有者改为mysql
chown -R mysql:mysql /usr/database/mysql5.7/data/  

Tip

注意:mysqld --initialize-insecure初始化后的mysql是没有密码的

5、启动mysql

/usr/database/mysql5.7/bin/mysqld_safe --user=mysql &

6、修改密码

cd /usr/database/mysql5.7/bin/

# 默认没有密码,直接敲回车就可以
./mysql -u root -p 

use mysql;

update user set authentication_string=password('这里填你设置的密码') where user='root';

flush privileges;

exit;

7、测试登录

cd /usr/database/mysql5.7/bin/

./mysql mysql -u root -p

#输入密码后,应该就连接上了

show databases;

exit; 

8、copy启动脚本并将其添加到服务

#mysql启动脚本为:
/usr/database/mysql5.7/support-files/mysql.server

cp /usr/database/mysql5.7/support-files/mysql.server  /etc/init.d/mysql

#添加服务
chkconfig --add mysql  

9、开机启动

chkconfig --level 345 mysql on

# 测试添加的服务是否能用

#查看状态
service mysql status 

#启动mysql服务
service mysql start  

#停止mysql服务
service mysql stop   

10、设置外网可以访问

#在mysql的bin目录下执行,连接数据库:
mysql -uroot -p密码 

use mysql;

select host,user from user;

update user set host='%' where user ='root';

flush privileges;