修改MySQL数据库

一、修改库的名

           修改库的名字是无法修改的,但是可以重新导出数据重新命名。

二、修改表中数据

格式一:

修改全部字段值

update 表名 set  字段=值 

格式二:

修改指定记录的值然后修改字段里面的值

update 表名  set  字段=值 where 记录=值

三、修改数据的字符集

alter database 库名  character  set  "字符集"  collcate "排序规则"

查看数据所支持的字符集 

show  char  set  

查看当前数据库的字符集

show  create database  库名 

四、修改表

增加字段

alter  table 表名  add  column  字段名  字段属性(添加的字段)after  字段 (增加这个字段后面) 

 五、删除字段

                           建议不要删除已经存在的字段 !!!

                                   建议不要删除已经存在的字段 !!!

                                           建议不要删除已经存在的字段 !!!

alter  table  表名  drop  column  字段名

六、修改字段名

 alter  table  表名  change  column  字段名  新字段名  属性约束

七、修改字段默认值

 alter  table  表名  modify  column  字段名 字段属性  default  值

八、修改字段顺序

alter  table  表名  modify  column  字段名  属性  after  位置 

okk  欢乐的一天有结束了。 

更改 MySQL 数据库的存储位置涉及修改 MySQL 的数据目录(`datadir`),这通常是为了优化存储管理、性能、安全性和备份恢复流程。以下是详细的操作步骤: ### 修改 MySQL 数据目录 1. **停止 MySQL 服务** 在进行任何更改之前,需要停止 MySQL 服务以确保数据一致性。 ```bash sudo systemctl stop mysql ``` 2. **编辑 MySQL 配置文件** 默认情况下,MySQL 的数据目录配置在 `/etc/mysql/mysql.conf.d/mysqld.cnf` 文件中。使用文本编辑器打开该文件并修改 `datadir` 参数以指向新的存储位置。 ```bash sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf ``` 修改如下行: ```ini datadir=/new/path/to/mysql/data ``` 3. **复制现有数据到新目录** 使用 `rsync` 或 `cp` 命令将现有数据复制到新的数据目录。推荐使用 `rsync` 以保留文件权限和属性。 ```bash sudo rsync -av /var/lib/mysql/ /new/path/to/mysql/data ``` 4. **调整文件权限** 确保新目录的权限与原目录一致,通常 MySQL 服务由 `mysql` 用户和组运行。 ```bash sudo chown -R mysql:mysql /new/path/to/mysql/data ``` 5. **启动 MySQL 服务** 完成上述步骤后,重新启动 MySQL 服务以应用更改。 ```bash sudo systemctl start mysql ``` 6. **验证更改** 登录 MySQL 并执行以下命令以确认数据目录已更新。 ```sql SHOW VARIABLES LIKE 'datadir'; ``` ### 注意事项 - **备份数据**:在执行任何系统级更改之前,建议对现有数据进行完整备份。 - **SELinux/AppArmor**:如果系统启用了 SELinux 或 AppArmor,可能需要更新安全策略以允许 MySQL 访问新目录。 - **符号链接**:在某些情况下,可以使用符号链接来避免直接修改 `datadir`,特别是在需要将不同数据库存储在不同位置时。 ### 示例:使用符号链接更改特定数据库的存储位置 如果仅需更改某个数据库的存储位置而非整个 MySQL 数据目录,可以使用符号链接。例如,将数据库 `mydb` 的数据文件移动到 `/mnt/newdrive/mydb`: 1. 停止 MySQL 服务。 2. 将 `mydb` 数据库的文件夹移动到新位置: ```bash sudo mv /var/lib/mysql/mydb /mnt/newdrive/ ``` 3. 创建符号链接: ```bash sudo ln -s /mnt/newdrive/mydb /var/lib/mysql/mydb ``` 4. 启动 MySQL 服务。 ### 相关问题 1. 如何验证 MySQL 数据目录是否已成功更改? 2. 更改 MySQL 数据目录后,如何处理 SELinux 或 AppArmor 的权限问题? 3. 是否可以在不重启 MySQL 服务的情况下更改数据目录? 4. 使用符号链接更改数据库存储位置有哪些潜在风险? 5. 如何确保在迁移 MySQL 数据目录时数据的一致性和完整性?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值