mysql应用管理及进阶实战
prompt \u@ceshi \r:\m:s-> ###临时改变命令提示符
如果想永久生效放入my.conf里面的 [mysql]下面 prompt \u@ceshi \r:\m:s->
mysql登录
# mysql -h 127.0.0.1 -u mysql -P 3000 #远程连接 IP + 端口
mysql -h localhost -u root -S /data/ops/app/mysql-5.6.23/3307/3307.sock
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | MySQL修改root密码的多种方法 在 Navicat for MySQL 下面直接执行 SET PASSWORD FOR 'root' @ 'localhost' = PASSWORD( 'newpass' ); 就可以 方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root' @ 'localhost' = PASSWORD( 'newpass' ); 方法2:用mysqladmin mysqladmin -u root password "newpass" 如果root已经设置过密码,采用如下方法 mysqladmin -u root password oldpass "newpass" 方法3: 用UPDATE直接编辑user表 mysql -u root mysql> use mysql; mysql> UPDATE user SET Password = PASSWORD( 'newpass' ) WHERE user = 'root' ; mysql> FLUSH PRIVILEGES; 在丢失root密码的时候,可以这样 mysqld_safe --skip-grant-tables& mysql -u root mysql mysql> UPDATE user SET password=PASSWORD( "new password" ) WHERE user= 'root' ; mysql> FLUSH PRIVILEGES;<br><br> ##生产环境<br>./mysqld_safe --defaults-file=/data/ops/app/mysql-5.6.23/etc/3308.cnf --skip-grant-tables --user=mysql&<br>mysql> update mysql.user set password=password('123456') where user='root';<br>mysql> flush privileges;<br>mysqladmin -h127.0.0.1 -uroot -p shutdown ###输入密码123456<br><br>mysql -h127.0.0.1 -uroot -P3003 -p #输入密码登录成功123456<br> |
sql---日常操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | mysql> select user,host,password from mysql.user order by user; ##查询并排序 mysql> delete from mysql.user where user= ' ' ; ##删除用户 mysql> create database test ; 创建数据库 mysql> show create database test \G #查看创建数据库,默认创建字符集latin1 mysql> create database test_gbk DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci; ###创建指定的字符集数据库 mysql> show create dabases test_gbk\G ##查看创建的数据库发现字符集变成gbk mysql> create database test_utf8 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; ###创建utf8数据库 mysql> show create dabases test_utf8\G ##查看创建的数据库字符集变成utf8 ##提示 字符集的不一致是数据库中午乱码的罪魁祸首,有关字符集的看后面 ##提示 如果变异的时候指定了字符集 以后创建数据库就不需要指定了 企业里: 1根据开发的程序确定字符集(建议用utf8) 2.编译的时候指定字符集 3.编译的时候没有指定字符集或者指定了和程序不同的字符集,如果解决? ###指定字符集创建数据库即可。 显示数据库 show databases; select database(); 删除数据库 mysql> drop database test ; 切换数据库 use test_utf8; 查看版本 select version(); 查看当前用户 select user(); 查看当前时间 select now(); 创建用户 mysql> create user 'haha' @ 'localhost' identified by '123' ; 删除用户 mysql> drop user 'haha' @ 'localhost' ; 创建并授权 grant all privileges on test .* to oldboy@ 'localhost' identified by 'oldboy123' ; 查看用户权限 mysql> show grants for oldboy@localhost; 只授权 grant all ON test .* to 'haha' @ 'localhost' ; 远程授权 mysql> create user test @ '10.0.0.%' identified by 'test' ; 回收权限 mysql> show grants for oldboy@localhost; +---------------------------------------------------------------------------------------------------------------+ | Grants for oldboy@localhost | +---------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'oldboy' @ 'localhost' IDENTIFIED BY PASSWORD '*FE28814B4A8B3309DAC6ED7D3237ADED6DA1E515' | | GRANT ALL PRIVILEGES ON ` test `.* TO 'oldboy' @ 'localhost' | +---------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) mysql> revoke insert on test .* from 'oldboy' @ 'localhost' ; Query OK, 0 rows affected (0.00 sec) mysql> show grants for oldboy@localhost; 企业环境尽量最小化权限,只给增删改查,把创建删除收回。 创建表 mysql> create table tutorials_tbl( tutorial_id INT NOT NULL AUTO_INCREMENT, tutorial_title VARCHAR(100) NOT NULL, tutorial_author VARCHAR(40) NOT NULL, submission_date DATE, PRIMARY KEY ( tutorial_id ) ); 查看表结构 mysql> desc tutorials_tbl; mysql> show create table tutorials_tbl; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构