MySQL 优秀在线教程
MySQL 常用命令
- 导出操作
-- 某数据库 全部表 结构和数据
mysqldump -h192.168.8.152 -uroot -p manualdb > 152_manualdb.sql
-- 某数据库 某表 结构和数据
mysqldump -uroot -p scrapy-manual manualsprinter > /home/moma/manualsprinter_0318.sql
-- 某数据库 某表 结构 -d
mysqldump -uroot -pdbpasswd -d dbname test>db.sql;
-- 自动压缩
./usr/local/mysql/bin/mysqldump -uroot -p zhumaohai | gzip > /home/backup/zhumaohai.sql.gz
- 导入操作
-- cat 导入
cat aaa.sql | mysql -h192.168.8.1 -uroot -p dbname
-- 导入
mysql -h192.168.8.1 -uroot -p dbname < aaa.sql
-- 压缩的
gunzip < /home/backup/zhumaohai.sql.gz | /usr/local/mysql/bin/mysql -u root -p123456 zhumaohai
-- source comand
mysql -uroot -p
show databases;
use manualdb;
source ~/Documents/152_manualdb.sql
- 创建数据库,并指定默认的字符集是 utf8
CREATE DATABASE IF NOT EXISTS adsense DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
- 复制表结构及数据到新表
CREATE TABLE 新表 SELECT * FROM 旧表
- 复制表结构到新表
CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2
CREATE TABLE 新表 LIKE 旧表
- 查看表结构
desc user
建立索引
ALTER TABLE `mot_media_abstract`
MODIFY COLUMN `media_abstract_1` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL AFTER `media_page`
查询 MySQL 的事务
SELECT * FROM information_schema.INNODB_TRXG;
kill XXX
MySQL 开启远程
只允许 192.168.1.100 连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' IDENTIFIED BY '' WITH GRANT OPTION;
允许所有ip访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'moma' WITH GRANT OPTION;
flush privileges;
Ubuntu下还要修改 Mysql 配置文件 my.ini
sudo vim /etc/mysql/my.cnf
将 bind-address = 127.0.0.1 这一行注释掉, 即修改为:
#bind-address = 127.0.0.1
重启 MySQL
sudo /etc/init.d/mysql restart
修改root密码
-- 1
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root');
-- 2
UPDATE user SET Password = PASSWORD('roothicc409') WHERE user = 'root';
长期使用 Naivcat 的方法
删除 ~/.navicat
文件夹,试用时间将重新计算,本地查询语句将丢失
可以使用 Navicat Cloud 服务(FREE),这样将永久保存查询语句
中文乱码解决
- 数据库、表、字段使用 UTF8
- 数据库连接 url 补充
?useUnicode=true&characterEncoding=utf8