1 #mysql数据库改名,官方没有直接修改数据库名称的命令 2 #只有通过修改表名方式实现 3 4 source /etc/profile #加载系统环境变量 5 source ~/.bash_profile #加载用户环境变量 6 set -o nounset #引用未初始化变量时退出 7 8 mysqlconn="mysql -h localhost -uroot -p123456" 9 10 #需要修改的数据库名 11 olddb="test1" 12 #修改后的数据库名 13 newdb="test2" 14 15 #创建新数据库 16 $mysqlconn -e "drop database if exists ${newdb};create database ${newdb};" 17 18 #获取所有表名 19 tables=$($mysqlconn -N -e "select table_name from information_schema.tables where table_schema='${olddb}'") 20 21 #修改表名 22 for name in $tables;do 23 $mysqlconn -e "rename table ${olddb}.${name} to ${newdb}.${name}" 24 done 25 26 #删除老的空库 27 #$mysqlconn -e "drop database ${olddb}"
修改表名
alter table 旧表名 rename 新表名
修改表中的字段
alter table t1 add age int;
alter table t1 modify name char(15);
alter table t1 change name NAME char(15);
alter table t1 drop age;
修改表中字段的数据update
update db1.t1 set name='lxx_dsb' where id=2;
alter 是修改表的架构,update 是更新表内的数据