首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 新手必讀:常見問題彙總與解決方案

     編輯:MySQL 資料庫相關知識

1. 自增欄位重設初值

ALTER TABLE tbl AUTO_INCREMENT = 1;

2. 實現自增欄位功能

-- 建表時指定
CREATE TABLE abc (
  id INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(10) NOT NULL,
  address VARCHAR(200) NOT NULL,
  postcode CHAR(6) NOT NULL
);

-- 既有表新增自增欄位(置於首欄)
ALTER TABLE tb_name ADD id INT(10) NOT NULL AUTO_INCREMENT FIRST;
-- 或置於尾欄
ALTER TABLE tb_name ADD id INT(10) NOT NULL AUTO_INCREMENT;

3. 修改用戶密碼

方式 A:mysqladmin 指令列

./mysqladmin -u root -p123456 password 456789
# 格式:-u[用戶] -p[舊密碼] password [新密碼]

方式 B:SQL 語句

mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD('newpass') WHERE User='root';
mysql> FLUSH PRIVILEGES;

4. 開啟遠端連線權限

步驟 1:建立遠端用戶

GRANT SELECT,UPDATE,INSERT,DELETE ON *.* 
  TO xuys@'192.168.88.234' IDENTIFIED BY 'xuys1234';

# 開發階段建議允許任意主機
UPDATE user SET host='%' WHERE user='xuys';

步驟 2:重新載入權限並重啟服務

mysqladmin -u root -ppwd reload
mysqladmin -u root -ppwd shutdown
./mysqld_safe --user=root &

步驟 3:若仍無法連線,插入 db 表記錄

USE mysql;
INSERT INTO db VALUES('192.168.88.234','%','xuys','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
UPDATE db SET host='%' WHERE user='xuys';
# 重複執行 reload 與重啟

核心原則:授權表任何修改必須 FLUSH PRIVILEGES 或 reload 生效。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved