標籤:變更 ace 使用者模式 top title repo 遠程登入 character sel
先下載好mysql的linux安裝包,從官網下,我下載的是5.6社區版, 下載後傳到ubuntu上去。
包放在~/download目錄下,全部安裝命令如下:
1、解壓tar.gz
tar –xzf mysql-5.6.26-linux-glibc2.5-x86_64.tar.gz
2、重新命名解壓的檔案夾
mv mysql-5.6.26-linux-glibc2.5-x86_64 mysql
3、將mysql檔案夾移動到/usr/local目錄下
sudo mv ~/download/mysql /usr/local
4、進入mysql目錄
cd /usr/local/mysql
5、增加mysql使用者及組
sudo useradd -r mysql
6、將mysql檔案夾own及grp變更為mysql
sudo chown -R mysql:mysql mysql/
7、執行mysql安裝指令碼
sudo scripts/mysql_install_db --user=mysql
(若未安裝libaio包,會有一個報錯提示,安裝libaio-dev後,再運行指令碼即可。如果還是出錯可以刪除rm -rf /etc/my.cnf)
sudo apt-get install libaio-dev
8、將目錄許可權變更回來,僅保留data目錄為mysql使用者
sudo chown -R root:root mysql .
sudo chown -R mysql:mysql data
9、將mysql設定檔拷貝到etc目錄(全域配置)
注意:5.6版本的預設設定檔名稱由原先的my-medium變更為了my-default。
sudo cp support-files/my-default.cnf /etc/my.cnf
10、啟動mysql
sudo bin/mysqld_safe --user=mysql &
11、初始化mysql root使用者密碼
sudo bin/mysqladmin -u root -p ‘使用者自訂密碼‘;
#ps -A|grep mysql
顯示類似:
1829 ? 00:00:00 mysqld_safe
1876 ? 00:00:31 mysqld
2.#kill -9 1829
3.#kill -9 1876
12、複製mysql.server指令碼到/etc/init.d(初始化服務,有些人喜歡改成mysql,在這裡改就可以)
sudo cp support-files/mysql.server /etc/init.d/mysql.server
14、查看mysql運行狀態
sudo service mysql.server status
如果運行正常,會顯示 MySQL running。
如果顯示 not running,應該是前面沒有啟動服務,可直接用service mysql.server start啟動
sudo service mysql.server [status|start|stop]
15、讓mysql開機啟動[defaults],取消開機啟動[remove]
sudo update-rc.d -f mysql.server defaults [remove]
16、將mysql/bin/mysql命令加入到使用者命令中,或將mysql/bin目錄加入path
加入使用者命令:
sudo ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
加入環境變數:
export PATH=$PATH:/usr/local/mysql/bin
17、允許root使用者遠程登入
1>進入mysql: mysql –u root –p
2>改變資料庫: use mysql;
3>從任意主機登入: grant all privileges on *.* to [email protected]"%" identified by "密碼文字" with grant option;
4>從指定主機登入: grant all privileges on *.* to [email protected]"192.168.1.101" identified by "passw0rd" with grant option;
5>授權生效: flush privileges;
6>查看host為%授權是否添加: select * from user;
7>查看資料庫字元集: show variables like ‘character%‘;
啟動完mysql後,我們接著可以測試一下,使用“mysql”命令來進入mysql資料庫的控制台
$mysql -u root
在這裡之所以用-u root是因為我現在是一般使用者(firehare),如果不加-u root的話,mysql會以為是firehare在登入。注意,我在這裡沒有進入根使用者模式,因為沒必要。一般來說,對mysql中的資料庫進行操作,根本沒必要進入根使用者模式,只有在設定時才有這種可能。
進入mysql之後,最要緊的就是要設定Mysql中的root使用者密碼了,否則,Mysql服務無安全可言了。
mysql> GRANT ALL PRIVILEGES ON *.* TO [email protected] IDENTIFIED BY "123456";
如果需要使用root從其他機器遠端存取可以使用
mysql> GRANT ALL PRIVILEGES ON *.* TO [email protected]“%” IDENTIFIED BY "123456";
注意,我這兒用的是123456做為root使用者的密碼,但是該密碼是不安全的,請大家最好使用大小寫字母與數字混合的密碼,且不少於8位。
設定檔參考:
[html] view plain copy
- # For advice on how to change settings please see
- # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
- # *** DO NOT EDIT THIS FILE. It‘s a template which will be copied to the
- # *** default location during install, and will be replaced if you
- # *** upgrade to a newer version of MySQL.
-
- [client]
- port = 3306
- default-character-set=utf8
- # Here is entries for some specific programs
- # The following values assume you have at least 32M ram
-
- [mysqld]
- character_set_server=utf8
- lower_case_table_names=1
- init_connect=‘SET NAMES utf8‘
-
- lower_case_table_names=1
-
- max_connections=3000
- max_allowed_packet = 32M
-
- thread_cache_size = 16
- thread_concurrency = 8
-
- query_cache_size = 128M
-
- # Remove leading # and set to the amount of RAM for the most important data
- # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
- # innodb_buffer_pool_size = 128M
-
- # Remove leading # to turn on a very important data integrity option: logging
- # changes to the binary log between backups.
- # log_bin
-
- # These are commonly set, remove the # and set as required.
- # basedir = .....
- # datadir = .....
- # port = .....
- # server_id = .....
- # socket = .....
-
- # Remove leading # to set options mainly useful for reporting servers.
- # The server defaults are faster for transactions and fast SELECTs.
- # Adjust sizes as needed, experiment to find the optimal values.
- join_buffer_size = 16M
- sort_buffer_size = 16M
- # read_rnd_buffer_size = 2M
-
- sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
-
- [mysqldump]
- quick
- quote-names
- max_allowed_packet = 32M
-
- [mysql]
- no-auto-rehash
參考文章: http://blog.csdn.net/njchenyi/article/details/17615391
Ubuntu 12.04下安裝MySQL圖解