Mysql数据库
(一)什么是数据库:
数据库本质就是一个C/S的套接字软件
常见的数据库:
关系型:
mysql
mariadb
oracle
db2
sqlserver
非关系:
存取数据都是以key:value
mongodb
redis
memcache
(二)数据库相关概念:
数据库服务器:运行有数据库管理软件的计算机
数据库管理软件mysql:就是一个套接字服务端
库:就是一个文件夹
表:就是一个文件
记录:就相当于文件中的一行内容(抽取事物一系列典型的特征拼到一起,)
数据:用于记录现实世界中的某种状态
(三)数据库的安装步骤:
官网安装包的下载:https://downloads.mysql.com/archives/community/
第一步:解压下载的zip文件,放到你指定的位置
第二步:再环境变量—系统变量里面添加bin目录
第三步:复制my-default.ini文件重新另存为一个my.ini文件(具体里面的配置可以参照下面内容)
第四步:
cmd切换到bin目录(管理员打开):
mysqld --install 提示Service successfully installed.安装成功
ps:mysqld -remove 是卸载mysql。
第五步:net start mysql,服务启动成功
mysql --install 设置成为后台的应用服务(以管理员身份运行cmd)
(四)数据库安装\调试命令:
1.查看mysql的后台服务状态:tasklist |findstr mysql
2.强制结束mysql程序:taskkill /F /IM mysqld.exe
3.mysql -h127.0.0.1 -P 3306 -uroot -p‘’ 指定ip、端口、用户名、密码访问
mysql -uroot -p 本机环境可以直接访问
4.开启和关闭客户端:net start mysql、net stop mysql
5.mysqld --remove 回到最原始的mysql 即从把服务里面去掉
(五)数据库简单命令
查看用户登陆状态: select user()
查看有哪些数据库: show databases;
查看mysql数据库状态: status;
(六)账号管理之增加、删除、设置权限
Mysql创建、删除用户
1.新建用户
•登录MYSQL:
@>mysql -u root -p #设置root账户密码
@>密码
•创建用户:
create user tom@"客户端的ip" identified by "123"
create user tom@"192.168.15.%" identified by "123"
create user tom@"%" identified by "123"
注意:"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
•然后登录一下:
mysql退出命令(当输错命令时,输入 ; 退出)
mysql>exit;
新账号登陆测试
@>mysql -u test -p
@>输入密码
mysql>登录成功
2.为用户授权
授权格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
•登录MYSQL(有ROOT权限),这里以ROOT身份登录:
@>mysql -u root -p
@>密码
•首先为用户创建一个数据库(testDB):
mysql>create database testDB;
•授权test用户拥有testDB数据库的所有权限(某个数据库的所有权限):
mysql>grant all privileges on testDB.* to test@localhost identified by '1234'; #grant授予 privileges特权
mysql>flush privileges;//刷新系统权限表
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
•如果想指定部分权限给一用户,可以这样来写: 只给查、更新权限
mysql>grant select,update on testDB.* to test@localhost identified by '1234';
mysql>flush privileges; //刷新系统权限表
•授权test用户拥有所有数据库的某些权限:
mysql>grant select,delete,update,create,drop on *.* to test@"%" identified by "1234";
//test用户对所有数据库都有select,delete,update,create,drop 权限。
//@"%" 表示对所有非本地主机授权,不包括localhost。(localhost地址设为127.0.0.1,如果设为真实的本地地址,不知道是否可以,没有验证。)
//对localhost授权:加上一句grant all privileges on testDB.* to test@localhost identified by '1234';即可。
3.删除用户
@>mysql -u root -p
@>密码
mysql>Delete FROM user Where User='test' and Host='localhost';
mysql>flush privileges; #记得一定要更新
mysql>drop database testDB; //删除用户的数据库
删除账户及权限:>drop user 用户名@'%';
>drop user 用户名@ localhost;
4.修改指定用户密码
@>mysql -u root -p
@>密码
mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost";
mysql>flush privileges;
(七)对ini配置文件修改
配置my.ini文件
#可以对其修改,例如可以添加服务端、客户端登陆时的用户名、密码,这样在登录时就可以免登陆 [mysqld] character-set-server=utf8 collation-server=utf8_general_ci [client] default-character-set=utf8 [mysql] default-character-set=utf8 user='yzz' #可以在这里设置好用户名、密码 password=''