数据库安装与配置
数据库的安装与配置windows
选择 Mysql 选择5.6.48版本
解压完成后,在bin目录下
服务端 mysqld.exe
客户端 mysql.exe
注意:
配置MySQL,终端以管理员身份运行
启动服务端:
- 切换到mysqld所在的bin目录下,然后终端输入mysqld,回车
- 保留cmd窗口重新打开一个cmd作为客户端,然后切换到bin目录下,输入mysql -h 127.0.0.1 -uroot -p
- 刚开始是没有密码的,直接回车就可
常用软件默认端口号
Mysql 3306
redis 6379
mongodb 27017
django 8000
flask 5000
SQL语句初始
- Mysql第一次以管理员身份进入是没有密码的,直接回车即可
- 基本命令:
1 .show databases; 查看所有的数据库库名
2 .客户端连接服务端命令:
mysql -h 127.0.0.1 -P 3306 -uroot -p
可以简写成 mysql -uroot -p
3.当输入的命令不对,又不想让服务器执行并返回报错信息,可以用 \c 取消
4.客户端退出: 退出命令加不加分号都可以
quit
exit
5.当在连接服务端的时候,发现只输入mysql的时候也能连接 ,但是不是管理员身份,只是一个游客模式
环境变量配置及系统服务制作
知识补充
1.查看当前具体进程
tasklist
tasklist |findstr mysqld
2.杀死具体进程 (在管理员cmd窗口才可以)
taskkill /F /PID PID号
环境变量配置
- 每次启动mysqld需要先切到对应的文件路径下才可以,这样就太繁琐,
- 可以把bin 目录添加到系统变量Path下
- 每次都需要启用两个cmd窗口,我们可以将mysql服务端制作成系统服务(开机自动启用)
查看当前计算机的运行进程数 services.msc
"""将musqld制作为系统服务,mysqld --install"""
将mysqld移除系统服务mysqld --remove
设置密码
mysqladmin -uroot -p原密码 password 新密码
直接在终端输入就可以
忘记密码重置密码
可以将mysql获取用户名和密码校验功能看成是一个装饰器,
装饰在了客户端请求访问的功能上
#1.关闭当前mysql服务端
命令行方式启动(让mysql跳过用户名密码验证功能)
mysqld --skip-grant-tables
#2.直接以无密码的方式连接
mysql -uroot -p 直接回车
#3.修改当前用户的密码
update mysql.user set password=password(123456) where user='root' and host='localhost';
"""
真正存储用户表的密码字段 存储的是密文
只有用户知道明文是什么,其他人不知道,这样更加安全
密码比对也只能比对密文
"""
#4. 立刻将修改数据刷到硬盘
flush privileges;
#5.关闭当前服务端,然后以正常校验授权表的形式启动
统一编码
mysql默认配置文件
my-default.ini
ini结尾的一般都是配置文件
程序启动会先加载配置文件中的配置后才真正的启动
[mysqld] #一旦服务器启动立刻加载下面的配置
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]#其他客户端
需要自己创建一个my.ini的配置文件
验证配置是否自动加载
[mysql]
print('hello world')
#修改配置文件后一定要重启服务才生效
统一编码
在新创建的my.ini配置文件中重新写入
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
将管理员的用户名和密码添加到配置文件中
#这样不用每次都输入账号密码了
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
user="root"
password="123.com"
default-character-set=utf8
数据库安装与配置Linux下
-
MySQL服务端(在linux系统)
- 下载安装
- sudo apt-get install mysql-server
- 启动服务
- sudo service mysql start
- 查看服务是否启动
- ps ajxlgrep mysql
- sudo service mysql status
- 停止服务
- sudo service mysql stop
- 重启服务
- sudo service mysql restart
- 下载安装
-
配置
- 配置问加你目录为 /etc/mysql/mysql.conf.d
- 进入目录,打开mysqld.cnf,可以看到配置项
- bind-address 表示服务器绑定的ip,默认为127.0.0.1
- port表示端口,默认是3306
- datadir表示数据库目录,默认为/var/lib/mysql
- general/ogfile表示普通日志,默认为/var/log/mysql/mysql.log
- log_error表示错误日志,默认为/var/log/mysql/error.log
#查询user所对应的host服务 select user,host from user ; #修改密码 update user set authentication_string="13467205064" where user="root"; #配置允许远程访问 update user set host="%" where user="root" and host="localhost" LIMIT 1; flush privileges;#修改完密码后要重新加载以下
-
MySQL 客户端
- 客户端为开发人员使用,常用的命令行客户端,navicat图形界面客户端等
- 下载安装命令行客户端
- sudo apt install mysql-client
- 连接数据库
- mysql -u root -p123456
- -u后面跟的是数据库的账户名,-p密码, -p与密码之间不能有空格
- 如果-p后面不加密码,那么回车后要求输入密码
- mysql -u root -p123456