標籤:java 使用 os io 檔案 資料 for art
mysql的主從模式配置
1、改主庫設定檔:
[mysqld]
log=c:/a.log
log-bin=mysql-bin
server-id=1
2、授權,導資料:
grant replication slave on *.* TO ‘replication‘@‘192.168.234.123‘ identified by ‘replication‘;
mysqldump --master-data=2 --single-transaction -uroot -p --all-databases >dumpfile
//記下匯出瞬間的記錄檔和位移(--master-data=2)
主庫:
FLUSH TABLES WITH READ LOCK;--先把主庫設定成唯讀,然後匯出SQL或者直接複製資料檔案
SHOW MASTER STATUS; --記下記錄檔和位移
UNLOCK TABLES; --恢複主庫寫入
mysql> SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 | 250 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
3、備庫:
複製主庫的/etc/my.cnf和dumpfile。
把主庫配置裡的 server-id 改成2(或者3、4,多個備庫儲存互不相同),再加上
relay-log=slave-relay.log
relay-log-index=slave-relay-log.index
匯入資料: mysql <dumpfile
SLAVE STOP;
CHANGE MASTER TO
MASTER_HOST=‘192.168.234.124‘,
MASTER_PORT=3306,
MASTER_USER=‘replication‘,
MASTER_PASSWORD=‘replication‘,
MASTER_LOG_FILE=‘mysql-bin.000003‘,
MASTER_LOG_POS=321;
SLAVE START;
SHOW PROCESSLIST;
查看同步的狀態,如果此命令的輸出裡有兩個“system user”的進程,並且Command都是“Connect”就差不多OK。
mysql> SHOW PROCESSLIST;
+----+-------------+-----------+------+---------+------+-----------------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-------------+-----------+------+---------+------+-----------------------------------+------------------+
| 5 | root | localhost | test | Query | 0 | NULL | SHOW PROCESSLIST |
| 6 | system user | | NULL | Connect | 226 | Waiting for master to send event | NULL |
| 7 | system user | | NULL | Connect | 99 | Has read all relay log; waiting for the slave I/O thread to update it | NULL |
+----+-------------+-----------+------+---------+------+-----------------------------------+------------------+
注意事項:
1)
出現這個錯誤: ERROR 1201 (HY000): Could not initialize master!
mysql> slave stop;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> reset slave;
Query OK, 0 rows affected,(0.00 sec)
預設bin_log的路徑在:/var/lib/mysql/
查看mysql的版本:
1)mysql -V
2)mysql --help
3)進入mysql:status
4)進入mysql:select version();
兩種方式,一個是在資料庫查詢的時候就截取,另一個就是在使用的時候截取。
1.資料庫
select date_format(日期欄位,’%Y-%m-%d’) as ‘日期’ from test
2.java程式
SimpleDateFormat dateFm = new SimpleDateFormat("yyyy-MM-dd");
String dateTime = dateFm.format(new java.util.Date());
如果你直接就想要這樣的格式不需要其他的格式那麼就資料庫的時候就格式化,如果還需要其他的不同形式的時間格式那麼就是用程式中處理的方式