1、下載
下載地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads
下載版本:我這里選擇的5.6.33,通用版,linux下64位
也可以直接復制64位的下載地址,通過命令下載:wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
2、解壓
1
2
3
4
|
#解壓
tar
-zxvf mysql-5.6.33-linux-glibc2.5-x86_64.
tar
.gz
#復制解壓后的mysql目錄
cp
-r mysql-5.6.33-linux-glibc2.5-x86_64
/usr/local/mysql
|
3、添加用戶組和用戶
1
2
3
4
|
#添加用戶組
groupadd mysql
#添加用戶mysql 到用戶組mysql
useradd
-g mysql mysql
|
4、安裝
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
|
cd
/usr/local/mysql/
mkdir
.
/data/mysql
chown
-R mysql:mysql ./
.
/scripts/mysql_install_db
--user=mysql --datadir=
/usr/local/mysql/data/mysql
cp
support-files
/mysql
.server
/etc/init
.d
/mysqld
chmod
755
/etc/init
.d
/mysqld
cp
support-files
/my-default
.cnf
/etc/my
.cnf
#修改啟動腳本
vi
/etc/init
.d
/mysqld
#修改項:
basedir=
/usr/local/mysql/
datadir=
/usr/local/mysql/data/mysql
#啟動服務
service mysqld start
#測試連接
.
/mysql/bin/mysql
-uroot
#加入環境變量,編輯 /etc/profile,這樣可以在任何地方用mysql命令了
export
PATH=$PATH:
/usr/local/mysql/bin
#啟動mysql
service mysqld start
#關閉mysql
service mysqld stop
#查看運行狀態
service mysqld status
|
5、錯誤
5.1 sqlyog連接時,報1130錯誤,是由於沒有給遠程連接的用戶權限問題
解決1:更改 ‘mysql’數據庫‘user’表‘host’項,從‘localhost’改成‘%’。
use mysql; select 'host' from user where user='root'; update user set host = '%' where user ='root'; flush privileges;
解決2:直接授權
GRANT ALL PRIVILEGES ON *.* TO ‘root’@'%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
5.2 安裝時的一些錯誤
-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: 沒有那個文件或目錄 解決: yum -y install perl perl-devel Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解決:yum -y install libaio-devel
6、其他
6.1 配置環境變量
vi + /etc/profile
export PATH=....:/usr/local/mysql/bin
7 mysql 開啟服務自啟動
命令echo "service mysqld start" >> /etc/rc.local
或者進入/etc/目錄,直接vim rc.local編輯rc.local文件,在最后一行添加“service mysqld start”,保存退出
8 mysql初始化密碼
因為mysql剛安裝好是沒有密碼的,所以我們要將其設置密碼
⑴、剛安裝時,root用戶是空的,需要修改密碼: ①mysqladmin -u root password ‘new-password’ ②或者,登陸后,直接修改用戶表里的密碼 mysql -u root #用root用戶登錄 1. select user,host,password from mysql.user; 查看數據庫的用戶 2. use mysql #切換到mysql表 set password for root@localhost=password('123456'); #設置指定域名下root賬號的密碼 set password for root@域名=password('123456'); 3.或者,更常見的sql操作: update user set password=password('123456') where user=‘root@localhost’; ⑵、匿名用戶是危險的 delete from mysql.user where user=''; #刪除匿名用戶 ⑶、退出mysql: exit;
測試
[root@dream ~]mysql -u root #匿名登錄,已設置密碼或者刪除了匿名用戶,登陸失敗 [root@dream ~]mysql -u root -p #通過密碼用root登錄 Enter password: #在這里輸入密碼123456 [root@dream ~]mysql -u root -p 123456 #顯示密碼登陸
9 設置本機遠程訪問遠程服務器的mysql
NaviCat遠程連接的權限問題
遠程登錄會出現如下提示:
1103 - host xxx.xxx.xxx.xx is not allowed to connec to this mysql server. 或 1045 - Access denied for user 'root'@'192.168.1.11' (using password: YES).
解決方案:
//mysql訪問 grant all privileges on *.* to 'root'@'%' identified by '123456'; #其實就是權限問題,設置root在所有域名(%表示任何地址)登陸時,賦給所有權限,密碼123456。根據需要可設置更嚴格些。
上面的123456是你自己設置的密碼,遠程密碼應該要嚴格一點,否則會不惡意攻破