標籤:
1、準備工作
從MySQL官網上分別下載mysql伺服器端於用戶端包:
MySQL-server-5.5.49-1.sles11.x86.rpm
MySQL-client-5.5.49-1.sles11.x86_64.rpm
2、檢測系統是否安裝MySQL
#rpm -qa | grep -i mysql
若已安裝過,會出現:
MySQL-server-5.0.22-0.i386
MySQL-client-5.0.22-0.i386
那麼輸入以下命令刪除它:
#rpm -ev MySQL-server-5.0.22-0.i386
# rpm -ev MySQL-client-5.0.22-0.i386
注意:若刪除的時候,出現刪除不成功,出現依賴的包,前提必須刪除依賴項。rpm -ev dovecot-1.0.7-7.el5.x86_64
3、安裝MySQL
# rpm -ivh MySQL-server-5.5.49-1.sles11.x86.rpm
# rpm -ivh MySQL-client-5.5.49-1.sles11.x86_64.rpm
4、先瞭解下預設安裝位置及作用
1.資料庫目錄 /var/lib/mysql/
2.設定檔 /usr/share/mysql (mysql.server命令及設定檔)
3.相關命令 /usr/bin (mysqladmin mysqldump等命令)
4.啟動指令碼 /etc/rc.d/init.d/ (啟動指令檔mysql的目錄) 如:/etc/rc.d/init.d/mysql start/restart/stop/status
特別說明:SuSE Linux的啟動指令碼目錄在 /etc/init.d 目錄下,並且MySQL安裝完成後,會缺少mysql.sock這個通訊端檔案,所以必須到這個目錄下才能啟動mysql
5、遷移資料庫目錄
由於MySQL資料庫目錄佔用磁碟比較大,所以我在/根目錄下建了個個目錄data,命令如下:
# cd /
# mkdir data
# chmod 755 data
把資料庫移動到data目錄中去。輸入以下命令:
# mv /var/lib/mysql /data
最後,進入data目錄就會看到有一個mysql檔案夾。
拷貝完後還需修改 /etc/init.d/mysql 的datadir目錄值,修改結果如下:basedir=
datadir=/data/mysql
6、寫設定檔拷貝設定檔到/etc目錄下,並命名為my.cnf (必須名為my.cnf)
#cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
編輯 my.cnf :[client]
password = 123456
port = 3306
socket = /data/mysql/mysql.sock
default-character-set=utf8
[mysqld]
port = 3306
socket = /data/mysql/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
character_set_server=utf8
collation-server=utf8_general_ci
lower_case_table_names=1
character_set_client=utf8
max_connections=1000
[mysql]
default-character-set = utf8
no-auto-rehash
7、重啟mysql服務
# cd /usr/bin# mysql_install_db
# cd /etc/init.d
# ./mysql restart
8、登入mysql
# cd /usr/bin
# mysql -u root -p
Enterpassword: (直接斷行符號,因為第一次為空白密碼)
登入成功後,修改密碼
mysql> show databases;mysql> use mysql;
mysql> show tables;
mysql> update user set password=password(‘123456‘)where user=‘root‘;
最後重啟mysql,密碼生效
# /usr/local/mysql/bin/mysqld_safe --user=mysql &
# cd /etc/init.d
# ./mysql restart
9、開啟防火牆
# vi /etc/sysconfig/SuSEfirewall2
FW_SERVICES_EXT_TCP="22 5901 80 3306"
Esc 後 :wq 儲存退出
重啟防火牆:
# rcSuSEfirewall2 restart
檢查MySQL服務是否已經啟動:
# netstat -nat | grep 3306
檢查設定的utf8編碼是否生效:
mysql> show variables like ‘%colla%‘;
mysql> show variables like ‘%char%‘;
10、設定遠端存取:
# cd /usr/bin
# mysql -u root -p (或者 mysql -u root -p -h 127.0.0.1 )
mysql> use mysql; mysql> grant all PRIVILEGES on *.* to [email protected]‘我的IP‘ identified by ‘password‘;
mysql> select host,user from user;
mysql> FLUSH PRIVILEGES;
11、MySQL設定自啟動
chkconfig mysql on
這裡因為沒有通訊端,所以不一定會成功。
12、MySQL匯出匯入
mysql> mysqldump abc(資料庫名) --user=root --password > /root/abc.sql #匯出整個庫
mysql> mysqldump -u root -p abc(資料庫名) user (表名)> /user.sql #匯出單張表
注意,如果運行 mysqldump 沒有指定 --quick 或 --opt 選項,則會將整個結果集放在記憶體中。如果匯出大資料庫的話可能會出現問題
匯入:
mysql> CREATE DATABASE abc;
mysql> use abc;
mysql> source /root/abc.sql #匯入資料庫
mysql> source /user.sql #匯入單張表
轉載自:http://xinchibaobei.blog.163.com/blog/static/12639250920134954835786/
安裝MySQL -- SuSE Linux Enterprise Server 11 SP3