开始今日份整理mysql
数据库是一个由一批分明别类的数据构成的有序集合,这个集合一般被保存为一个或多彼此相关的文件,咱们能够理解为,数据库就是一种特殊的文件,其中存储着咱们须要的数据。linux
使用数据库的好处sql
数据库主要分为关系型数据库以及非关系型数据库。数据库
RDBMS既关系型数据库管理系统(Relational Database Management System)vim
主要的软件:MySQL 、Oracle、 Sql Serverwindows
定义:数据库里面的数据所有存在数据表这种弄,而这些表在存储的过程当中,各自之间有内在的联系,由于这种联系,咱们称这样的数据库叫”关系型数据库”。服务器
优势:工具
NoSQL:不单单是是SQL性能
主要软件:MongoDB、Redis大数据
优势:
例:一个学生表(表,字段,列,行)
MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
MySQL 软件采用了双受权政策,它分为社区版和商业版,因为其体积小、速度快、整体拥有成本低,尤为是开放源码这一特色,通常网站软件的开发都选择 MySQL 做为网站数据库。MySQL是一种客户端/服务器端(C/S)的软件,咱们要学会如何如何安装服务器端的MySQL,还须要学会如何利用客户端工具操做MySQL数据,经常使用的客户端工具备: 命令行、pycharm-database、Navicat等
下载:https://dev.mysql.com/downloads/windows
方式一
#1 关闭mysql
#2 在cmd中执行:mysqld --skip-grant-tables
#3 在cmd中执行:mysql
#4 执行以下sql:
update mysql.user set authentication_string=password('') where user = 'root';
flush privileges;
#5 tskill mysqld #或taskkill -f /PID 7832
#6 从新启动mysql
方式二
#1. 关闭mysql,能够用tskill mysqld将其杀死
#2. 在解压目录下,新建mysql配置文件my.ini
#3. my.ini内容,指定
[mysqld]
skip-grant-tables
#4.启动mysqld
#5.在cmd里直接输入mysql登陆,而后操做
update mysql.user set authentication_string=password('') where user='root and host='localhost';
flush privileges;
#6.注释my.ini中的skip-grant-tables,而后启动myqsld,而后就能够以新密码登陆了
但愿本身永远不要用到这俩种方式。。。。
方法一:删除受权库mysql,从新初始化
[root@egon ~]# rm -rf /var/lib/mysql/mysql #全部受权信息所有丢失!!! [root@egon ~]# systemctl restart mariadb [root@egon ~]# mysql
方法二:启动时,跳过受权库
[root@egon ~]# vim /etc/my.cnf #mysql主配置文件 [mysqld] skip-grant-table [root@egon ~]# systemctl restart mariadb [root@egon ~]# mysql MariaDB [(none)]> update mysql.user set password=password("123") where user="root" and host="localhost"; MariaDB [(none)]> flush privileges; MariaDB [(none)]> \q [root@egon ~]# #打开/etc/my.cnf去掉skip-grant-table,而后重启 [root@egon ~]# systemctl restart mariadb [root@egon ~]# mysql -u root -p123 #以新密码登陆
强调:配置文件中的注释能够有中文,可是配置项中不能出现中文
#1. 修改配置文件
[mysqld]
default-character-set=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
#mysql5.5以上:修改方式有所改动
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
#2. 重启服务
#3. 查看修改结果:
\s
show variables like '%char%'
在sql中统一字符编码仍是有必要的!!!
ok