连接MYSQL

格式: mysql -h主机地址 -u用户名 -p用户密码

  1. # 连接本机Mysql
  2. mysql -u root -p
  3. # 连接远程Mysql
  4. mysql -h 110.110.110.110 -u root -p 123;

Windows下MYSQL配置

两种方法安装mysql
https://jingyan.baidu.com/article/cd4c2979033a17756f6e6047.html

  • 使用 软件安装
  • 使用 压缩包配置

步骤:

  1. 写配置文件 my.ini

    1. [mysqld]
    2. #设置3306端口号
    3. port=3306
    4. #设置MySQL的安装目录
    5. basedir=D:\\mysql\\mysql-8.0.16-winx64(这是我的MySQL路径,注意用\\而非\)
    6. #设置MySQL数据库的数据存放目录
    7. datadir=D:\\mysql\\mysql-8.0.16-winx64\\data(与上面同理,注意最后的data文件名保存不变)
    8. #运行最大连接数
    9. max_connections=200
    10. #运行连接失败的次数。这也是为了防止有人从该主机试图攻击数据库系统
    11. max_connect_errors=10
    12. #服务端使用的字符集默认为utf-8
    13. character-set-server=utf8
    14. [mysql]
    15. #客户端使用的字符集默认为utf8
    16. default-character-set=utf8
    17. [client]
    18. #客户端默认端口号为3306
    19. port=3306


    注意问题:路径使用 / ,不要使用 \ # 设置mysql的安装目录 basedir = E://softwares/mysql-5.7.24-winx64

    设置mysql数据库的存放目录

    datadir = E://softwares/mysql-5.7.24-winx64/data

  2. 安装

    bin\mysqld --install
    
  3. 配置环境变量

环境变量

  • 变量名:MYSQL_HOME
  • 变量值:D:\Python\mysql-8.0.12-winx64\

Path变量

  • path里添加:%MYSQL_HOME%\bin;(分号不要忘记)
  1. 启动服务

可通过手动启动: 此电脑=》 管理=》服务 =》 启动mysql服务

使用命令行(注意:要用管理员权限)

net start mysql

可能的报错:’net’ 不是内部或外部命令,也不是可运行的程序
解决办法:在环境变量里面添加 C:\windows\system32

  1. 初始化账号
    >>> bin\mysqld --initialize --console
    ...
    [Server] A temporary password is generated for root@localhost: 4P!w2fqBruGi
    ...
    

修改密码

法1:通过mysqladmin命令
格式: mysqladmin -u用户名 -p旧密码 password 新密码
法2:通过mysql终端

# 命令行修改root密码:
mysql> UPDATE mysql.user SET password=PASSWORD('新密码') WHERE User='root';
mysql> FLUSH PRIVILEGES;

数据库操作

1、显示当前数据库服务器中的数据库列表
mysql> SHOW DATABASES;

2、建立数据库:
mysql> CREATE DATABASE 库名;
mysql> CREATE DATABASE IF NOT EXISTS my_db default charset utf8 COLLATE utf8_general_ci;

3、建立数据表:
mysql> USE 库名;
mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));

4、删除数据库:
mysql> DROP DATABASE 库名;

5、删除数据表:
mysql> DROP TABLE 表名;

6、将表中记录清空:
mysql> DELETE FROM 表名;

7、往表中插入记录:
mysql> INSERT INTO 表名 VALUES ("hyq","M");

8、更新表中数据:
mysql-> UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';


文本数据装入数据表

mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE 表名;

数据库备份(导出)

1.导出整个数据库(导出文件默认是存在mysql\bin目录下)
# 格式:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u user_name -p123456 database_name > outfile_name.sql

2.导出一个表
# 格式:mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u user_name -p database_name table_name > outfile_name.sql

3.导出一个空的数据库
mysqldump -u user_name -p -d --add-drop-table database_name > outfile_name.sql
# 说明:-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

数据库重建

# 使用.sql文件命令重建数据库
mysql> USE 数据库名;
mysql> SOURCE d:/mysql.sql;

其他知识

服务端的启动

服务端和客户端的通信

https://learnku.com/articles/39659