linux下搭建自己的服务器mysql篇
一些想法
本人从事java开发也不是太久,近期相对空闲,想记录一下自己的学习情况特开通CSDN博客,与志同道合的小伙伴一起学习一起进步!共勉!!
首先你需要有一个linux服务器
楼主的服务器是为了搭梯子,到国外查找一些资料(大家都懂得)!为了避免有广告嫌疑,楼主就不说在哪个平台购买的了,有兴趣的小伙伴可以自己找找看!
了解linux 常用命令
- cd 文件夹 :进入相对应的文件夹
- cd … :退出本层文件夹,进入上一层
- tar -xzvf 解压文件 :解压相对应的文件
- ps aux|grep mysql :查看进程
- free -m :内存使用情况
- top -u oracle :查看某个软件占用系统资源情况
- df -lh :查看硬盘使用情况
- clear :清屏
- mkdir 文件夹名 :创建目录名
- mv xxx yyy: 一般用于改名或移动文件
- rm -f 文件名 :一般删除文件或空文件夹
- rm -rf 文件夹 : 删除文件夹(一般文件夹中有内容)
了解linux 下文件编辑器
一般我们要了解 vi 编辑器就可以了,在工作做中一般使用 EditPlus可视化编辑Linux系统上的文件 在这里楼主就不详细说明了,有兴趣的小伙伴可以去查一下!基于是初学者建议使用 vi 编辑器,熟悉一下操作,以后可以自行选择!!
使用 vi 编辑器
基本上vi可以分为三种状态,分别是一般模式、编辑模式和命令行模式,这里楼主就说一下最基本的用法!
使用 vi 文件名 进入文件中, 只有当到你按下【i, I, o, O, a, A, r, R】等任何一个字母之后才会进入编辑模式。这时候屏幕的左下方会出现【INSERT或 REPLACE】的字样,此时才可以进行编辑。
编辑好后按ESC按钮, 输入【 : / ? 】回车即可!
【:w】 保存编辑的内容
【:q】 离开vi
【:q!】 不想保存修改强制离开
【:wq】 保存后离开
linux下安装 mysql 及配置
1.安装 wget 可以使用wget从网上自由下载想要的文件
**[root@vultr ~]# yum -y install wget**
2.下载mysql源安装包
**[root@vultr ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm **
3.安装mysql源
**[root@vultr ~]# yum -y localinstall mysql57-community-release-el7-11.noarch.rpm **
4.在线安装Mysql ,下载东西比较多需要一点时间
[root@vultr ~]# yum -y install mysql-community-server
5.启动 mysql 服务
[root@vultr ~]# systemctl start mysqld
6.设置开机自启
[root@vultr ~]# systemctl enable mysqld
[root@vultr ~]# systemctl daemon-reload
7.修改数据库root 本地登陆密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。
[root@vultr ~]# vi /var/log/mysqld.log
这里的临时密码是:4bss1h;ggI(Q ,你的可能不一样!!
然后登录到mysql
mysql -u root -p
修改密码:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘Ttest@65’;
(备注 mysql5.7默认密码策略要求密码必须是大小写字母数字特殊字母的组合,至少8位)
8.设置允许远程登陆
Mysql默认不允许远程登录,我们需要设置下;
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘Ttest@65’ WITH GRANT OPTION;
并且退出 :edit
9.配置默认编码为utf-8
[root@vultr ~]# vi /etc/my.cnf
在my.cnf中添加
lower_case_table_names = 1
character_set_server=utf8
init_connect=‘SET NAMES utf8’
这里有必要说一下linux系统是严格区分大小写的!!
问题:
在开发项目的时候将项目连接到服务器上的数据库时(linux系统),项目跑起来一直出错总是说找不到数据表。后来查询资料得知linux严格区分大小写!
解决:
用root帐号登录后,在/etc/my.cnf 中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写;
其中 0:区分大小写,1:不区分大小写
保存后退出,并且重启mysql服务
[root@vultr ~]# service mysqld restart
然后再登陆到mysql,查看一下编码,如下:
show variables like ‘%character%’;
10.使用本地的(navicat)连接一下数据库看能否连接!
楼主测试的时候发现连接失败,贴出错误码!经过查询资料发现mysql默认端口是3306,但是楼主购买的linux并没有开放3306端口,所以导致连接失败!
楼主购买的linux系统是CentOS 7(Firewall防火墙)!
解决方案:
主要步骤就是在防火墙中添加3306端口,然后重启防火墙!!!也可以直接关闭防火墙(不推荐)
CentOS 7(Firewall参考) :https://www.5yun.org/10074.html
C防火墙为entOS 6(iptables参考) :https://blog.csdn.net/liqz666/article/details/82225575
最后使用本地工具进行重新连接测试,成功!!!!
今天就到这了,楼主能力有限,如有问题请及时指出,感谢
未完待续…………