windows安装mysql5.7教程

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

配置安装流程

具体安装如下:

1、把 mysql-5.7.19-winx64.zip 压缩文件解压到 D:\MySQL\ 目录下;
2、在 D:\MySQL\ 目录下新建 my.ini 配置文件;
3、用文本编辑器或其他编辑器打开 my.ini 文件,把以下代码复制粘贴进去,保存退出;

#代码开始
[Client]
#设置3306端口
port = 3306

[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\mysql
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
#代码结束

4、配置环境变量;
4.1、新建系统变量 MYSQL_HOME ,并配置变量值为 D:\mysql ;
4.2、编辑系统变量 Path ,将 ;%MYSQL_HOME%\bin 添加到 Path 变量值后面。

5、以管理员身份运行命令提示符cmd(一定要用管理员身份运行,不然权限不够);
5.1、使用dos指令,进入D:\mysql 目录,运行以下指令
mysqld --defaults-file=my.ini --initialize-insecure
mysqld --install
net start mysql

5.2、设置 mysql 的 root 密码,运行以下指令
mysql -u root -p #这里是空密码,直接回车进入
use mysql;
update user set authentication_string=password('您的密码') where user='root';
flush privileges;
exit

摘自:https://www.jb51.net/article/119335.htm

centos中mysql密码忘记了怎么办

我只在centos中测试,其他没有测试
第一步:
修改/etc/my.cnf,在最后面加上
[mysqld]
skip-grant-tables
第二步,重启MySQL
systemctl restart mysqld
第三步:每一步都回车
1、mysql;
2、use mysql;
3、修改密码: update user set password=password('123456') where user='root';
如果出现
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
就用(5.7的)
update mysql.user set authentication_string=PASSWORD('123456') where user='root';
4、flush privileges;
第四步:
删掉/etc/my.cnf添加的内容
第五步:
重启mysql

用新密码登陆即可

找了很多,拼凑到一起才配置完成的

CentOS7安装配置MySQL并开启远程登录

1、先检查要安装的Linux服务器cglib版本号,命令 strings /lib64/libc.so.6 | grep GLIBC ,查看其是否有相应cglib版本

2、cd /usr/local 下载MySQL5.7
老版本:https://downloads.mysql.com/archives/community/
国内镜像:http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/

3、解压压缩包:tar -xzvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
并且重命名:mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql

4、创建用户组
groupadd mysql
useradd -r -g mysql mysql

5、进入到mysql目录下创建数据目录并赋予权限
创建目录
mkdir data
赋予权限
chown mysql:mysql -R /usr/local/mysql

6、配置my.cnf
vi /etc/my.cnf
datadir改为自己创建的data路径 basedir改为自己安装的mysql路径

[mysqld]
bind-address=0.0.0.0
port=3306
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/usr/local/mysql/mysql.sock
symbolic-links=0
lower_case_table_names=1
character_set_server=utf8mb4
explicit_defaults_for_timestamp=true

[mysqld_safe]
log-error=/var/log/mysql/mysqld.log
pid-file=/var/log/mysql/mysqld.pid

创建上述配置中的log目录和pid目录 并赋予权限
mkdir /var/log/mysql
mkdir /var/run/mysql
touch /var/log/mysql/mysqld.log
touch /var/log/mysql/mysqld.pid
chown -R mysql:mysql /var/log/mysql/

7、初始化数据库
进入到mysql的bin目录下
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql --initialize
目录一定要正确,否则启动不成功
看到最后一行是临时密码:-wPJi*<fz4zX
2021-03-31T15:24:39.285206Z 1 [Note] A temporary password is generated for root@localhost: 7Hjj3+bhpu/v
PS:如果初始化报错error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
就安装:yum install libaio-devel.x86_64

8、启动数据库

把mysql放到本地系统服务中
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

启动mysql
service mysql start # 启动命令
service mysql status # 查看状态
service mysql stop # 停止命令

9、设置环境变量 开机自启 远程连接
修改配置

vi /etc/profile
在最后一行增加如下配置

export PATH=$PATH:/usr/local/mysql/bin

开机自启
chmod +x /etc/init.d/mysql
chkconfig --add mysql
查看开启
chkconfig --list
如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入
chkconfig --level 345 mysqld on

10、 查看初始密码 并更改密码
mysql -u root -h 127.0.0.1 -p
输入密码
进入MySQL,更改密码
SET PASSWORD FOR 'root'@localhost=PASSWORD('XXXXXXXXXXXXXX');

11、开启远程登陆
远程连接设置
登录mysql mysql -u -p
use mysql;
然后查看user表
select user,host from user;
开启远程

GRANT ALL PRIVILEGES ON *.* TO  'root'@'192.168.5.%' IDENTIFIED BY 'XXXpasswordXXX' WITH GRANT OPTION;

%代表所有,也可以写IP,后面是密码,可以和root密码不同
再次查看use mysql,如果root没有%可以使用

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

开启远程权限
flush privileges; # 重载系统权限
exit; # 退出

主要摘自:https://www.icode9.com/content-2-898758.html,一处地方是错的,MySQL开启不了,也有其他地方的
虚拟机测试,本地连接已成功,阿里云应该还要开端口,回头部署……


出现
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
进入bin目录执行
$ ./mysqld_safe --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &