云服务器
因为项目需要一个数据库,所以就在阿里云哪里用云翼计划买了一个小型服务器,虽然小但是也够用
centos
安装mysql
安装mysql
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
设置数据库
启动mysql
systemctl start mysqld.service
查看运行状态
systemctl status mysqld.service
修改密码
先查看原始密码
grep "password" /var/log/mysqld.log
利用原始密码进入数据库
mysql -uroot -p
修改密码规则
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
windows mysql
安装
下载 & 解压
配置系统变量
找到bin
目录的位置:E:\Config\mysql\mysql-5.7.32-winx64\bin
在环境变量的path
中加入路径
安装
生成data
文件
以管理员身份运行cmd
进入E:\Config\mysql\mysql-5.7.32-winx64\bin
中
执行命令:mysqld --initialize-insecure --user=mysql
在E:\Config\mysql\mysql-5.7.32-winx64\
下和bin
同级目录生成data
目录
安装mysql
继续执行
mysqld -install
启动服务
net start MySQL
登录mysql
mysql -u root -p
初始数据库没密码,直接回车
修改密码
执行
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
创建数据库
使用ubuntu
下的命令就可以自动安装mysql
数据库
sudo apt-get install mysql-server
apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev
安装成功后输入下面指令
sudo netstat -tap | grep mysq
如果是下图这样
那么就成功安装了,下面就是通过mysql -u root -p
就可以登录mysql
数据库
注意,在第一次登录mysql
时输入的密码即为你的初始密码,不输就是空
远程连接
在ubuntu
下,修改/etc/mysql/mysql.conf.d/mysqld.cnf
文件,将
bind-address = 127.9.0.1
语句注释掉或者改成bind-address=0.0.0.0
bind-address = 127.9.0.1
意味着只允许本地登录,而把他改成0.0.0.0
就代表允许所有的ip
登录
但是这还不够,当我们连接远程数据库时,会新建一个root
用户,但是这个root
只允许本地登录,不允许远程登陆,我们可以通过
use mysql
select host, user from user;
来验证发现这个root
的 host
只有一个localhost
这是我们要通过设置来使他允许远程用户登录
在mysql
中输入
# 允许所有root用户登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root用户密码' WITH GRANT OPTION;
# 允许指定ip的root用户登录
GRANT ALL PRIVILEGES ON *.* TO root@'指定的IP地址' IDENTIFIED BY 'root用户密码' WITH GRANT OPTION;
然后重载授权表
FLUSH PRIVILEGES;
这时我们再来验证一下root的权限
这时就应该可以连接上了
但是 ,如果这时还是连接不上,就可能是防火墙的问题,输入ufw disable
把防火墙关闭
如果还不行的话,就有可能是阿里云的问题了,因为我用的是一个轻量级的服务器,所以在防火墙中把端口3306打开即可
结束
经过以上步骤mysql
的远程连接基本上就可以搞定了
mysql -h IP -u root -p