持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第10天,点击查看活动详情
本文基于linux版本为Ubuntu 20.04,其他linux版本在安装过程中可能略有不同,请知晓
作为一个net程序员,其实平时用到最多的数据库时SQLServer
但是我的服务器是体验型服务器(各个大平台都有,新用户可以领一个免费的入门级服务器,差不多能玩一个月,具体哪家就不说了,不然有打广告的嫌疑)
免费的东西,配置自然很拉胯,CPU 1核、内存1G...
开始尝试过安装SQLServer,但是报错后才知道,安装SQLServer至少需要2G内存
没办法,相比之下,MySQL就小很多了,对服务器配置要求不高
反正小demo,什么数据库都无所谓,技术不分家
命令行安装mysql
//安装mysql
sudo apt install mysql-server -y
//查看是否安装成功
sudo systemctl status mysql.service
注意:如果执行安装mysql报错的话,可以更新一下apt的软件包:apt-get update
安装成功后,需要设置一下密码
sudo mysql_secure_installation
这个命令执行后,会有几个问题需要确认
比如密码强度:输入0~2,表示低中高、是否禁止root远程登录、移除匿名用户、移除测试数据库机器访问等
不会的,可以直接输入y回车即可
只要设置的密码别忘了就行,否则就要重置密码了
命令行测试登录一下mysql
mysql -u root -p
按回车后,输入密码,即可登录成功
退出myql
quit
好了,这样mysql就能在本地玩了,是不是很简单
如果要远程使用,还需要进一步配置相关信息,请继续往下看
开启远程登录
首先打开端口信息
mysql默认使用的端口为3306,需要到服务器的控制台(哪个平台购买的,需要到对应官网去找,一般都有专门的控制台和相关配置中心),开启相应的端口信息
查看3306端口
netstat -an | grep 3306
如果服务器的防火墙开启了,还需要设置一下防火墙:允许端口开放
sudo ufw allow 3306
修改mysq的配置文件信息
//进入到指定目录
cd /etc/mysql/musql.conf.d
//用nano编辑配置文件:如果服务器当前登录用户非root用户,需要在命令开头加sudo,否则可能无修改权限 --->这里的root非数据库的用户名,这里也不是在数据库中操作的!
nano mysqld.cnf
//修改内容跟以下一致即可
bind-address = 127.0.0.1
注意:下面操作就需要登录到数据库中进行操作了
登录数据库,这里就不啰嗦了,上面有命令
创建远程登录账号以及账号的密码
//使用mysql这个数据库(相当于后面操作是指定操作这个数据库,这个数据库为mysql自带的,里面有User表:用于存放数据库用户信息的表)
use mysql;
//创建用户
create user'sa'@'%' identified by 'you_password';
注意:@符号左边为你的用户名,右边为%,他是host字段的值,大概意思为:使用的范围,%是任意地方
还有就是,mysql每一条命令以分号(;)结尾,否则无法执行
千万别写成 :create user'sa'@'localhost' identified by 'you_password';
看过太多文章这样写了,简直是错误引导新手,localhost是仅限本地使用的用户
操作完,查询一下select host,user from user;
看清楚没,上下两个sa用户,host为%的才是可以远程登录的,下面那个只能本地使用
授权
grant all privileges on *.* to 'sa'@'%';
//刷新:非常重要,一定要做
flush privileges;
授权远程
alter user 'sa'@'%' identified with mysql_native_password by 'you_password';
//刷新:非常重要,一定要做
flush privileges;
ok,到这里基本设置完成,可以远程登录使用数据库了!
测试连接
测试的话就不用命令行了,直接用第三方工具测试一下即可
这里用的是Navicat
直接输入ip、端口号、用户名、密码即可
当然,其他工具同理,这里基本上没啥大问题了
文末总结
技多不压身,什么都要花时间去接触一下
虽然这些东西学的都不深,但是曾经摸过,需要用到时,再拾起来会很快,基本没啥坑了
知识储备,先广再博吧