MySql常用指令
创建数据库
代码语言:javascript复制create database 数据库名 character set utf8mb4 collate utf8mb4_bin;
创建数据库账户
代码语言:javascript复制CREATE USER '数据库账户名'@'localhost' IDENTIFIED BY '要设置的密码';
CREATE USER '数据库账户名'@'%' IDENTIFIED BY '要设置的密码';
注:两段代码分别实现了创建数据库账户。localhost
为只允许本地连接数据库。%
为允许该账户从任何主机连接数据库。
修改数据库账户密码
代码语言:javascript复制ALTER USER '数据库账户名'@'localhost' IDENTIFIED BY '要修改为的密码';
ALTER USER '数据库账户名'@'%' IDENTIFIED with mysql_native_password BY '要修改为的密码';
注:两段代码分别实现了修改数据库账户密码。localhost
为只允许本地连接数据库。%
为允许该账户从任何主机连接数据库。mysql_native_password
明确指定了认证方式为mysql_native_password,这是MySQL的一种内置密码加密方式。执行此命令后,root用户可以从任何IP地址通过提供的密码连接数据库。
授权指定账户数据库访问权限
代码语言:javascript复制GRANT ALL PRIVILEGES ON xy.* TO 'newuser'@'localhost';
GRANT ALL PRIVILEGES ON xy.* TO 'newuser'@'%';
注:两段代码分别实现了授权数据库访问权限。localhost
为只允许本地连接数据库。%
为允许该账户从任何主机连接数据库。newuser
为数据库账户,xy
代表数据库名,.*
表示该数据库下的所有表。
刷新数据库
代码语言:javascript复制FLUSH PRIVILEGES;
退出MySql指令窗口
代码语言:javascript复制quit
查询所有数据库
代码语言:javascript复制show databases;
查询当前使用的数据库
代码语言:javascript复制select database();
查询当前有哪些表
代码语言:javascript复制SHOW TABLES;
进入数据库
代码语言:javascript复制use userdb;
注:userdb
为数据库名。
查看某个表全部字段
代码语言:javascript复制SELECT * FROM slow_log;
注:slow_log
为表名。
清空数据表所有数据
代码语言:javascript复制TRUNCATE TABLE slow_log;
注:slow_log
为表名。
删除数据表中的特定数据
代码语言:javascript复制delete from slow_log where id = '1';
注:slow_log
为表名。id
为某一组特定数据的id字段,这里会通过id
字段删除匹配的记录。
修改数据表中的特定数据
代码语言:javascript复制UPDATE sys_user SET password = '修改的数据内容' WHERE user_id = '1';
注:sys_user
为要修改的数据表。user_id
为某一组特定数据的user_id字段,这里会通过user_id字段删除匹配的记录。password
为要修改的某一组数据的字段。如果你要更改密码,有时密码是进行加密的,所以需要将密码按照其余密码的加密方式生成加密后的密码进行修改。
删除某个数据库
代码语言:javascript复制DROP DATABASE IF EXISTS 数据库名;
查询数据库所有用户信息
代码语言:javascript复制select distinct concat('user: ''',user,'''@''',host,''';') as query from mysql.user;
导入备份的.sql文件至MySql还原
1.使用MySql数据库管理账户登入MySql
代码语言:javascript复制mysql -u usr -p
注:usr
为你要登入的账户名。
2.创建数据库
代码语言:javascript复制create database usrdb character set utf8mb4 collate utf8mb4_bin;
注:数据库名需与导出生成的.sql文件数据库名一致。usrdb
为要创建的数据库名。
3.切换到创建的数据库
代码语言:javascript复制USE usrdb;
4.执行数据库还原
代码语言:javascript复制SOURCE /var/www/usrdb.sql;
注:路径 .sql文件名。
提示类似以下信息即为成功:
代码语言:javascript复制Query OK, 0 rows affected (0.00 sec)
Records: 241 Duplicates: 0 Warnings: 0
备份数据库
注:在命令行执行。由于还原时需要先创建数据库,创建的数据库需与备份的数据库名一致,所以导出生成的.sql文件名可以命名为要导出的数据库名。
代码语言:javascript复制mysqldump -uusr -pusr123456 usrdb > /var/www/usrdb.sql
注:mysqldump -u
数据库账号 -p
数据库密码 数据库名 >
文件路径以及文件名.sql
安装及配置MySql
操作系统:Linux CentOS 8.0
数据库:MySql 8.0
1.CentOS 8系统需启用MySQL官方仓库:
代码语言:javascript复制sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el8-2.noarch.rpm
2.更新YUM缓存:
代码语言:javascript复制sudo yum update
3.先禁用默认的MySql模块:
代码语言:javascript复制sudo yum module disable mysql
4.执行安装MySql服务器:
代码语言:javascript复制sudo yum install mysql-community-server
5.启动MySql服务并设置开机自启:
代码语言:javascript复制sudo systemctl start mysqld
sudo systemctl enable mysqld
6.获取MySql初始随机密码:
MySQL 8.x安装后会自动为管理员用户生成一个临时密码,在 /var/log/mysqld.log 文件中查找类似 A temporary password is generated for root@localhost: 的行以获取该密码。
7.登录MySql:
代码语言:javascript复制mysql -u usr -p
注:usr
为你要登入的账户名。
8.修改MySql密码
代码语言:javascript复制ALTER USER 'root'@'localhost' IDENTIFIED BY '要修改为的密码';
9.开启MySsql远程连接,任意ip均能使用Mysql账户远程连接:
代码语言:javascript复制update mysql.user set host='%' where user='usr';
flush privileges;
注:usr
为你要授权远程连接的Mysql账户,usr
用户可以从任何IP地址或主机名进行远程登录。